<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<span style=" color:#c0c0c0;"> </span><span style=" color:#808000;"><font
color="#000000">Due to several reasons I had to convert a
project to above versions.<br>
I was successful almost all over the project due to the excellent
work of osg exported uniforms etc.<br>
The last item I have to solve now is shadow.<br>
I'm using </font></span><span style=" color:#808000;"><font
color="#000000"><span style=" color:#800080;">osgShadow</span><span
style=" color:#000000;">::</span><span style=" color:#800080;">LightSpacePerspectiveShadowMapCB</span>
and I found out how to replace<br>
the given shaders. <br>
In my old vertex shader I had to calculate the shadow texture
coordinate like that:<br>
<br>
</font>if</span><span style=" color:#c0c0c0;"> </span>(useShadow)<span
style=" color:#c0c0c0;"> </span>{
<pre style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" color:#c0c0c0;"> </span>gl_TexCoord[<span style=" color:#000080;">1</span>].s<span style=" color:#c0c0c0;"> </span>=<span style=" color:#c0c0c0;"> </span>dot(<span style=" color:#c0c0c0;"> </span>eye,<span style=" color:#c0c0c0;"> </span>gl_EyePlaneS[<span style=" color:#000080;">1</span>]<span style=" color:#c0c0c0;"> </span>);</pre>
<pre style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" color:#c0c0c0;"> </span>gl_TexCoord[<span style=" color:#000080;">1</span>].t<span style=" color:#c0c0c0;"> </span>=<span style=" color:#c0c0c0;"> </span>dot(<span style=" color:#c0c0c0;"> </span>eye,<span style=" color:#c0c0c0;"> </span>gl_EyePlaneT[<span style=" color:#000080;">1</span>]<span style=" color:#c0c0c0;"> </span>);</pre>
<pre style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" color:#c0c0c0;"> </span>gl_TexCoord[<span style=" color:#000080;">1</span>].p<span style=" color:#c0c0c0;"> </span>=<span style=" color:#c0c0c0;"> </span>dot(<span style=" color:#c0c0c0;"> </span>eye,<span style=" color:#c0c0c0;"> </span>gl_EyePlaneR[<span style=" color:#000080;">1</span>]<span style=" color:#c0c0c0;"> </span>);</pre>
<pre style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" color:#c0c0c0;"> </span>gl_TexCoord[<span style=" color:#000080;">1</span>].q<span style=" color:#c0c0c0;"> </span>=<span style=" color:#c0c0c0;"> </span>dot(<span style=" color:#c0c0c0;"> </span>eye,<span style=" color:#c0c0c0;"> </span>gl_EyePlaneQ[<span style=" color:#000080;">1</span>]<span style=" color:#c0c0c0;"> </span>);</pre>
<pre style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" color:#c0c0c0;"> </span>}
</pre>
<pre style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Unfortunately the gl_EyePanes are no more available.
I also couldn't find any uniform exports like osg_vertex etc.
Is there any way I can calculate this inside the vertex shader
by using the given uniforms and the eye position?
Or is there anything I can precalculate on CPU and provide it via uniform?
Any help is highly appreciated.
- Werner -</pre>
<br>
</body>
</html>