System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机图形,具体而言,涉及一种凹痕效果渲染方法、装置、电子设备及计算机可读存储介质。
技术介绍
1、在计算机图形
,模拟物体表面在受到外力作用后的变形效果是提升视觉真实感的重要手段。现有技术中多采用复杂的着色器计算或依赖于硬件特性,这些方法虽然能够达到比较好的效果,但资源消耗高,计算成本高,不适合移动设备实时渲染的需求。
技术实现思路
1、本专利技术目的在于提供一种凹痕效果渲染方法、装置、电子设备及计算机可读存储介质,能够在资源消耗可控的前提下,以较低的计算成本实现逼真的凹痕效果。
2、本专利技术的实施例可以这样实现:
3、第一方面,本专利技术提供一种凹痕效果渲染方法,所述方法包括:
4、根据针对目标对象进行的撞击操作确定撞击位置;
5、确定与所述撞击位置相匹配的高度贴图和颜色贴图,所述高度贴图表征凹陷程度信息,所述颜色贴图表征处于凹陷状态的所述目标对象的颜色信息;
6、根据所述高度贴图和颜色贴图,对所述撞击位置进行凹痕效果渲染。
7、在可选的实施方式中,预先存储有多个预设贴图组,不同所述预设贴图组对应不同的预设距离范围,每一所述预设贴图组均包括在对应的预设距离范围内、且在虚拟摄像机视野内的高度贴图和颜色贴图,所述确定与所述撞击位置相匹配的高度贴图和颜色贴图的步骤包括:
8、计算所述撞击位置与所述虚拟摄像机之间的交互距离;
9、从所述多个预设贴图组中确定所述交互距离处
10、将所述目标预设贴图组中的高度贴图和颜色贴图分别作为与所述撞击位置相匹配的高度贴图和颜色贴图。
11、在可选的实施方式中,所述根据所述高度贴图和颜色贴图,对所述撞击位置进行凹痕效果渲染的步骤包括:
12、以所述撞击位置为中心点、以预设长度为边长,构建目标正方体;
13、根据预设深度贴图,确定所述目标正方体覆盖的屏幕区域中每一像素点在所述目标正方体的模型空间中的模型空间位置;
14、根据所述高度贴图及所述每一像素点的模型空间位置,确定所述每一像素点的采样位置;
15、根据所述每一像素点的采样位置,从所述颜色贴图中采样所述每一像素点的颜色信息;
16、根据所述每一像素点的颜色信息对每一所述像素点的模型空间位置处的颜色进行渲染,最终得到所述撞击位置的凹痕效果。
17、在可选的实施方式中,所述根据预设深度贴图,确定所述目标正方体覆盖的屏幕区域中每一像素点在所述目标正方体的模型空间中的模型空间位置的步骤包括:
18、对所述每一像素点的像素坐标进行归一化处理,得到所述每一像素点的归一化坐标;
19、根据所述每一像素点的归一化坐标从所述预设深度贴图中获取所述每一像素点的深度值;
20、根据所述每一像素点的归一化坐标及其深度值构建出所述每一像素点在预设标准空间中的标准空间位置;
21、根据所述每一像素点的标准空间位置及预设转换矩阵,计算所述每一像素点的模型空间位置,所述预设转换矩阵表征所述预设标准空间和所述目标正方体确定的模型空间之间的映射关系。
22、在可选的实施方式中,所述对所述每一像素点进行归一化处理,得到所述每一像素点的归一化坐标的步骤包括:
23、获取屏幕像素尺寸及所述每一像素点在所述目标正方体覆盖的屏幕区域中的像素位置;
24、根据所述每一像素点的像素位置及所述屏幕像素尺寸,计算所述每一像素点的归一化坐标。
25、在可选的实施方式中,所述根据所述高度贴图及所述每一像素点的模型空间位置,确定所述每一像素点的采样位置的步骤包括:
26、根据所述每一像素点的模型空间位置,确定所述每一像素点的原始采样位置;
27、根据所述每一像素点的模型空间位置及所述高度贴图,确定所述每一像素点的偏移量;
28、根据所述每一像素点的原始采样位置及偏移量,确定所述每一像素点的采样位置。
29、在可选的实施方式中,所述模型空间位置包括在模型空间坐标系中的x轴坐标和z轴坐标,所述模型空间坐标系以所述目标正方体的中心点为原点,以所述撞击操作的方向为y轴,所述根据所述每一像素点的模型空间位置,确定所述每一像素点的原始采样位置的步骤包括:
30、对于任一像素点,根据所述目标正方体的边长确定偏移单位;
31、分别将所述像素点的x轴坐标和z轴坐标偏移所述偏移单位,得到所述像素点的偏移x轴坐标和偏移z轴坐标;
32、根据所述像素点的偏移x轴坐标和偏移z轴坐标,确定所述像素点的原始采样位置。
33、第二方面,本专利技术提供一种凹痕效果渲染装置,所述装置包括:
34、确定模块,用于根据针对目标对象进行的撞击操作确定撞击位置;
35、所述确定模块,还用于确定与所述撞击位置相匹配的高度贴图和颜色贴图,所述高度贴图表征凹陷程度信息,所述颜色贴图表征处于凹陷状态的所述目标对象的颜色信息;
36、渲染模块,用于根据所述高度贴图和颜色贴图,对所述撞击位置进行凹痕效果渲染。
37、第三方面,本专利技术提供一种电子设备,包括处理器和存储器,所述存储器用于存储程序,所述处理器用于在执行所述程序时,实现如前述实施方式中任一项所述的凹痕效果渲染方法。
38、第四方面,本专利技术提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前述实施方式中任一项所述的凹痕效果渲染方法。
39、相对于现有技术而言,本专利技术具有以下有益效果:
40、本专利技术根据撞击位置确定与其相匹配的高度贴图和颜色贴图,根据高度贴图和颜色贴图,对撞击位置进行凹痕效果渲染,避免了复杂的着色器计算导致的资源消耗高、成本高,达到在资源消耗可控的前提下,以较低的计算成本实现逼真的凹痕效果。
本文档来自技高网...【技术保护点】
1.一种凹痕效果渲染方法,其特征在于,所述方法包括:
2.根据权利要求1所述的凹痕效果渲染方法,其特征在于,预先存储有多个预设贴图组,不同所述预设贴图组对应不同的预设距离范围,每一所述预设贴图组均包括在对应的预设距离范围内、且在虚拟摄像机视野内的高度贴图和颜色贴图,所述确定与所述撞击位置相匹配的高度贴图和颜色贴图的步骤包括:
3.根据权利要求1所述的凹痕效果渲染方法,其特征在于,所述根据所述高度贴图和颜色贴图,对所述撞击位置进行凹痕效果渲染的步骤包括:
4.根据权利要求3所述的凹痕效果渲染方法,其特征在于,所述根据预设深度贴图,确定所述目标正方体覆盖的屏幕区域中每一像素点在所述目标正方体的模型空间中的模型空间位置的步骤包括:
5.根据权利要求4所述的凹痕效果渲染方法,其特征在于,所述对所述每一像素点进行归一化处理,得到所述每一像素点的归一化坐标的步骤包括:
6.根据权利要求3所述的凹痕效果渲染方法,其特征在于,所述根据所述高度贴图及所述每一像素点的模型空间位置,确定所述每一像素点的采样位置的步骤包括:
7.根
8.一种凹痕效果渲染装置,其特征在于,所述装置包括:
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器用于存储程序,所述处理器用于在执行所述程序时,实现如权利要求1-7中任一项所述的凹痕效果渲染方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,该计算机程序被处理器执行时实现如权利要求1-7中任一项所述的凹痕效果渲染方法。
...【技术特征摘要】
1.一种凹痕效果渲染方法,其特征在于,所述方法包括:
2.根据权利要求1所述的凹痕效果渲染方法,其特征在于,预先存储有多个预设贴图组,不同所述预设贴图组对应不同的预设距离范围,每一所述预设贴图组均包括在对应的预设距离范围内、且在虚拟摄像机视野内的高度贴图和颜色贴图,所述确定与所述撞击位置相匹配的高度贴图和颜色贴图的步骤包括:
3.根据权利要求1所述的凹痕效果渲染方法,其特征在于,所述根据所述高度贴图和颜色贴图,对所述撞击位置进行凹痕效果渲染的步骤包括:
4.根据权利要求3所述的凹痕效果渲染方法,其特征在于,所述根据预设深度贴图,确定所述目标正方体覆盖的屏幕区域中每一像素点在所述目标正方体的模型空间中的模型空间位置的步骤包括:
5.根据权利要求4所述的凹痕效果渲染方法,其特征在于,所述对所述每一像素点进行归一化处理,得到所述每一像素点的归一化坐标的步骤包括:
...
【专利技术属性】
技术研发人员:王鹏,
申请(专利权)人:北京像素软件科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。