粒子系统
来源:互联网 发布:zcash 挖矿 linux 编辑:程序博客网 时间:2024/05/29 16:15
粒子系统
载入粒子系统模板
代码如下
- ParticleSystem* ps; //声明一个粒子系统
- //两个参数分别是新建粒子系统的名称(自己取)和载入的粒子系统模板名称
- ps = mSceneMgr->createParticleSystem("Fireworks", "Examples/Fireworks");
- 绑定到节点上
- mSceneMgr->getRootSceneNode()->attachObject(ps);
粒子系统模板格式如下,是一些参数的设定,
- particle_system Examples/Swarm
- {
- quota 3000
- material Examples/Flare2
- particle_width 12
- particle_height 24
- cull_each true
- renderer billboard
- sorted true
- local_space false
- billboard_type oriented_self
- emitter Box
- {
- angle 180
- colour 1 1 1 1
- colour_range_start 1 1 1 1
- colour_range_end 1 1 1 1
- direction 0 1 0
- emission_rate 30
- position 0 0 0
- velocity 50
- velocity_min 50
- velocity_max 1
- time_to_live 20
- time_to_live_min 20
- time_to_live_max 20
- duration 0
- duration_min 0
- duration_max 0
- repeat_delay 0
- repeat_delay_min 0
- repeat_delay_max 0
- width 80
- height 80
- depth 80
- }
- affector ColourFader
- {
- red -0.05
- green 0
- blue 0
- alpha 0
- }
- affector DeflectorPlane
- {
- plane_point 0 -50 0
- plane_normal 0 1 0
- bounce 1
- }
- affector DeflectorPlane
- {
- plane_point 0 50 0
- plane_normal 0 -1 0
- bounce 1
- }
- affector DeflectorPlane
- {
- plane_point 50 0 0
- plane_normal -1 0 0
- bounce 1
- }
- affector DeflectorPlane
- {
- plane_point -50 0 0
- plane_normal 1 0 0
- bounce 1
- }
- affector DeflectorPlane
- {
- plane_point 0 0 50
- plane_normal 0 0 -1
- bounce 1
- }
- affector DeflectorPlane
- {
- plane_point 0 0 -50
- plane_normal 0 0 1
- bounce 1
- }
- affector DirectionRandomiser
- {
- randomness 60
- }
- }
节点轨迹跟踪
如果是需要显示物体的运动轨迹,可以使用RibbonTrail类来实现,首先是创建一个RibbonTrail实例,然后把节点添加给RibbonTrail,要注意的是参数numberOfChains限定了可以添加的node数量。
- Ogre::NameValuePairList params;
- params["numberOfChains"] = "1";
- params["maxElements"] = "80";
- Ogre::RibbonTrail* m_pRocketTrail = static_cast<RibbonTrail*>(m_pSceneMgr->createMovableObject("RibbonTrail", ¶ms));
- m_pRocketTrail->setMaterialName("Examples/LightRibbonTrail");
- m_pRocketTrail->setTrailLength(20);
- m_pRocketTrail->setVisible(false);
- m_pSceneMgr->getRootSceneNode()->attachObject(m_pRocketTrail);
- m_pRocketTrail->setInitialColour(0, 1, 0.8, 0);
- m_pRocketTrail->setColourChange(0, 0.75, 1.25, 1.25, 1.25);
- m_pRocketTrail->setWidthChange(0, 1);
- m_pRocketTrail->setInitialWidth(0, 0.5);
- m_pRocketTrail->setVisible(true);
- m_pRocketTrail->addNode(m_pRocket->getParentNode());
阅读全文
0 0
- 粒子系统
- 粒子系统
- 粒子系统
- 粒子系统
- 粒子系统
- 粒子系统
- 粒子系统。
- 粒子系统
- 粒子系统
- 粒子系统
- 粒子系统
- 粒子系统
- 粒子系统
- 粒子系统
- 粒子系统
- 粒子系统
- 粒子系统
- 粒子系统
- Android 自己收集的一些有趣的框架(持续更新 2017.12.23)
- Android的设计模式-中介者模式
- jQuery+Ajax+PHP实现异步分页数据显示--js可参考
- leetcode 648. Replace Words 公共前缀
- Error:Failed to find target with hash string 'android-15' 解决办法
- 粒子系统
- datatables插件的应用
- 隐藏服务器版本信息
- Selenium Q&A
- 现代OpenGL自学----坐标变换
- mybatis用法(三)mybatis保存CLOB类型到oracle数据库实例
- Safe Area Layout Guide before ios9.0 解决方法
- Mysql数据库学习
- c#总结