[osg-users] render function using event handler
if (ea.getKey() == '+') { _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() + 1.0); osg::notify(osg::NOTICE) Ocean surface is now at z = _oceanScene-getOceanSurfaceHeight() std::endl; return true; } if (ea.getKey() == '-') { _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() - 1.0); osg::notify(osg::NOTICE) Ocean surface is now at z = _oceanScene-getOceanSurfaceHeight() std::endl; return true; } } If I press + water level is increased and for - water level is decreased the above code I had written is just setting ocean surface height. now I need to know which function is called after setting height using _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() + 1.0); what the osgOCean does to render the ocean with increased or decreased water level i tried gdb but cant trace what is happening.. I think some event is triggered after setting OceanSurfaceHeight but dont know where or how I hope the developers of osgOcean are viewing this mail and they will answer my question. Any pointers are greatly appreciated. Thanks in advance -- Regards, Rashad ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] render function using event handler
Hi Rashad, All setOceanSurfaceHeight does is set the matrix of the transform that parents the ocean surface so that it translates the surface up or down. Take a look here: http://code.google.com/p/osgocean/source/browse/trunk/include/osgOcean/OceanScene#224 It also dirties the scene asking for a rebuild on the next update traversal. Regards, Kim. On 12 February 2012 14:01, Mohammed Rashad mohammedrasha...@gmail.comwrote: if (ea.getKey() == '+') { _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() + 1.0); osg::notify(osg::NOTICE) Ocean surface is now at z = _oceanScene-getOceanSurfaceHeight() std::endl; return true; } if (ea.getKey() == '-') { _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() - 1.0); osg::notify(osg::NOTICE) Ocean surface is now at z = _oceanScene-getOceanSurfaceHeight() std::endl; return true; } } If I press + water level is increased and for - water level is decreased the above code I had written is just setting ocean surface height. now I need to know which function is called after setting height using _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() + 1.0); what the osgOCean does to render the ocean with increased or decreased water level i tried gdb but cant trace what is happening.. I think some event is triggered after setting OceanSurfaceHeight but dont know where or how I hope the developers of osgOcean are viewing this mail and they will answer my question. Any pointers are greatly appreciated. Thanks in advance -- Regards, Rashad ___ 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
Re: [osg-users] render function using event handler
thanks Kim. OK. after translate will it update window automatically what I want is partly done with osgOcean after increasing height I need to find the area that is under water. Is it possible is a big question but I have only one question Is it possile? and how On Sun, Feb 12, 2012 at 7:42 PM, Kim Bale kcb...@googlemail.com wrote: Hi Rashad, All setOceanSurfaceHeight does is set the matrix of the transform that parents the ocean surface so that it translates the surface up or down. Take a look here: http://code.google.com/p/osgocean/source/browse/trunk/include/osgOcean/OceanScene#224 It also dirties the scene asking for a rebuild on the next update traversal. Regards, Kim. On 12 February 2012 14:01, Mohammed Rashad mohammedrasha...@gmail.comwrote: if (ea.getKey() == '+') { _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() + 1.0); osg::notify(osg::NOTICE) Ocean surface is now at z = _oceanScene-getOceanSurfaceHeight() std::endl; return true; } if (ea.getKey() == '-') { _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() - 1.0); osg::notify(osg::NOTICE) Ocean surface is now at z = _oceanScene-getOceanSurfaceHeight() std::endl; return true; } } If I press + water level is increased and for - water level is decreased the above code I had written is just setting ocean surface height. now I need to know which function is called after setting height using _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() + 1.0); what the osgOCean does to render the ocean with increased or decreased water level i tried gdb but cant trace what is happening.. I think some event is triggered after setting OceanSurfaceHeight but dont know where or how I hope the developers of osgOcean are viewing this mail and they will answer my question. Any pointers are greatly appreciated. Thanks in advance -- Regards, Rashad ___ 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 -- Regards, Rashad ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] render function using event handler
It depends how accurate you want your calculation to be. An approximation would be to simply take the volume of the cuboid that forms between the seabed and the ocean surface. If you want a more accurate volume calculation then you'd have to take into account the shape of the waves and the seabed. I *think* one of the properties of the FFT ocean surface is that the average height will always be zero so you can treat it like a flat plane in your volume calculation. You might want to check that though it's been a while since I've looked at it in detail. If that's the case you only need to take into account the shape of the sea bed in your calculation. It is possible, but you'll have to work out the maths for that. Regards, Kim. On 12 February 2012 14:15, Mohammed Rashad mohammedrasha...@gmail.comwrote: thanks Kim. OK. after translate will it update window automatically what I want is partly done with osgOcean after increasing height I need to find the area that is under water. Is it possible is a big question but I have only one question Is it possile? and how On Sun, Feb 12, 2012 at 7:42 PM, Kim Bale kcb...@googlemail.com wrote: Hi Rashad, All setOceanSurfaceHeight does is set the matrix of the transform that parents the ocean surface so that it translates the surface up or down. Take a look here: http://code.google.com/p/osgocean/source/browse/trunk/include/osgOcean/OceanScene#224 It also dirties the scene asking for a rebuild on the next update traversal. Regards, Kim. On 12 February 2012 14:01, Mohammed Rashad mohammedrasha...@gmail.comwrote: if (ea.getKey() == '+') { _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() + 1.0); osg::notify(osg::NOTICE) Ocean surface is now at z = _oceanScene-getOceanSurfaceHeight() std::endl; return true; } if (ea.getKey() == '-') { _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() - 1.0); osg::notify(osg::NOTICE) Ocean surface is now at z = _oceanScene-getOceanSurfaceHeight() std::endl; return true; } } If I press + water level is increased and for - water level is decreased the above code I had written is just setting ocean surface height. now I need to know which function is called after setting height using _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() + 1.0); what the osgOCean does to render the ocean with increased or decreased water level i tried gdb but cant trace what is happening.. I think some event is triggered after setting OceanSurfaceHeight but dont know where or how I hope the developers of osgOcean are viewing this mail and they will answer my question. Any pointers are greatly appreciated. Thanks in advance -- Regards, Rashad ___ 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 -- Regards, Rashad ___ 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
Re: [osg-users] render function using event handler
On Sun, Feb 12, 2012 at 8:42 PM, Kim Bale kcb...@googlemail.com wrote: It depends how accurate you want your calculation to be. An approximation would be to simply take the volume of the cuboid that forms between the seabed and the ocean surface. how to get the cuboid that forms between seabed and oceansurface. Any pseudo code or something If you want a more accurate volume calculation then you'd have to take into account the shape of the waves and the seabed. I *think* one of the properties of the FFT ocean surface is that the average height will always be zero so you can treat it like a flat plane in your volume calculation. You might want to check that though it's been a while since I've looked at it in detail. If that's the case you only need to take into account the shape of the sea bed in your calculation. It is possible, but you'll have to work out the maths for that. Regards, Kim. On 12 February 2012 14:15, Mohammed Rashad mohammedrasha...@gmail.comwrote: thanks Kim. OK. after translate will it update window automatically what I want is partly done with osgOcean after increasing height I need to find the area that is under water. Is it possible is a big question but I have only one question Is it possile? and how On Sun, Feb 12, 2012 at 7:42 PM, Kim Bale kcb...@googlemail.com wrote: Hi Rashad, All setOceanSurfaceHeight does is set the matrix of the transform that parents the ocean surface so that it translates the surface up or down. Take a look here: http://code.google.com/p/osgocean/source/browse/trunk/include/osgOcean/OceanScene#224 It also dirties the scene asking for a rebuild on the next update traversal. Regards, Kim. On 12 February 2012 14:01, Mohammed Rashad mohammedrasha...@gmail.comwrote: if (ea.getKey() == '+') { _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() + 1.0); osg::notify(osg::NOTICE) Ocean surface is now at z = _oceanScene-getOceanSurfaceHeight() std::endl; return true; } if (ea.getKey() == '-') { _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() - 1.0); osg::notify(osg::NOTICE) Ocean surface is now at z = _oceanScene-getOceanSurfaceHeight() std::endl; return true; } } If I press + water level is increased and for - water level is decreased the above code I had written is just setting ocean surface height. now I need to know which function is called after setting height using _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() + 1.0); what the osgOCean does to render the ocean with increased or decreased water level i tried gdb but cant trace what is happening.. I think some event is triggered after setting OceanSurfaceHeight but dont know where or how I hope the developers of osgOcean are viewing this mail and they will answer my question. Any pointers are greatly appreciated. Thanks in advance -- Regards, Rashad ___ 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 -- Regards, Rashad ___ 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 -- Regards, Rashad ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] render function using event handler
Width x length x (Height of surface - height of seabed) K. On 12 February 2012 15:17, Mohammed Rashad mohammedrasha...@gmail.comwrote: On Sun, Feb 12, 2012 at 8:42 PM, Kim Bale kcb...@googlemail.com wrote: It depends how accurate you want your calculation to be. An approximation would be to simply take the volume of the cuboid that forms between the seabed and the ocean surface. how to get the cuboid that forms between seabed and oceansurface. Any pseudo code or something If you want a more accurate volume calculation then you'd have to take into account the shape of the waves and the seabed. I *think* one of the properties of the FFT ocean surface is that the average height will always be zero so you can treat it like a flat plane in your volume calculation. You might want to check that though it's been a while since I've looked at it in detail. If that's the case you only need to take into account the shape of the sea bed in your calculation. It is possible, but you'll have to work out the maths for that. Regards, Kim. On 12 February 2012 14:15, Mohammed Rashad mohammedrasha...@gmail.comwrote: thanks Kim. OK. after translate will it update window automatically what I want is partly done with osgOcean after increasing height I need to find the area that is under water. Is it possible is a big question but I have only one question Is it possile? and how On Sun, Feb 12, 2012 at 7:42 PM, Kim Bale kcb...@googlemail.com wrote: Hi Rashad, All setOceanSurfaceHeight does is set the matrix of the transform that parents the ocean surface so that it translates the surface up or down. Take a look here: http://code.google.com/p/osgocean/source/browse/trunk/include/osgOcean/OceanScene#224 It also dirties the scene asking for a rebuild on the next update traversal. Regards, Kim. On 12 February 2012 14:01, Mohammed Rashad mohammedrasha...@gmail.comwrote: if (ea.getKey() == '+') { _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() + 1.0); osg::notify(osg::NOTICE) Ocean surface is now at z = _oceanScene-getOceanSurfaceHeight() std::endl; return true; } if (ea.getKey() == '-') { _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() - 1.0); osg::notify(osg::NOTICE) Ocean surface is now at z = _oceanScene-getOceanSurfaceHeight() std::endl; return true; } } If I press + water level is increased and for - water level is decreased the above code I had written is just setting ocean surface height. now I need to know which function is called after setting height using _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() + 1.0); what the osgOCean does to render the ocean with increased or decreased water level i tried gdb but cant trace what is happening.. I think some event is triggered after setting OceanSurfaceHeight but dont know where or how I hope the developers of osgOcean are viewing this mail and they will answer my question. Any pointers are greatly appreciated. Thanks in advance -- Regards, Rashad ___ 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 -- Regards, Rashad ___ 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 -- Regards, Rashad ___ 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
Re: [osg-users] render function using event handler
Thanks On Sun, Feb 12, 2012 at 9:00 PM, Kim Bale kcb...@googlemail.com wrote: Width x length x (Height of surface - height of seabed) here width = window_width length = window_length height of seabed = how much it has raised(current height + 1.0) height of surface ? how to calculate the height of surface? K. On 12 February 2012 15:17, Mohammed Rashad mohammedrasha...@gmail.comwrote: On Sun, Feb 12, 2012 at 8:42 PM, Kim Bale kcb...@googlemail.com wrote: It depends how accurate you want your calculation to be. An approximation would be to simply take the volume of the cuboid that forms between the seabed and the ocean surface. how to get the cuboid that forms between seabed and oceansurface. Any pseudo code or something If you want a more accurate volume calculation then you'd have to take into account the shape of the waves and the seabed. I *think* one of the properties of the FFT ocean surface is that the average height will always be zero so you can treat it like a flat plane in your volume calculation. You might want to check that though it's been a while since I've looked at it in detail. If that's the case you only need to take into account the shape of the sea bed in your calculation. It is possible, but you'll have to work out the maths for that. Regards, Kim. On 12 February 2012 14:15, Mohammed Rashad mohammedrasha...@gmail.comwrote: thanks Kim. OK. after translate will it update window automatically what I want is partly done with osgOcean after increasing height I need to find the area that is under water. Is it possible is a big question but I have only one question Is it possile? and how On Sun, Feb 12, 2012 at 7:42 PM, Kim Bale kcb...@googlemail.comwrote: Hi Rashad, All setOceanSurfaceHeight does is set the matrix of the transform that parents the ocean surface so that it translates the surface up or down. Take a look here: http://code.google.com/p/osgocean/source/browse/trunk/include/osgOcean/OceanScene#224 It also dirties the scene asking for a rebuild on the next update traversal. Regards, Kim. On 12 February 2012 14:01, Mohammed Rashad mohammedrasha...@gmail.com wrote: if (ea.getKey() == '+') { _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() + 1.0); osg::notify(osg::NOTICE) Ocean surface is now at z = _oceanScene-getOceanSurfaceHeight() std::endl; return true; } if (ea.getKey() == '-') { _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() - 1.0); osg::notify(osg::NOTICE) Ocean surface is now at z = _oceanScene-getOceanSurfaceHeight() std::endl; return true; } } If I press + water level is increased and for - water level is decreased the above code I had written is just setting ocean surface height. now I need to know which function is called after setting height using _oceanScene-setOceanSurfaceHeight(_oceanScene-getOceanSurfaceHeight() + 1.0); what the osgOCean does to render the ocean with increased or decreased water level i tried gdb but cant trace what is happening.. I think some event is triggered after setting OceanSurfaceHeight but dont know where or how I hope the developers of osgOcean are viewing this mail and they will answer my question. Any pointers are greatly appreciated. Thanks in advance -- Regards, Rashad ___ 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 -- Regards, Rashad ___ 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 -- Regards, Rashad ___ 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 -- Regards, Rashad ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] need download osgvisual code
hello everyone: cann't download osgvisual code from china through svn.please help me ,please send to 641402...@qq.com___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Opaque black shadows since moving to OSG V3.0.1
Hi all, I actually posted about a similar issue 3 days ago, and included screenshots and a cpp file, but my post never made it on to the list. It may have been filtered due to attachments on first post. Anyway, I think there is a general regression in osgShadow from 2.8.3 to 3.0.1. The problem that I was seeing was with SoftShadowMap where the shaded areas are transparent. It is easily reproducible in the osgShadow example by making the SoftShadow technique default, and adding GL_BLEND to the default model 3 stateset. If GL_BLEND is enabled, shadows make the receiver object transparent in the areas where the shadows are projected. I tracked this down to a change in the shader code where shadows values were changed from a vec4 to a float. Using the original shader from 2.8.3 works fine, but the current one is broken. Cheers, Morné On Fri, Dec 2, 2011 at 6:53 PM, Wojciech Lewandowski w.p.lewandow...@gmail.com wrote: Hi, Guys, I think I see the reason why Robert commented it. For spotlights ambient factor should be attenuated with distance from light. It would be hard to compute attenuation in frag shader without assistance of vertex shader. I would bet it would be possible but very tricky, though. Anyway, IMHO when that line is commented its worse because such ambient factor is both wrong for directional and spot lights. That issue again proves that there is no silver bullet for shadow technique shaders. Depending on what your app does you may need different set of shaders, if not whole technique. So maybe you guys should consider passing in your own shaders (copied from 2.8 version) to make that look right again... Cheers, Wojtek Lewandowski 2011/12/1 Wojciech Lewandowski w.p.lewandow...@gmail.com Hi, Michael, Well, then I guess addition of gl_FrontLightProduct[0] should be uncomented. And thats a missing piece of the puzzle... SVN Blame shows that Robert commented it in 12737 rev on 29th of July. I guess its time to ask Robert what to do with this. Cheers, WL 2011/12/1 Michael Guerrero mjgue...@nps.edu Hi Wojtek, It certainly did seem as though I completely missed the addition with gl_FrontLightProduct[0].ambient. Unfortunately what happened was that after I copy/pasted it in the message I removed the quotes around it and more importantly the comment characters //. Here is a link to the file in question: http://www.openscenegraph.org/projects/osg/browser/OpenSceneGraph/tags/OpenSceneGraph-3.0.1/src/osgShadow/StandardShadowMap.cpp FYI, that piece of code looks the same on the trunk: http://www.openscenegraph.org/projects/osg/browser/OpenSceneGraph/trunk/src/osgShadow/StandardShadowMap.cpp -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=44170#44170 ___ 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 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org