Hi,

I want to calculate the distance between my final render cameras position and 
the vertices of each object rendered.  I want to pass the world position of the 
camera into a shader and then use gl_Vertex position to perform the 
calculation.  In search the OSG website, the net and this forum (as I 
understand a good OSG newbie should) I found the following 

http://www.openscenegraph.org/projects/osg/wiki/Support/Tutorials/CameraControlFindingWorldCoordinates


> "Where in the world am I?
> To compute where a particular node is the scene graph is, in world 
> coordinates, you need to acquire the accumulated 4x4 matrix from the root of 
> the scene graph down to your node. osg::Node contains a convenience method, 
> Node::getWorldMatrices(..), that walks the parental chain from your node to 
> the root(s) of your scene graph, returning a list of matrices. A list of 
> matrices is returned rather than a single matrix as the OpenSceneGraph 
> supports sharing of nodes, so they may have multiple parents, and if the 
> parent chain has separate transforms in them the different paths will result 
> in different matrices - in this case you node is effectively in more than one 
> place at once! Multiple parents would be typical in cases such as a wheel 
> subgraph that is reused four times on a car, each with a transform above it 
> to place it in the appropriate place. 
> To use this feature use code such as:
> 
> osg::MatrixList worldMatrices = myNode->getWorldMatrices();
> 
>    for(osg::MatrixList::iterator itr = worldMatrices.begin();
>        itr != worldMatrices.end();
>        ++itr)
>    {
>        osg::Matrix& matrix = *itr;
>        osg::Vec3 center = myNode->getBound().center() * matrix;
>        std::cout<<"Node "<<myNode->getName()<<" center = "<<center<<" 
> worldMatrix = "<<matrix<<std::end;
>    }
> "
> 


I am wondering if this is what I need to do...  with myNode being my viewer 
camera node, and then getting the worldMatrix for it.... If so, how do I get 
the position from the worldMatrix?


Conan

Thank you!

Cheers,
Conan

------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=42702#42702





_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to