Changeset View
Changeset View
Standalone View
Standalone View
source/blender/nodes/shader/nodes/node_shader_vertex_color.cc
| Show All 38 Lines | static int node_shader_gpu_vertex_color(GPUMaterial *mat, | ||||
| GPUNodeStack *in, | GPUNodeStack *in, | ||||
| GPUNodeStack *out) | GPUNodeStack *out) | ||||
| { | { | ||||
| NodeShaderVertexColor *vertexColor = (NodeShaderVertexColor *)node->storage; | NodeShaderVertexColor *vertexColor = (NodeShaderVertexColor *)node->storage; | ||||
| if (U.experimental.use_sculpt_vertex_colors) { | if (U.experimental.use_sculpt_vertex_colors) { | ||||
| GPUNodeLink *vertexColorLink = GPU_attribute(mat, CD_PROP_COLOR, vertexColor->layer_name); | GPUNodeLink *vertexColorLink = GPU_attribute(mat, CD_PROP_COLOR, vertexColor->layer_name); | ||||
| return GPU_stack_link(mat, node, "node_vertex_color", in, out, vertexColorLink); | return GPU_stack_link(mat, node, "node_vertex_color", in, out, vertexColorLink); | ||||
| } | } | ||||
| GPUNodeLink *vertexColorLink = GPU_attribute(mat, CD_MCOL, vertexColor->layer_name); | |||||
| /* NOTE: using CD_AUTO_FROM_NAME instead of CD_MCOL as geometry nodes may overwrite data which | |||||
| * will also change the CustomDataType. This will also make EEVEE and Cycles consistent. See | |||||
| * T93179. */ | |||||
| GPUNodeLink *vertexColorLink = GPU_attribute(mat, CD_AUTO_FROM_NAME, vertexColor->layer_name); | |||||
| return GPU_stack_link(mat, node, "node_vertex_color", in, out, vertexColorLink); | return GPU_stack_link(mat, node, "node_vertex_color", in, out, vertexColorLink); | ||||
| } | } | ||||
| } // namespace blender::nodes::node_shader_vertex_color_cc | } // namespace blender::nodes::node_shader_vertex_color_cc | ||||
| void register_node_type_sh_vertex_color() | void register_node_type_sh_vertex_color() | ||||
| { | { | ||||
| namespace file_ns = blender::nodes::node_shader_vertex_color_cc; | namespace file_ns = blender::nodes::node_shader_vertex_color_cc; | ||||
| Show All 12 Lines | |||||