ocean state set in osg::Geometry
Put the ocean tile state set in osg::Geometry, not the osg::Geode, so that is readily available during intersection testing and can be used to find the corresponding SGMaterial. Problem reported by grtux (gh.robin@laposte.net)
This commit is contained in:
parent
aeaaa50f6c
commit
8398f45d43
@ -298,11 +298,11 @@ osg::Node* SGOceanTile(const SGBucket& b, SGMaterialLib *matlib)
|
|||||||
+ 2 * (latPoints - 1)));
|
+ 2 * (latPoints - 1)));
|
||||||
fillDrawElementsWithApron(latPoints, lonPoints, drawElements->begin());
|
fillDrawElementsWithApron(latPoints, lonPoints, drawElements->begin());
|
||||||
geometry->addPrimitiveSet(drawElements);
|
geometry->addPrimitiveSet(drawElements);
|
||||||
|
geometry->setStateSet(stateSet);
|
||||||
|
|
||||||
osg::Geode* geode = new osg::Geode;
|
osg::Geode* geode = new osg::Geode;
|
||||||
geode->setName("Ocean tile");
|
geode->setName("Ocean tile");
|
||||||
geode->addDrawable(geometry);
|
geode->addDrawable(geometry);
|
||||||
geode->setStateSet(stateSet);
|
|
||||||
|
|
||||||
osg::MatrixTransform* transform = new osg::MatrixTransform;
|
osg::MatrixTransform* transform = new osg::MatrixTransform;
|
||||||
transform->setName("Ocean");
|
transform->setName("Ocean");
|
||||||
|
Loading…
Reference in New Issue
Block a user