代码:
// Effect.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <osgDB/ReadFile>
#include <osgViewer/Viewer>
#include <osgParticle/PrecipitationEffect>
#include <osg/Node>
int _tmain(int argc, _TCHAR* argv[])
{
osgViewer::Viewer viewer;
//创建雪花对象
osg::ref_ptr<osgParticle::PrecipitationEffect> precipationEffect=new osgParticle::PrecipitationEffect();
//设置雪花浓度
precipationEffect->snow(0.5);
//设置雪花颜色
precipationEffect->setParticleColor(osg::Vec4(1,1,1,1));
precipationEffect->setUseFarLineSegments(true);
//设置雪花方向
precipationEffect->setWind(osg::Vec3(2,0,0));
osg::Group *root=new osg::Group();
//把雪花加入到场景中
root->addChild(precipationEffect.get());
osg::Node *ceep=osgDB::readNodeFile("ceep.ive");
//把模型加入到场景中
root->addChild(ceep);
viewer.setSceneData(root);
viewer.realize();
viewer.run();
return 0;
}
运行效果