[osg-users] Problem setting a skydome

Alberto Luaces aluaces at udc.es
Mon Jul 14 04:00:04 PDT 2008


David,

I appreciate your help a lot. However I have found a few problems:

El Domingo 13 Julio 2008ES 21:22:33 David Spilling escribió:
> Firstly, you need to prevent the CullVisitor from considering your skydome
> in it's autonear/far calculation. You can do this with
> skydome->setComputeNearFarMode(osg::CullSettings::DO_NOT_COMPUTE_NEAR_FAR).

I couldn't find any setComputeNearFarMode mode in osg::Node. I only found it 
in osg::CullSettings, a class that osg::Camera inherits from, so I'm unable 
to easily make OSG skip a certain node from the automatic near/far 
computation. Either I use it with all the scene or I disable it completely 
with DO_NOT_COMPUTE_NEAR_FAR.

I kept investigating and found that the code snippet I was perusing, the 
createSkyBox function at osgvertexprogram.cpp wasn't working at all. When I 
pasted that function directly into my program, the near clipping was still 
present. I think that the similar sizes of the osgvertexprogram.cpp program 
made that this behaviour went undetected for the example.

A solution that comes to my mind is to use a pair of cameras, one rendering 
the skydome with the setting you said, DO_NOT_COMPUTE_NEAR_FAR, and the other 
rendering the rest of the scene. However, I think having a pair of cameras 
just to skip the culling process for a node could be an overkill. Doesn't 
osg::Node::setCullingActive exists for this very reason?

Regards,

Alberto



More information about the osg-users mailing list