diff --git a/src/osg/ShaderComposer.cpp b/src/osg/ShaderComposer.cpp index a35ea52c4..09057b5a3 100644 --- a/src/osg/ShaderComposer.cpp +++ b/src/osg/ShaderComposer.cpp @@ -105,11 +105,21 @@ osg::Program* ShaderComposer::getOrCreateProgram(const ShaderComponents& shaderC addShaderToProgram(program.get(), vertexShaders); } + if (!tessControlShaders.empty()) + { + addShaderToProgram(program.get(), tessControlShaders); + } + if (!geometryShaders.empty()) { addShaderToProgram(program.get(), geometryShaders); } + if (!tessEvaluationShaders.empty()) + { + addShaderToProgram(program.get(), tessEvaluationShaders); + } + if (!fragmentShaders.empty()) { addShaderToProgram(program.get(), fragmentShaders);