osgParticle.Shooter
翻译成中文的意思是 “发射器”,这是一个实用工具,用于在场景中发射粒子系统的粒子。当场景中有需要添加自然现象效果的场合,我们可以使用它来制造出绚烂的烟花、瀑布般的雨点等类似的效果。
它属于 OpenSceneGraph 中的 osgParticle
工具库,支持菱形、矩形、环、点、线、圆锥形的不同形态发射器,并且还支持指向不同的方向。
下面是 osgParticle.Shooter
的类定义:
class OSGPARTICLE_EXPORT Shooter : public osg::Referenced
{
public:
Shooter();
virtual ~Shooter();
virtual void shoot(osgParticle::Particle* P =0) const {}
virtual void copy(const osgParticle::Shooter& copy, const osg::CopyOp& copyop) {}
virtual void reset() {}
void setParticleSystem(osgParticle::ParticleSystem* ps) { _ps = ps; }
osgParticle::ParticleSystem* getParticleSystem() { return _ps.get(); }
protected:
osg::ref_ptr<osgParticle::ParticleSystem> _ps;
};
下面是 osgParticle.Shooter
类的成员函数介绍:
Shooter
构造函数。
Shooter
析构函数。
发射一个粒子,该函数虚构没有实际实现,需要在子类中实现。
深度复制当前对象。
重置发射器状态。
设置粒子系统,即将发射器绑定到粒子系统中。
返回发射器绑定的粒子系统。
osgParticle.Shooter
支持的不同类型发射器包括:
产生从指定的点发射的粒子。
在指定的线段上发射粒子。
在一个三角形扇形内均匀地发射粒子。
在圆盘内均匀分布发射粒子。
在圆环形之间发射粒子。
在球形内发射粒子。
在锥形内均匀分布发射粒子。
osgParticle.Shooter
是一个方便的粒子发射器,它能帮助我们轻松地在场景中创建出各种自然效果。但是,为了更好地理解使用方法,建议读者在熟练掌握 OpenSceneGraph 基本操作后再学习其使用。