Changeset View
Changeset View
Standalone View
Standalone View
source/blender/gpu/metal/mtl_shader_generator.mm
| Show First 20 Lines • Show All 718 Lines • ▼ Show 20 Lines | bool MTLShader::generate_msl_from_glsl(const shader::ShaderCreateInfo *info) | ||||
| /* Conditional defines. */ | /* Conditional defines. */ | ||||
| if (msl_iface.use_argument_buffer_for_samplers()) { | if (msl_iface.use_argument_buffer_for_samplers()) { | ||||
| ss_vertex << "#define USE_ARGUMENT_BUFFER_FOR_SAMPLERS 1" << std::endl; | ss_vertex << "#define USE_ARGUMENT_BUFFER_FOR_SAMPLERS 1" << std::endl; | ||||
| ss_vertex << "#define ARGUMENT_BUFFER_NUM_SAMPLERS " | ss_vertex << "#define ARGUMENT_BUFFER_NUM_SAMPLERS " | ||||
| << msl_iface.num_samplers_for_stage(ShaderStage::VERTEX) << std::endl; | << msl_iface.num_samplers_for_stage(ShaderStage::VERTEX) << std::endl; | ||||
| } | } | ||||
| if (msl_iface.uses_ssbo_vertex_fetch_mode) { | if (msl_iface.uses_ssbo_vertex_fetch_mode) { | ||||
| ss_vertex << "#define MTL_SSBO_VERTEX_FETCH 1" << std::endl; | ss_vertex << "#define MTL_SSBO_VERTEX_FETCH 1" << std::endl; | ||||
| ss_vertex << "#define MTL_SSBO_VERTEX_FETCH_MAX_VBOS " << MTL_SSBO_VERTEX_FETCH_MAX_VBOS | |||||
| << std::endl; | |||||
| ss_vertex << "#define MTL_SSBO_VERTEX_FETCH_IBO_INDEX " << MTL_SSBO_VERTEX_FETCH_IBO_INDEX | |||||
| << std::endl; | |||||
| for (const MSLVertexInputAttribute &attr : msl_iface.vertex_input_attributes) { | for (const MSLVertexInputAttribute &attr : msl_iface.vertex_input_attributes) { | ||||
| ss_vertex << "#define SSBO_ATTR_TYPE_" << attr.name << " " << attr.type << std::endl; | ss_vertex << "#define SSBO_ATTR_TYPE_" << attr.name << " " << attr.type << std::endl; | ||||
| } | } | ||||
| /* Macro's */ | /* Macro's */ | ||||
| ss_vertex << "#define " | ss_vertex << "#define " | ||||
| "UNIFORM_SSBO_USES_INDEXED_RENDERING_STR " UNIFORM_SSBO_USES_INDEXED_RENDERING_STR | "UNIFORM_SSBO_USES_INDEXED_RENDERING_STR " UNIFORM_SSBO_USES_INDEXED_RENDERING_STR | ||||
| "\n" | "\n" | ||||
| ▲ Show 20 Lines • Show All 2,242 Lines • Show Last 20 Lines | |||||