[发明专利]一种基于Unity3D的水体渲染实现系统及方法在审
| 申请号: | 202110025214.4 | 申请日: | 2021-01-08 |
| 公开(公告)号: | CN112734891A | 公开(公告)日: | 2021-04-30 |
| 发明(设计)人: | 郑连斌;潘州;杨国文;安笛;黄庆玉;郭萌;孙诗行;陈鹏飞;王兴龙 | 申请(专利权)人: | 中国船舶重工集团公司第七0七研究所 |
| 主分类号: | G06T15/00 | 分类号: | G06T15/00;G06T19/00 |
| 代理公司: | 天津盛理知识产权代理有限公司 12209 | 代理人: | 王雨晴 |
| 地址: | 300131 天*** | 国省代码: | 天津;12 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 unity3d 水体 渲染 实现 系统 方法 | ||
1.一种基于Unity3D的水体渲染实现系统,其特征在于:包括海水管理组件、投影网格管理组件、海浪生成组件、水面反射组件、水下环境模拟组件和浮力模拟组件;
所述海水管理组件用于管理其他组件,存储并处理全局范围的参数设置;
所述投影网格管理组件用于创建并管理仅在摄像机视锥体范围内渲染的海洋mesh;
所述海浪生成组件用于产生动态变化的波浪数据,并接收设置参数改变波浪产生形态;
所述水面反射组件用于模拟水面反射效果的实现,接收参数设置需要反射的Layer以及反射效果的改变;
所述水下环境模拟组件提供应用水下效果所需的深度和蒙板纹理,并能设置与水下光的吸收和散射相关参数;
所述浮力模拟组件用于模拟水上物体受到的浮力效果。
2.一种基于Unity3D的水体渲染实现方法,其特征在于:包括以下步骤:
步骤1、向Hierarchy窗格中插入一个摄像机,或者使用新建项目后原有摄像机;
步骤2、将包含各个组件的Ocean预制件拖动到场景中;
步骤3、海水管理组件初始化各参数并管理其他组件依次运行;
步骤4、待相机完成场景渲染后投影网格管理组件创建海水mesh;
步骤5、海浪生成组件使用快速傅里叶变换生成动态海浪;
步骤6、水面反射组件使用平面反射方法生成海洋对物体反射效果;
步骤7、水下环境模拟组件创建深度和蒙板纹理以模拟水下效果;
步骤8、浮力模拟组件计算水上漂浮物体所受浮力以模拟物体所受浮力效果。
3.根据权利要求2所述的一种基于Unity3D的水体渲染实现方法,其特征在于:所述步骤4的投影网格管理组件创建海水mesh包括以下步骤:
(1)获取屏幕宽和高;
(2)根据屏幕宽和高以及mesh分辨率参数计算得出mesh需划分的块数;
(3)逐块绘制mesh并将mesh加载到新建的海水物体上;
(4)为海水物体添加海水材质。
4.根据权利要求2所述的一种基于Unity3D的水体渲染实现方法,其特征在于:所述步骤5的具体步骤包括:
(1)初始化位移贴图数组、表面法线贴图数组和泡沫贴图数组;
(2)根据设定参数创建海浪频谱包括Phillips、Unified或两者混合的频谱;
(3)将海浪频谱结合正弦波叠加在频域中生成波形的分布;
(4)执行逆快速傅里叶变换将数据转到空间域;
(5)经过运算生成位移贴图数组;
(6)由位移贴图数组导出表面法线贴图数组和泡沫贴图数组;
(7)将生成的位移贴图数组、表面法线贴图数组和泡沫贴图数组分别赋值到当前海水材质所应用的着色器上完成海水物体的动态海浪效果的生成。
5.根据权利要求2所述的一种基于Unity3D的水体渲染实现方法,其特征在于:所述步骤6的具体步骤包括:
(1)创建反射相机,该相机作为场景相机在水面的投影相机始终保持与场景相机距离水面相同距离,由于该反射相机使用倾斜投影矩阵因此设置图层剔除模式为球形剔除,其他参数设置与场景相机相同;
(2)根据场景相机可见物体及设定的可反射层遮罩绘制需反射物体的渲染纹理;
(3)根据设定模糊程度、反射强度及各向异性修改模糊处理渲染纹理;
(4)将处理后的渲染纹理加载到反射相机上即可实现海洋反射效果。
6.根据权利要求2所述的一种基于Unity3D的水体渲染实现方法,其特征在于:所述步骤7的具体步骤包括:
(1)创建与场景相机相同位置相同配置的蒙板相机;
(2)根据设置的蒙板参数剔除不需渲染物体后绘制渲染纹理;
(3)将渲染纹理添加到深度相机完成蒙板纹理效果的绘制;
(4)创建与场景相机相同位置相同配置的深度相机;
(5)创建折射缓存器;
(6)计算各物体在水下折射效果值,绘制渲染纹理;
(7)将渲染纹理添加到深度相机完成深度效果的绘制。
7.根据权利要求2所述的一种基于Unity3D的水体渲染实现方法,其特征在于:所述步骤8的具体步骤包括:
(1)在需计算浮力的物体上挂载计算浮力组件;
(2)计算该物体质量、体积、表面积等属性;
(3)加载刚体组件,并将该物体质量赋值给刚体组件;
(4)根据物体浸没海水程度,逐帧计算物体所受浮力;
(5)向物体施加浮力。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国船舶重工集团公司第七0七研究所,未经中国船舶重工集团公司第七0七研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110025214.4/1.html,转载请声明来源钻瓜专利网。





