我在着色器中遇到问题。着色器的一小部分:
#pragma import_defines ( HAS_NORMALS )
#pragma import_defines ( HAS_TANGENTS )
#ifdef HAS_NORMALS
#ifdef HAS_TANGENTS
varying mat3 v_TBN;
#else
varying vec3 v_Normal;
#endif
#endif
在我的主要功能中,我接下来会做:
stateSet->setDefine("HAS_TANGENTS");
stateSet->setDefine("HAS_NORMALS");
但是v_TBN没有创建。我喜欢在shaderComposition示例中,但出了点问题。 https://github.com/artoolkit/osg/blob/master/examples/osgshadercomposition/osgshadercomposition.cpp https://github.com/openscenegraph/OpenSceneGraph-Data/blob/master/shaders/osgshadercomposition.frag