|
Blender V4.5
|
#include "BLI_hash.hh"#include "BLI_string_ref.hh"#include "BLI_utildefines_variadic.h"#include "BLI_vector.hh"#include "GPU_common_types.hh"#include "GPU_material.hh"#include "GPU_texture.hh"#include <iostream>Go to the source code of this file.
Namespaces | |
| namespace | blender |
| namespace | blender::gpu |
| namespace | blender::gpu::shader |
Macros | |
| #define | GPU_FORCE_ENABLE_SHADER_PRINTF 0 |
| #define | GPU_SHADER_PRINTF_ENABLE 1 |
| #define | GPU_SHADER_PRINTF_SLOT 13 |
| #define | GPU_SHADER_PRINTF_MAX_CAPACITY (1024 * 4) |
| #define | GPU_SSBO_INDEX_BUF_SLOT 7 |
| #define | GPU_SSBO_POLYLINE_POS_BUF_SLOT 0 |
| #define | GPU_SSBO_POLYLINE_COL_BUF_SLOT 1 |
| #define | GPU_SHADER_NAMED_INTERFACE_INFO(_interface, _inst_name) |
| #define | GPU_SHADER_INTERFACE_INFO(_interface) |
| #define | GPU_SHADER_CREATE_INFO(_info) |
| #define | GPU_SHADER_NAMED_INTERFACE_END(_inst_name) |
| #define | GPU_SHADER_INTERFACE_END() |
| #define | GPU_SHADER_CREATE_END() |
| #define | SMOOTH(type, name) |
| #define | FLAT(type, name) |
| #define | NO_PERSPECTIVE(type, name) |
| #define | LOCAL_GROUP_SIZE(...) |
| #define | VERTEX_IN(slot, type, name) |
| #define | VERTEX_OUT(stage_interface) |
| #define | GEOMETRY_LAYOUT(...) |
| #define | GEOMETRY_OUT(stage_interface) |
| #define | SUBPASS_IN(slot, type, img_type, name, rog) |
| #define | FRAGMENT_OUT(slot, type, name) |
| #define | FRAGMENT_OUT_DUAL(slot, type, name, blend) |
| #define | FRAGMENT_OUT_ROG(slot, type, name, rog) |
| #define | EARLY_FRAGMENT_TEST(enable) |
| #define | DEPTH_WRITE(value) |
| #define | SPECIALIZATION_CONSTANT(type, name, default_value) |
| #define | COMPILATION_CONSTANT(type, name, value) |
| #define | PUSH_CONSTANT(type, name) |
| #define | PUSH_CONSTANT_ARRAY(type, name, array_size) |
| #define | UNIFORM_BUF(slot, type_name, name) |
| #define | UNIFORM_BUF_FREQ(slot, type_name, name, freq) |
| #define | STORAGE_BUF(slot, qualifiers, type_name, name) |
| #define | STORAGE_BUF_FREQ(slot, qualifiers, type_name, name, freq) |
| #define | SAMPLER(slot, type, name) |
| #define | SAMPLER_FREQ(slot, type, name, freq) |
| #define | IMAGE(slot, format, qualifiers, type, name) |
| #define | IMAGE_FREQ(slot, format, qualifiers, type, name, freq) |
| #define | BUILTINS(builtin) |
| #define | VERTEX_SOURCE(filename) |
| #define | FRAGMENT_SOURCE(filename) |
| #define | COMPUTE_SOURCE(filename) |
| #define | DEFINE(name) |
| #define | DEFINE_VALUE(name, value) |
| #define | DO_STATIC_COMPILATION() |
| #define | AUTO_RESOURCE_LOCATION() |
| #define | METAL_BACKEND_ONLY() |
| #define | ADDITIONAL_INFO(info_name) |
| #define | TYPEDEF_SOURCE(filename) |
| #define | MTL_MAX_TOTAL_THREADS_PER_THREADGROUP(value) |
| #define | _INFO_EXPAND2(a, b) |
| #define | _INFO_EXPAND3(a, b, c) |
| #define | _INFO_EXPAND4(a, b, c, d) |
| #define | _INFO_EXPAND5(a, b, c, d, e) |
| #define | _INFO_EXPAND6(a, b, c, d, e, f) |
| #define | ADDITIONAL_INFO_EXPAND(...) |
| #define | CREATE_INFO_VARIANT(name, ...) |
| #define | TYPES_EXPAND(s) |
| #define | TYPES_EXPAND(s) |
| #define | TYPES_EXPAND(s) |
| #define | TYPES_EXPAND(s) |
| #define | TYPES_EXPAND(s) |
| #define | TEST_EQUAL(a, b, _member) |
| #define | TEST_VECTOR_EQUAL(a, b, _vector) |
Functions | |
| static Type | blender::gpu::shader::to_type (const eGPUType type) |
| static std::ostream & | blender::gpu::shader::operator<< (std::ostream &stream, const Type type) |
| static std::ostream & | blender::gpu::shader::operator<< (std::ostream &stream, const eGPUType type) |
| blender::gpu::shader::ENUM_OPERATORS (BuiltinBits, BuiltinBits::USE_DEBUG_DRAW) | |
| blender::gpu::shader::ENUM_OPERATORS (Qualifier, Qualifier::QUALIFIER_MAX) | |
Descriptor type used to define shader structure, resources and interfaces.
Some rule of thumb:
Definition in file gpu_shader_create_info.hh.
| #define _INFO_EXPAND2 | ( | a, | |
| b ) |
Definition at line 273 of file gpu_shader_create_info.hh.
| #define _INFO_EXPAND3 | ( | a, | |
| b, | |||
| c ) |
Definition at line 274 of file gpu_shader_create_info.hh.
| #define _INFO_EXPAND4 | ( | a, | |
| b, | |||
| c, | |||
| d ) |
Definition at line 275 of file gpu_shader_create_info.hh.
Definition at line 276 of file gpu_shader_create_info.hh.
Definition at line 277 of file gpu_shader_create_info.hh.
| #define ADDITIONAL_INFO | ( | info_name | ) |
Definition at line 180 of file gpu_shader_create_info.hh.
| #define ADDITIONAL_INFO_EXPAND | ( | ... | ) |
Definition at line 279 of file gpu_shader_create_info.hh.
| #define AUTO_RESOURCE_LOCATION | ( | ) |
Definition at line 175 of file gpu_shader_create_info.hh.
| #define BUILTINS | ( | builtin | ) |
Definition at line 165 of file gpu_shader_create_info.hh.
| #define COMPILATION_CONSTANT | ( | type, | |
| name, | |||
| value ) |
Definition at line 140 of file gpu_shader_create_info.hh.
| #define COMPUTE_SOURCE | ( | filename | ) |
Definition at line 169 of file gpu_shader_create_info.hh.
| #define CREATE_INFO_VARIANT | ( | name, | |
| ... ) |
Definition at line 281 of file gpu_shader_create_info.hh.
| #define DEFINE | ( | name | ) |
Definition at line 171 of file gpu_shader_create_info.hh.
| #define DEFINE_VALUE | ( | name, | |
| value ) |
Definition at line 172 of file gpu_shader_create_info.hh.
| #define DEPTH_WRITE | ( | value | ) |
Definition at line 135 of file gpu_shader_create_info.hh.
| #define DO_STATIC_COMPILATION | ( | ) |
Definition at line 174 of file gpu_shader_create_info.hh.
| #define EARLY_FRAGMENT_TEST | ( | enable | ) |
Definition at line 134 of file gpu_shader_create_info.hh.
| #define FLAT | ( | type, | |
| name ) |
Definition at line 113 of file gpu_shader_create_info.hh.
| #define FRAGMENT_OUT | ( | slot, | |
| type, | |||
| name ) |
Definition at line 128 of file gpu_shader_create_info.hh.
| #define FRAGMENT_OUT_DUAL | ( | slot, | |
| type, | |||
| name, | |||
| blend ) |
Definition at line 129 of file gpu_shader_create_info.hh.
| #define FRAGMENT_OUT_ROG | ( | slot, | |
| type, | |||
| name, | |||
| rog ) |
Definition at line 131 of file gpu_shader_create_info.hh.
| #define FRAGMENT_SOURCE | ( | filename | ) |
Definition at line 168 of file gpu_shader_create_info.hh.
| #define GEOMETRY_LAYOUT | ( | ... | ) |
Definition at line 122 of file gpu_shader_create_info.hh.
| #define GEOMETRY_OUT | ( | stage_interface | ) |
Definition at line 123 of file gpu_shader_create_info.hh.
| #define GPU_FORCE_ENABLE_SHADER_PRINTF 0 |
Definition at line 29 of file gpu_shader_create_info.hh.
| #define GPU_SHADER_CREATE_END | ( | ) |
Definition at line 105 of file gpu_shader_create_info.hh.
| #define GPU_SHADER_CREATE_INFO | ( | _info | ) |
Definition at line 93 of file gpu_shader_create_info.hh.
| #define GPU_SHADER_INTERFACE_END | ( | ) |
Definition at line 102 of file gpu_shader_create_info.hh.
| #define GPU_SHADER_INTERFACE_INFO | ( | _interface | ) |
Definition at line 88 of file gpu_shader_create_info.hh.
| #define GPU_SHADER_NAMED_INTERFACE_END | ( | _inst_name | ) |
Definition at line 99 of file gpu_shader_create_info.hh.
| #define GPU_SHADER_NAMED_INTERFACE_INFO | ( | _interface, | |
| _inst_name ) |
Definition at line 83 of file gpu_shader_create_info.hh.
| #define GPU_SHADER_PRINTF_ENABLE 1 |
Definition at line 32 of file gpu_shader_create_info.hh.
| #define GPU_SHADER_PRINTF_MAX_CAPACITY (1024 * 4) |
Definition at line 37 of file gpu_shader_create_info.hh.
| #define GPU_SHADER_PRINTF_SLOT 13 |
Definition at line 36 of file gpu_shader_create_info.hh.
| #define GPU_SSBO_INDEX_BUF_SLOT 7 |
Definition at line 40 of file gpu_shader_create_info.hh.
| #define GPU_SSBO_POLYLINE_COL_BUF_SLOT 1 |
Definition at line 43 of file gpu_shader_create_info.hh.
| #define GPU_SSBO_POLYLINE_POS_BUF_SLOT 0 |
Definition at line 42 of file gpu_shader_create_info.hh.
| #define IMAGE | ( | slot, | |
| format, | |||
| qualifiers, | |||
| type, | |||
| name ) |
Definition at line 160 of file gpu_shader_create_info.hh.
| #define IMAGE_FREQ | ( | slot, | |
| format, | |||
| qualifiers, | |||
| type, | |||
| name, | |||
| freq ) |
Definition at line 162 of file gpu_shader_create_info.hh.
| #define LOCAL_GROUP_SIZE | ( | ... | ) |
Definition at line 117 of file gpu_shader_create_info.hh.
| #define METAL_BACKEND_ONLY | ( | ) |
Definition at line 178 of file gpu_shader_create_info.hh.
| #define MTL_MAX_TOTAL_THREADS_PER_THREADGROUP | ( | value | ) |
Definition at line 183 of file gpu_shader_create_info.hh.
| #define NO_PERSPECTIVE | ( | type, | |
| name ) |
Definition at line 114 of file gpu_shader_create_info.hh.
| #define PUSH_CONSTANT | ( | type, | |
| name ) |
Definition at line 143 of file gpu_shader_create_info.hh.
| #define PUSH_CONSTANT_ARRAY | ( | type, | |
| name, | |||
| array_size ) |
Definition at line 144 of file gpu_shader_create_info.hh.
| #define SAMPLER | ( | slot, | |
| type, | |||
| name ) |
Definition at line 156 of file gpu_shader_create_info.hh.
| #define SAMPLER_FREQ | ( | slot, | |
| type, | |||
| name, | |||
| freq ) |
Definition at line 157 of file gpu_shader_create_info.hh.
| #define SMOOTH | ( | type, | |
| name ) |
Definition at line 112 of file gpu_shader_create_info.hh.
| #define SPECIALIZATION_CONSTANT | ( | type, | |
| name, | |||
| default_value ) |
Definition at line 137 of file gpu_shader_create_info.hh.
| #define STORAGE_BUF | ( | slot, | |
| qualifiers, | |||
| type_name, | |||
| name ) |
Definition at line 151 of file gpu_shader_create_info.hh.
| #define STORAGE_BUF_FREQ | ( | slot, | |
| qualifiers, | |||
| type_name, | |||
| name, | |||
| freq ) |
Definition at line 153 of file gpu_shader_create_info.hh.
| #define SUBPASS_IN | ( | slot, | |
| type, | |||
| img_type, | |||
| name, | |||
| rog ) |
Definition at line 125 of file gpu_shader_create_info.hh.
| #define TEST_EQUAL | ( | a, | |
| b, | |||
| _member ) |
Definition at line 658 of file gpu_shader_create_info.hh.
| #define TEST_VECTOR_EQUAL | ( | a, | |
| b, | |||
| _vector ) |
Definition at line 663 of file gpu_shader_create_info.hh.
| #define TYPEDEF_SOURCE | ( | filename | ) |
Definition at line 181 of file gpu_shader_create_info.hh.
| #define TYPES_EXPAND | ( | s | ) |
Definition at line 455 of file gpu_shader_create_info.hh.
| #define TYPES_EXPAND | ( | s | ) |
Definition at line 455 of file gpu_shader_create_info.hh.
| #define TYPES_EXPAND | ( | s | ) |
Definition at line 455 of file gpu_shader_create_info.hh.
| #define TYPES_EXPAND | ( | s | ) |
Definition at line 455 of file gpu_shader_create_info.hh.
| #define TYPES_EXPAND | ( | s | ) |
Definition at line 455 of file gpu_shader_create_info.hh.
| #define UNIFORM_BUF | ( | slot, | |
| type_name, | |||
| name ) |
Definition at line 147 of file gpu_shader_create_info.hh.
| #define UNIFORM_BUF_FREQ | ( | slot, | |
| type_name, | |||
| name, | |||
| freq ) |
Definition at line 148 of file gpu_shader_create_info.hh.
| #define VERTEX_IN | ( | slot, | |
| type, | |||
| name ) |
Definition at line 119 of file gpu_shader_create_info.hh.
| #define VERTEX_OUT | ( | stage_interface | ) |
Definition at line 120 of file gpu_shader_create_info.hh.
| #define VERTEX_SOURCE | ( | filename | ) |
Definition at line 167 of file gpu_shader_create_info.hh.