|
代码如下:
int main()
{
osgViewer::Viewer* viewer = new osgViewer ::Viewer();
osg::Group* root = new osg::Group();
//申请一个粒子系统
osgParticle:recipitationEffect *pe = new osgParticle::PrecipitationEffect();
//设置雪效的浓度为0.5f
pe->snow(0.5f);
osgDB::writeNodeFile(*pe,"snow.osg"); //这样为什么不能保存出来?
//设置背景色
viewer->getCamera()->setClearColor(pe->getFog()->getColor());
//读取模型
osg::Node* node = new osg::Node() ;
node = osgDB::readNodeFile("lz.osg");
//使用雾效
node->getOrCreateStateSet()->setAttributeAndModes(pe->getFog());
root->addChild(node);
root->addChild(pe);
//优化场景数据
osgUtil::Optimizer optimizer ;
optimizer.optimize(root) ;
viewer->setSceneData(root);
viewer->realize();
viewer->run();
return 0 ;
}
osgDB::writeNodeFile(*pe,"snow.osg"); //这样为什么不能保存出来?
如果我想将pe这个粒子系统保存成.osg文件应该怎么做?
请各位高手帮忙,我初接触osg,望大家指点!谢谢
|
|