Hi Daneil,

All the shadow mapping techniques AFAIR "support" multitexturing.
You will have to provide you custom vertex and fragment shader however. Also you should set the texture unit/texture coordinates for the shadow to texture-count + 1. Just look into the sources, there are the vertex/fragment shaders you'll need to modify. I can agree that there currently is no homogeneous way to setup shaders for all the techniques, but it can be done.

For the vertex shader, you will have to assign something the eye-space coordinates to the texture unit.
For shadow mapping it more or less boils down to:

gl_MultiTexCoord[n].s = dot(gl_EyePlaneS[n] * gl_Vertex);
gl_MultiTexCoord[n].t = dot(gl_EyePlaneT[n] * gl_Vertex);
gl_MultiTexCoord[n].p = dot(gl_EyePlaneP[n] * gl_Vertex);
gl_MultiTexCoord[n].q = dot(gl_EyePlaneQ[n] * gl_Vertex);

The fragment shader you can get from the sources.

cheers
Sebastian
Hi Robert

Thanks for your answer. I was hoping all osgShadow techniques support multi-texturing... but in my application, i tried every single one, and I only have strange effects. What happens basically is the following: I can manage to have a shadow with standardshadowmap, and all the view based techniques, by selecting the base texture unit as 0 and the shadow texture unit between 1 and 4. What happens then is that the according texture level of my model is replaced with my shadow texture and the texture coordinates of this level get mixed up, like i have other textures moving when rotating my viewport. So I thought, probably these levels are already occupied by my scene model, so I have to use a value above 4, but then I have no more shadow displayed at all.

I'm sure I'm missing somehow an important point about the way base texture and shadow texture units must have been supposed to use. But after some days of try and error, I cannot figure how I can have osg create a shadow without removing my textures or messing with a textures layer coordinate...

I'm really stuck... help appreciated. There are not really any tutorials out there explaining the use of osgShadow...

Regards
Daniel



_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to