一种基于Cesium三维渲染引擎的积雪效果生成方法技术

技术编号:35172903 阅读:54 留言:0更新日期:2022-10-12 17:38
本发明专利技术公开了一种基于Cesium三维渲染引擎的积雪效果生成方法,涉及图像渲染的技术领域,具体包括如下步骤:首先对模型的纹理图进行采样,获取纹理图中每个纹理坐标点的纹理坐标向量;然后将纹理坐标向量转换到相机空间中,并根据转换结果判断是否进行积雪覆盖渲染;最后根据判断结果,对需要进行积雪覆盖渲染的纹理坐标点进行积雪渲染,并将渲染结果与纹理图进行融合,达到最终渲染效果;本发明专利技术,能依据积雪厚度生成相应的积雪效果,覆盖环境中的物体,在植物建筑的覆盖方面有较高的逼真度,并且可以指定具体的覆盖目标,达到精确覆盖目标区域及物体的效果。盖目标区域及物体的效果。盖目标区域及物体的效果。

【技术实现步骤摘要】
一种基于Cesium三维渲染引擎的积雪效果生成方法


[0001]本专利技术涉及图像渲染的
,具体涉及一种基于Cesium三维渲染引擎的积雪效果生成方法。

技术介绍

[0002]现有的三维渲染引擎主要致力于地理信息的渲染,在基于地理信息的环境仿真方面研究较少,仅支持简单的基于粒子系统的天气效果,逼真度较差;然而在游戏引擎中,关于积雪的渲染效果有较高的逼真度,并能高度还原真实世界的积雪场景;然而基于地理信息的三维渲染引擎,在场景积雪渲染方面几乎没有涉及。
[0003]Cesium是一个基于JavaScript编写的使用WebGL的地图引擎,能基于遥感影像实现三维地理信息的渲染,然而在场景积雪渲染方面,Cesium框架没有完善的仿真系统,只有简单的基于粒子系统的下雪效果,而且效果逼真度很低,对积雪环境的仿真效果没有涉及。

技术实现思路

[0004]本专利技术的目的在于:针对目前Cesium是一个基于JavaScript编写的使用WebGL的地图引擎,能基于遥感影像实现三维地理信息的渲染,然而在场景积雪渲染方面,Cesium框架没有完善的仿真系统,只有简单的基于粒子系统的下雪效果,而且效果逼真度很低,对积雪环境的仿真效果没有涉及的问题,提出了一种基于Cesium三维渲染引擎的积雪效果生成方法,能依据积雪厚度生成相应的积雪效果,覆盖环境中的物体,在植物建筑的覆盖方面有较高的逼真度,解决了上述问题。
[0005]本专利技术的技术方案如下:
[0006]一种基于Cesium三维渲染引擎的积雪效果生成方法,包括如下步骤:
[0007]步骤S1:对模型的纹理图进行采样,获取纹理图中每个纹理坐标点的纹理坐标向量;
[0008]步骤S2:将纹理坐标向量转换到相机空间中,并根据转换结果判断是否进行积雪覆盖渲染;
[0009]步骤S3:根据判断结果,对需要进行积雪覆盖渲染的纹理坐标点进行积雪渲染,并将渲染结果与纹理图进行融合,达到最终渲染效果。
[0010]进一步地,所述模型为:Cesium现有着色模型。
[0011]进一步地,所述模型为:基于Cesium接口加载的地理影象高程数据绘制的场景模型。
[0012]进一步地,所述步骤S1,包括:
[0013]步骤S11:通过采样函数Texture2D对彩色纹理图和深度纹理图进行采样,获取每个纹理坐标点的彩色向量和深度向量;
[0014]步骤S12:对深度向量进行解析,得到每个纹理坐标点的深度值depth。
[0015]进一步地,所述步骤S2,包括:
[0016]步骤S21:通过深度值depth将纹理坐标点转换到相机空间中,得到纹理坐标点在相机空间坐标系下的坐标向量posEC;
[0017]步骤S22:采用纹理图视图转置矩阵inverseView乘以坐标向量posEC得到纹理坐标点在模型坐标系或场景坐标系中的位置坐标向量posWC;
[0018]步骤S23:利用位置坐标向量posWC计算纹理坐标点在场景坐标系中的法向量normalWC;通过法向量normalWC与位置坐标向量posWC的坐标分量posWC.xyz的点乘结果计算纹理坐标点的朝向角度;
[0019]步骤S24:根据朝向角度判断是否需要进行积雪覆盖渲染。
[0020]进一步地,所述步骤S24,包括:
[0021]朝向角度的取值范围为0
°
至90
°

