132 const uint inputs_len,
133 const char *name)
const;
136 const uint inputs_len,
137 const int binding)
const;
144 return "ModelMatrix";
148 return "ModelViewMatrix";
150 return "ProjectionMatrix";
152 return "ViewProjectionMatrix";
154 return "ModelViewProjectionMatrix";
157 return "ModelMatrixInverse";
159 return "ViewMatrixInverse";
161 return "ModelViewMatrixInverse";
163 return "ProjectionMatrixInverse";
165 return "ViewProjectionMatrixInverse";
168 return "NormalMatrix";
170 return "OrcoTexCoFactors";
172 return "WorldClipPlanes";
177 return "baseInstance";
179 return "resourceChunk";
210 if (name[name_len - 1] ==
']') {
211 name[name_len - 3] =
'\0';
221 const uint inputs_len,
222 const char *name)
const
226 for (
int i = inputs_len - 1; i >= 0; i--) {
227 if (
inputs[i].name_hash == name_hash) {
230 for (; i >= 0 &&
inputs[i].name_hash == name_hash; i--) {
249 const uint inputs_len,
250 const int binding)
const
253 for (
int i = inputs_len - 1; i >= 0; i--) {
254 if (
inputs[i].binding == binding) {
BLI_INLINE unsigned int BLI_hash_string(const char *str)
@ GPU_UNIFORM_VIEWPROJECTION_INV
@ GPU_UNIFORM_RESOURCE_ID
@ GPU_UNIFORM_VIEWPROJECTION
@ GPU_UNIFORM_SRGB_TRANSFORM
@ GPU_UNIFORM_BASE_INSTANCE
@ GPU_UNIFORM_PROJECTION_INV
@ GPU_UNIFORM_MODELVIEW_INV
@ GPU_UNIFORM_RESOURCE_CHUNK
@ GPU_UNIFORM_BLOCK_MODEL
const ShaderInput * ubo_get(const int binding) const
const ShaderInput * ubo_get(const char *name) const
int32_t uniform_builtin(const GPUUniformBuiltin builtin) const
const ShaderInput * attr_get(const char *name) const
uint64_t enabled_tex_mask_
uint32_t set_input_name(ShaderInput *input, char *name, uint32_t name_len) const
const ShaderInput * texture_get(const int binding) const
static const char * builtin_uniform_block_name(GPUUniformBlockBuiltin u)
int32_t ubo_builtin(const GPUUniformBlockBuiltin builtin) const
uint8_t enabled_ima_mask_
int32_t builtin_blocks_[GPU_NUM_UNIFORM_BLOCKS]
const char * input_name_get(const ShaderInput *input) const
const ShaderInput * uniform_get(const char *name) const
int32_t builtins_[GPU_NUM_UNIFORMS]
uint16_t enabled_attr_mask_
uint16_t enabled_ubo_mask_
static const char * builtin_uniform_name(GPUUniformBuiltin u)
virtual ~ShaderInterface()
struct blender::gpu::ShaderInput ShaderInput
static bNodeSocketTemplate inputs[]
unsigned __int64 uint64_t