[发明专利]一种粒子系统中粒子顶点数据的更新方法有效
申请号: | 201510143517.0 | 申请日: | 2015-03-31 |
公开(公告)号: | CN104700446B | 公开(公告)日: | 2017-10-03 |
发明(设计)人: | 李启虎 | 申请(专利权)人: | 境界游戏股份有限公司 |
主分类号: | G06T15/00 | 分类号: | G06T15/00 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100080 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 粒子 系统 顶点 数据 更新 方法 | ||
技术领域
本发明属于计算机图形技术领域,具体涉及一种粒子系统中粒子顶点数据的更新方法。
背景技术
粒子系统是三维计算机图形学中模拟一些特定的不规则模糊景象的技术,而这些景象用其它传统的渲染技术难以实现的真实感。在粒子系统中,景象被定义为由成千上万个不规则的、随机分布的粒子所组成,而每一个粒子均有一定的生命周期,它们不断改变形状、不断运动,充分地体现了不规则物体的性质。经常使用粒子系统模拟的现象有火、爆炸、烟、水流、火花、溅血、落叶、云、雾、雪、尘、流星尾迹或者发光轨迹这样的抽象视觉效果等等。粒子系统方法具有良好的随机性和动态性,能逼真地模拟动态景物。因此,利用粒子系统方法模拟自然景物,有着重要的科学意义和广泛的应用前景,在系统仿真、影视特效、三维游戏中有广泛的应用。
粒子系统更新循环划分为两个不同的阶段:参数更新/模拟阶段以及渲染阶段。参数更新/模拟阶段根据粒子系统信息更新每个粒子的位置等属性信息;渲染阶段根据粒子属性重新绘制粒子。拖尾效果(如流星、刀光剑影等效果的制作)作为粒子系统中最重要的一种渲染器被大量应用到各种场景中。现有技术中,拖尾效果的每次绘制都需要在中央处理器CPU上对所有粒子的历史信息进行更新,然后把所有的信息提交到显卡,在图像处理器GPU对更新后的粒子进行渲染,完成拖尾效果的绘制,而大量的数据更新及资源锁定操作会大大影响CPU的性能。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种粒子系统中粒子顶点数据的更新方法,通过该方法能够有效降低粒子顶点数据更新的复杂度,提高数据更新效率。
为实现上述目的,本发明采用的技术方案如下:
一种粒子系统中粒子顶点数据的更新方法,包括以下步骤:
(1)确定当前粒子系统中所需的粒子的相关参数,所述相关参数包括所需的粒子数量、粒子类型、粒子宽度、粒子的绘制段数以及渲染阶段所需的贴图;所述粒子类型为三角形,在渲染阶段采用四边形进行渲染;
(2)根据所述相关参数进行粒子系统的初始化,包括:生成所述粒子数量的粒子,确定粒子的顶点数据的存储方式;所述粒子的顶点数据包括粒子的每一段的顶点数据;所述粒子的每一段的顶点数据包括顶点变化数据VB1和顶点固定数据VB2,顶点变化数据VB1包括顶点位置坐标和顶点朝向,顶点固定数据VB2为顶点纹理坐标UV;
粒子的顶点变化数据VB1的存储方式为:按照粒子的段数顺序存储每个粒子每一段的顶点变化数据VB1,且每一段的顶点变化数据VB1连续存储两次,并按照存储顺序设置每一个数据的索引;
假设粒子数量为m、粒子的绘制段数为n,则粒子的顶点变化数据VB1存储为:
其中,Vmn-1和Vmn分别表示第m个粒子第n段的起始的顶点变化数据和结束的顶点变化数据;
粒子的顶点固定数据VB2的存储方式为:按照粒子的段数顺序存储每个粒子每一段的顶点固定数据,完成一次存储后,按照粒子的段数再次顺序存储每个粒子每一段的顶点固定数据;存储完成后,按照存储顺序设置每一个数据的索引;
(3)确定需要更新的粒子的顶点数据的范围,包括:确定需要更新的顶点变化数据VB1和更新时的顶点固定数据VB2;其中,顶点朝向为当前顶点位置坐标到更新后的顶点位置坐标的方向;
确定需要更新的顶点位置坐标的方式为:根据粒子的顶点位置坐标的存储方式和此次粒子更新的次数,得到粒子此次需要更新的顶点位置坐标的索引范围A,索引范围A对应的顶点位置坐标为此次需要更新的顶点位置坐标;
确定更新时的顶点固定坐标VB2的方式为:根据粒子的顶点固定数据VB2的存储方式和此次粒子更新的次数,确定出更新时的顶点固定数据VB2;
(4)根据粒子当前的顶点位置坐标、此次更新后的顶点位置坐标、粒子宽度和确定出的需要更新的顶点变化数据VB1进行顶点变化数据VB1的更新,并根据确定出的更新时的顶点固定数据VB2进行此次更新时的顶点固定数据VB2的更新;
(5)按照粒子的顺序合并更新后的顶点变化数据VB1和更新时的顶点固定数据VB2,得到更新后的粒子的顶点数据。
可选地,如上所述的一种粒子系统中粒子顶点数据的更新方法,步骤(3)中,所述得到粒子此次需要更新的顶点位置坐标的索引范围A,包括:
假设粒子数量为m、粒子的绘制段数为n,记i为每次更新时的顶点变化数据的起始位置即起始索引,索引范围A的方式为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于境界游戏股份有限公司,未经境界游戏股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510143517.0/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置