欢迎来到天天文库
浏览记录
ID:21993696
大小:891.00 KB
页数:22页
时间:2018-10-26
《opengl粒子系统实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、.... OpenGL进阶(六)-粒子系统http://blog.csdn.net/qp120291570/article/details/8373896一、提要 有一款例子特效软件叫做particleillution,在影视后期和游戏制作领域都可以用到,相信很多人都接触过,今天我们用SDL+OpenGL来实现例子效果。确保你搞定了物理模拟的代码! 代码下载二、原理简介 所谓的例子系统,就是同时控制一大堆类似的对象,这些对象可能是形体,可能是图片,有着不同的特征(寿命,速度,位置)。有了之前的基础,我们可以很轻易地搞定今天的东西。三、代码清单
2、首先是粒子的头文件,我直接写成结构体了,里面有一些基本的属性。[cpp] viewplaincopy1./***************************************************************************** 2.Copyright: 2012, ustc All rights reserved. 3.contact:k283228391@126.com 4.File name: particle.h 5.Description:Partical in opengl. 6.Author:Silang Q
3、uan 7.Version: 1.0 8.Date: 2012.12.20 9. *****************************************************************************/ 10.#ifndef PARTICLE_H ........1.#define PARTICLE_H 2.#include "vector3d.h" 3.typedef struct 4.{ 5. float r; 6. float g; 7. float b; 8. floa
4、t alpha; 9.}Color; 10. 11.typedef struct 12.{ 13. Vector3D position; 14. Vector3D velocity; 15. Vector3D acceleration; 16. Color color; 17. float age; 18. float life; 19. float size; 20.}Particle; 21. 22.#endif // PARTICLE_H [cpp] viewplaincopy
5、1./***************************************************************************** 2.Copyright: 2012, ustc All rights reserved. 3.contact:k283228391@126.com 4.File name: particle.h 5.Description:Partical in opengl. 6.Author:Silang Quan 7.Version: 1.0 8.Date: 2012.12.20 9. *********
6、********************************************************************/ 10.#ifndef PARTICLE_H 11.#define PARTICLE_H 12.#include "vector3d.h" 13.typedef struct 14.{ 15. float r; 16. float g; 17. float b; ........1. float alpha; 2.}Color; 3. 4.typedef struct
7、5.{ 6. Vector3D position; 7. Vector3D velocity; 8. Vector3D acceleration; 9. Color color; 10. float age; 11. float life; 12. float size; 13.}Particle; 14. 15.#endif // PARTICLE_H 我们用球体来模拟例子,所以size表示的就是球体的半径。接下来是粒子系统类(类名拼写错了*-*)[cpp] viewplaincopy1.
8、/***************************************
此文档下载收益归作者所有