[发明专利]一种虚拟场景中的涟漪仿真方法及装置有效
申请号: | 202011120105.2 | 申请日: | 2020-10-19 |
公开(公告)号: | CN112221150B | 公开(公告)日: | 2023-01-10 |
发明(设计)人: | 覃健青;金晶;王雷;黄奕达 | 申请(专利权)人: | 珠海金山数字网络科技有限公司 |
主分类号: | A63F13/60 | 分类号: | A63F13/60;A63F13/525 |
代理公司: | 北京智信禾专利代理有限公司 11637 | 代理人: | 刘晓楠 |
地址: | 519000 广东省珠海市高新区唐家湾镇前岛环路325号102室*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 虚拟 场景 中的 涟漪 仿真 方法 装置 | ||
1.一种虚拟场景中的涟漪仿真方法,其特征在于,包括:
获取虚拟对象或跟随所述虚拟对象的虚拟摄像机在虚拟场景中的位置;
以所述虚拟对象或所述虚拟摄像机在虚拟场景中的位置为中心,在所述虚拟场景中创建涟漪生成区域,并在所述涟漪生成区域设置两个高度偏移图;
获取当前关键帧对应的上一关键帧的高度偏移数据;
根据当前关键帧对应的上一关键帧的高度偏移数据以及当前关键帧对应的力点偏移数据,计算出当前关键帧对应的高度偏移数据;
通过所述两个高度偏移图分别存储当前关键帧对应的力点偏移数据以及所述当前关键帧对应的上一关键帧的高度偏移数据,将两个高度偏移图进行混合,得到当前关键帧对应的高度偏移图并存储当前关键帧对应的高度偏移数据;
根据当前关键帧对应的高度偏移数据确定当前关键帧对应的法线图,并根据所述当前关键帧对应的高度偏移图和法线图共同作用于出涟漪效果的渲染;
重新将所述当前关键帧对应的下一关键帧确定为当前关键帧,返回执行所述获取当前关键帧对应的上一关键帧的高度偏移数据的步骤,不断渲染出涟漪效果,直至没有下一关键帧;
在所述虚拟对象或所述虚拟摄像机发生运动的情况下,控制所述涟漪生成区域跟随所述虚拟对象或所述虚拟摄像机进行翻转,从而在虚拟场景中不断更新和叠加所述涟漪生成区域。
2.根据权利要求1所述的方法,其特征在于,根据当前关键帧对应的上一关键帧的高度偏移数据以及当前关键帧对应的力点偏移数据,计算出当前关键帧对应的高度偏移数据之前,包括:
在所述涟漪生成区域中存在其他虚拟对象产生的至少一个力点的情况下,将当前关键帧中每个所述力点对应的偏移数据进行叠加,得到当前关键帧对应的力点偏移数据。
3.根据权利要求2所述的方法,其特征在于,重新将所述当前关键帧对应的下一关键帧确定为当前关键帧之前,还包括:
将当前关键帧对应的上一关键帧的高度偏移数据和当前关键帧对应的力点偏移数据,分别存储在其中一个高度偏移图的RG通道和BA通道中;
将当前关键帧对应的高度偏移数据存储在另一个高度偏移图的RG通道中;
重新将所述当前关键帧对应的下一关键帧确定为当前关键帧,获取当前关键帧对应的上一关键帧的高度偏移数据的步骤,包括:
在下一关键帧为当前关键帧的情况下,将存储在另一个高度偏移图的RG通道中当前关键帧对应的高度偏移数据,作为当前关键帧对应的上一关键帧的高度偏移数据。
4.根据权利要求1所述的方法,其特征在于,控制所述涟漪生成区域跟随所述虚拟对象或所述虚拟摄像机进行翻转,包括:
将所述涟漪生成区域划分为n×n个网格单元,其中,所述n为大于1的正整数;
在保持位于所述涟漪生成区域的中心区域的网格单元在翻转前后的两个关键帧的世界坐标维持不变的情况下,控制位于所述涟漪生成区域的边缘区域的网格单元跟随所述虚拟对象或所述虚拟摄像机进行翻转。
5.根据权利要求4所述的方法,其特征在于,保持位于所述涟漪生成区域的中心区域的网格单元在翻转前后的两个关键帧的世界坐标维持不变,包括:
为所述n×n个网格单元中的每个网格单元配置特征标识,并根据每个网格单元对应的特征标识生成所述n×n个网格单元对应的索引信息;
根据所述涟漪生成区域的翻转方向,通过所述索引信息确定在当前关键帧下位于所述涟漪生成区域的中心区域的网格单元以及位于所述涟漪生成区域的边缘区域的网格单元;
控制位于所述涟漪生成区域的边缘区域的网格单元按照索引信息的顺序进行翻转。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海金山数字网络科技有限公司,未经珠海金山数字网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011120105.2/1.html,转载请声明来源钻瓜专利网。