[0022]是否进行积雪覆盖渲染与朝向角度为正相关;当朝向角度为90
°
,进行积雪覆盖渲染,其他朝向角度不进行积雪覆盖渲染。
[0023]进一步地,所述步骤S3,包括:
[0024]步骤S31:根据积雪厚度计算需要进行积雪覆盖渲染的纹理坐标点的白色比例值;
[0025]步骤S32:对彩色向量进行解析,得到每个纹理坐标点的原颜色值;
[0026]步骤S33:将需要进行积雪覆盖渲染的纹理坐标点的白色比例值与每个纹理坐标点的原颜色值进行融合达到了最终的渲染效果。
[0027]进一步地,所述步骤S33,包括:
[0028]将需要进行积雪覆盖渲染的纹理坐标点的白色比例值与其原颜色值按比例进行融合得到待渲染颜色值;
[0029]不需要进行积雪覆盖渲染的纹理坐标点采用其原颜色值作为待渲染颜色值;
[0030]着色器按照需要进行积雪覆盖渲染的纹理坐标点的待渲染颜色值和不需要进行积雪覆盖渲染的纹理坐标点待渲染颜色值进行最终渲染。
[0031]进一步地,所述融合得到待渲染颜色值,包括:
[0032]Vec4(1.0,1.0,1.0,1.0)*alpha+color*(1-alpha)=color

[0033]其中:
[0034]Vec4(1.0,1.0,1.0,1.0)为着色器中白色的颜色值;
[0035]alpha为着色器中预设的比例值,alpha的取值范围为0

1,积雪越厚alpha越接近1;
[0036]color为纹理坐标点的原颜色值;
[0037]color

为纹理坐标点的待渲染颜色值。
[0038]与现有的技术相比本专利技术的有益效果是:
[0039]一种基于Cesium三维渲染引擎的积雪效果生成方法,包括如下步骤:步骤S1:对模型的纹理图进行采样,获取纹理图中每个纹理坐标点的纹理坐标向量;步骤S2:将纹理坐标向量转换到相机空间中,并根据转换结果判断是否进行积雪覆盖渲染;步骤S3:根据判断结果,对需要进行积雪覆盖渲染的纹理坐标点进行积雪渲染,并将渲染结果与纹理图进行融合,达到最终渲染效果;其能依据积雪厚度生成相应的积雪效果,覆盖环境中的物体,在植物建筑的覆盖方面有较高的逼真度,并且可以指定具体的覆盖目标,达到精确覆盖目标区域及物体的效果。
附图说明
[0040]图1为一种基于Cesium三维渲染引擎的积雪效果生成方法的流程图;
[0041]图2为一种基于Cesium三维渲染引擎的积雪效果生成方法的渲染前后对比图。
具体实施方式
[0042]需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0043]下面结合实施例对本专利技术的特征和性能作进一步的详细描述。
[0044]实施例一
[0本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Cesium三维渲染引擎的积雪效果生成方法,其特征在于,包括如下步骤:步骤S1:对模型的纹理图进行采样,获取纹理图中每个纹理坐标点的纹理坐标向量;步骤S2:将纹理坐标向量转换到相机空间中,并根据转换结果判断是否进行积雪覆盖渲染;步骤S3:根据判断结果,对需要进行积雪覆盖渲染的纹理坐标点进行积雪渲染,并将渲染结果与纹理图进行融合,达到最终渲染效果。2.根据权利要求1所述的一种基于Cesium三维渲染引擎的积雪效果生成方法,其特征在于,所述模型为:Cesium现有着色模型。3.根据权利要求1所述的一种基于Cesium三维渲染引擎的积雪效果生成方法,其特征在于,所述模型为:基于Cesium接口加载的地理影象高程数据绘制的场景模型。4.根据权利要求2或3所述的一种基于Cesium三维渲染引擎的积雪效果生成方法,其特征在于,所述步骤S1,包括:步骤S11:通过采样函数Texture2D对彩色纹理图和深度纹理图进行采样,获取每个纹理坐标点的彩色向量和深度向量;步骤S12:对深度向量进行解析,得到每个纹理坐标点的深度值depth。5.根据权利要求4所述的一种基于Cesium三维渲染引擎的积雪效果生成方法,其特征在于,所述步骤S2,包括:步骤S21:通过深度值depth将纹理坐标点转换到相机空间中,得到纹理坐标点在相机空间坐标系下的坐标向量posEC;步骤S22:采用纹理图视图转置矩阵inverseView乘以坐标向量posEC得到纹理坐标点在模型坐标系或场景坐标系中的位置坐标向量posWC;步骤S23:利用位置坐标向量posWC计算纹理坐标点在场景坐标系中的法向量normalWC;通过法向量normalWC与位置坐标向量posWC的坐标分量posWC.xyz的点乘结果计算纹理坐标点的朝向角度;步骤S24:根据朝向角度判断是否需要进行积雪覆盖渲染。6.根据权利要求5所述的一种基于Cesi...

【专利技术属性】
技术研发人员:陈世国李阳史径丞田刚鹏薛瑞文黑圆圆
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1