summaryrefslogtreecommitdiffstats
path: root/src/video_core/shader/node.h
diff options
context:
space:
mode:
authorReinUsesLisp <reinuseslisp@airmail.cc>2019-04-27 08:04:13 +0200
committerReinUsesLisp <reinuseslisp@airmail.cc>2019-06-21 02:38:33 +0200
commit9097301d924ac9d873f04acdc247e8023edf1811 (patch)
tree7d50b941e27ab947975432381842aa4605325e78 /src/video_core/shader/node.h
parentshader: Decode SUST and implement backing image functionality (diff)
downloadyuzu-9097301d924ac9d873f04acdc247e8023edf1811.tar
yuzu-9097301d924ac9d873f04acdc247e8023edf1811.tar.gz
yuzu-9097301d924ac9d873f04acdc247e8023edf1811.tar.bz2
yuzu-9097301d924ac9d873f04acdc247e8023edf1811.tar.lz
yuzu-9097301d924ac9d873f04acdc247e8023edf1811.tar.xz
yuzu-9097301d924ac9d873f04acdc247e8023edf1811.tar.zst
yuzu-9097301d924ac9d873f04acdc247e8023edf1811.zip
Diffstat (limited to 'src/video_core/shader/node.h')
-rw-r--r--src/video_core/shader/node.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/video_core/shader/node.h b/src/video_core/shader/node.h
index 8b8d83ae7..2bf535928 100644
--- a/src/video_core/shader/node.h
+++ b/src/video_core/shader/node.h
@@ -270,6 +270,15 @@ public:
explicit Image(std::size_t offset, std::size_t index, Tegra::Shader::ImageType type)
: offset{offset}, index{index}, type{type}, is_bindless{false} {}
+ explicit Image(u32 cbuf_index, u32 cbuf_offset, std::size_t index,
+ Tegra::Shader::ImageType type)
+ : offset{(static_cast<u64>(cbuf_index) << 32) | cbuf_offset}, index{index}, type{type},
+ is_bindless{true} {}
+
+ explicit Image(std::size_t offset, std::size_t index, Tegra::Shader::ImageType type,
+ bool is_bindless)
+ : offset{offset}, index{index}, type{type}, is_bindless{is_bindless} {}
+
std::size_t GetOffset() const {
return offset;
}