У меня проблемы с определением в шейдере.Маленький кусочек шейдера:
#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