前面已经讲过了如何用OSG中绘制几何体,这里讲一个OSG中单点的绘制和点的大小设置。
1、单点绘制
在OSG中用绘制点的方式绘制单点,通常会发现只有当点个数大于等于二是才能显示出来,这是因为默认把小物体裁剪掉了,因此需要添加下面代码:
osg::CullStack::CullingMode cullingMode=viewer->getCamera()->getCullingMode();
cullingMode &=~(osg::CullStack::SMALL_FEATURE_CULLING);
viewer->getCamera()->setCullingMode(cullingMode);
2、设置点大小
osg::ref_ptr<osg::StateSet> state=new osg::StateSet;
osg::ref_ptr<osg::Point> pointSize=new osg::Point;
pointSize->setSize(10);
state->setMode(GL_POINT_SPRITE_ARB,osg::StateAttribute::ON);
geode->setStateSet(state.get());
root->addChild(geode.get());