Hello, i've successfully implemented a simple dot3 object shading for my scene and it works fine with single objects. Now i try to share the shaders between different objects in the scene and got some trouble:
To share the shaders i've one osg::Program, where i've added two osg::Shader objects. The osg::Program instance is shared between the objects and applied to their osg::StateSet objects. The required osg::Uniform objects are created explicit for each object and bind to their osg::StateSet in a separated process. So only the osg::Program and osg::Shader are Shared (later i will share the equal uniforms too). The shader works, but it's effected on all objects equals to the object where the osg::Program has applied first. I.e. i've added two normal mapped cubes in the scene. When i set the light between both cubes i expect that both cube faces are enlighted arround the light, but on the 2nd cube the thame face of the first cube is enlighted... Have i consider something special for the sharing of (object) shaders between objects? Best regards, Christian _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

