[发明专利]基于FFT数据预烘焙技术的海面生成方法有效
申请号: | 201910531924.7 | 申请日: | 2019-06-19 |
公开(公告)号: | CN110378958B | 公开(公告)日: | 2022-04-22 |
发明(设计)人: | 郑成俊;汪林翰 | 申请(专利权)人: | 北京巴别时代科技股份有限公司 |
主分类号: | G06T7/73 | 分类号: | G06T7/73;G06T7/42;G06F17/14 |
代理公司: | 威海佩敏专利代理事务所(普通合伙) 37284 | 代理人: | 宋益敏 |
地址: | 100086 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 fft 数据 烘焙 技术 海面 生成 方法 | ||
本发明提供了一种基于FFT数据预烘焙技术的海面生成方法,本发明通过将Butterfly算法的结果保存在纹理中,在运行中采样纹理获得连续动态的高度场数据,从而控制海面顶点起伏变化。本发明能够实现离线完成Butterfly算法的计算,用空间换时间的方法保证高效性和实时性。实现在移动端上性能可以接受的FFT海面效果。
技术领域
本发明涉及一种基于FFT(Fast Fourier Transformation,即为快速傅氏变换)数据预烘焙技术的海面生成方法。
背景技术
近年来实时渲染领域,海水起伏变化的几何模拟是较为复杂的。海水起伏变化具有随机性,不能用静态的几何多边形表示海水模型,每一帧都必须实时计算出海水的几何变化。海水起伏变化的物理规律十分复杂,由于硬件受限,实时计算中会采用近似的算法来模拟海水的运动规律。FFT是目前应用比较广泛的模拟海水运动的算法,但由于计算的复杂度,很难在效果和效率之间找到一个平衡点。
发明内容
本发明的目的在于提供一种基于FFT数据预烘焙技术的海面生成方法。
为解决上述问题,本发明提供一种基于FFT数据预烘焙技术的海面生成方法,包括:
使用实时计算Butterfly算法的水面波形生成器,生成FFT高度场数据,并在这个过程中将所述FFT高度场数据抽帧作为中间数据保存在纹理中;
在运行中采样所述纹理获得连续动态的FFT高度场数据,以驱动海水顶点的坐标变化。
进一步的,在上述方法中,所述纹理为LDR纹理。
进一步的,在上述方法中,所述LDR纹理保存的值域范围为[0,1]。
进一步的,在上述方法中,使用实时计算Butterfly算法的水面波形生成器,生成FFT高度场数据中,
所述高度场数据包括:海水每个点的高度Y方向的起伏、以及海水水平面上XZ两个方向的Chop偏移。
烘焙进一步的,在上述方法中,在这个过程中将所述FFT高度场数据按30FPS的帧率进行烘焙,获得64x64、128x128、256x256不同规格的序列帧纹理中,
以3秒一次循环,30FPS为标准,则生产序列帧90张序列帧纹理。
进一步的,在上述方法中,在运行中采样所述纹理获得连续动态的FFT高度场数据,以驱动海水顶点的坐标变化,包括:
将所述序列帧纹理按时序排列,运行时在Vertex Shader里根据时间从不同的序列帧纹理中采样,以获得连续动态的FFT高度场数据,驱动海水顶点的坐标变化。
与现有技术相比,本发明通过将Butterfly算法的结果保存在纹理中,在运行中采样纹理获得连续动态的高度场数据,从而控制海面顶点起伏变化。本发明能够实现离线完成Butterfly算法的计算,用空间换时间的方法保证高效性和实时性。实现在移动端上性能可以接受的FFT海面效果。
附图说明
图1是本发明一实施例的基于FFT数据预烘焙技术的海面生成方法的序列帧纹理效果图;
图2是本发明一实施例的生成的海面效果图;
图3为本发明一实施例的基于FFT数据预烘焙技术的海面生成方法的流程图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京巴别时代科技股份有限公司,未经北京巴别时代科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910531924.7/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置