diff options
Diffstat (limited to 'source/blender/gpu/intern/gpu_codegen.c')
-rw-r--r-- | source/blender/gpu/intern/gpu_codegen.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/source/blender/gpu/intern/gpu_codegen.c b/source/blender/gpu/intern/gpu_codegen.c index 903d65599d9..496302bb44e 100644 --- a/source/blender/gpu/intern/gpu_codegen.c +++ b/source/blender/gpu/intern/gpu_codegen.c @@ -1615,7 +1615,16 @@ GPUPass *GPU_generate_pass(ListBase *nodes, GPUNodeLink *outlink, fragmentcode = code_generate_fragment(nodes, outlink->output); vertexcode = code_generate_vertex(nodes, type); geometrycode = code_generate_geometry(nodes, use_opensubdiv); - shader = GPU_shader_create(vertexcode, fragmentcode, geometrycode, glsl_material_library, NULL, 0, 0, 0); + shader = GPU_shader_create_ex(vertexcode, + fragmentcode, + geometrycode, + glsl_material_library, + NULL, + 0, + 0, + 0, + use_opensubdiv ? GPU_SHADER_FLAGS_SPECIAL_OPENSUBDIV + : GPU_SHADER_FLAGS_NONE); /* failed? */ if (!shader) { |