本发明涉及电子游戏,具体而言,涉及一种地平线弯曲特效实现方法、装置、电子设备和存储介质。
背景技术:
1、在电子游戏场景中,高空观察地形时,地平线边缘呈现类球状弯曲效果对游戏的沉浸感有非常重要的作用。
2、现有技术中通常是基于球形地形系统实现地平线边际弯曲效果,即将地形网格弯曲贴合于球面,出于地形网格带来的性能负担考虑,地平线边际通常使用球状网格模型,实现地平线边缘弯曲效果。但是该技术由于模拟真实球状地形,重力方向朝向球心,朝上方向不同于普通游戏场景中的+y轴,增大了游戏的物理模拟系统和逻辑处理的复杂度,极大地影响了地平线弯曲特效的实现效率。
技术实现思路
1、本发明的目的在于提供了一种地平线弯曲特效实现方法、装置、电子设备和存储介质,其能够提高地平线弯曲特效的实现效率。
2、本发明的实施例可以这样实现:
3、第一方面,本发明提供一种地平线弯曲特效实现方法,方法包括:
4、获取包含地平线的游戏画面中的每一待渲染点;
5、基于预设参考位置及每一待渲染点的位置,从所有待渲染点中确定每一待渲染点的采样点,预设参考位置是根据地平线在相机坐标系中的地平线平面的法向量及相机的视角确定的;
6、根据每一待渲染点的采样点的像素值,对每一待渲染点进行渲染,得到包括地平线的弯曲效果的游戏画面。
7、在可选的实施方式中,每一待渲染点的位置包括在屏幕纹理坐标系中的v轴坐标和u轴坐标,基于预设参考位置及每一待渲染点的位置,从所有待渲染点中确定每一待渲染点的采样点的步骤包括:
8、将预设参考位置映射在屏幕纹理坐标系的值域范围内,得到映射值;
9、根据映射值及每一待渲染点的v轴坐标,确定每一待渲染点的初始偏移值;
10、根据每一待渲染点的u轴坐标,确定每一待渲染点的插值因数;
11、使用插值因数,对每一待渲染点的v轴坐标与其初始偏移值进行插值计算,确定每一待渲染点的最终偏移值;
12、将所有待渲染点中与每一待渲染点的位置距离为该待渲染点的最终偏移值的待渲染点确定为每一待渲染点的采样点。
13、在可选的实施方式中,将预设参考位置映射在屏幕纹理坐标系的值域范围内,得到映射值的步骤包括:
14、计算预设参考位置映射在屏幕纹理坐标系的值域范围内的初始映射值;
15、若初始映射值在第一预设范围内,则将初始映射值重新映射在第二预设范围内,得到映射值,第一预设范围表征与值域范围的最大值之间的距离小于预设距离,第一预设范围和第二预设范围不存在交集且第一预设范围和第二预设范围的并集为屏幕纹理坐标系的值域范围;
16、若初始映射值未在第一预设范围内,则将初始映射值作为映射值。
17、在可选的实施方式中,根据映射值及每一待渲染点的v轴坐标,确定每一待渲染点的初始偏移值的步骤包括:
18、根据映射值及每一待渲染点的v轴坐标,利用公式确定每一待渲染点的初始偏移值,其中,f为每一待渲染点的初始偏移值,a、c为预设常数,e_y为映射值,y为每一待渲染点的v轴坐标。
19、在可选的实施方式中,根据每一待渲染点的u轴坐标,确定每一待渲染点的插值因数的步骤包括:
20、根据每一待渲染点的u轴坐标,利用公式g=((x-0.5)*2)2确定每一待渲染点的插值因数,g为每一待渲染点的插值因数,x为每一待渲染点的u轴坐标。
21、在可选的实施方式中,方法还包括:
22、根据视角、法向量在相机坐标系的y轴分向量及在相机坐标系的z轴的分向量,计算地平线平面投影至相机坐标系的y轴的投影坐标,并将投影坐标作为预设参考位置。
23、在可选的实施方式中,根据视角、法向量在相机坐标系的y轴分向量及在相机坐标系的z轴的分向量,计算地平线平面投影至相机坐标系的y轴的投影坐标的步骤包括:
24、根据视角、法向量在相机坐标系的y轴分向量及在相机坐标系的z轴的分向量,利用公式ey=clamp((pn_d.z/pn_d.y/tan(fov/2)),0,1)计算地平线平面投影至相机坐标系的y轴的投影坐标,其中,ey为地平线平面投影至相机坐标系的y轴的投影坐标,pn_d.y为法向量在相机坐标系的y轴分向量,pn_d.z为法向量在相机坐标系的z轴的分向量,tan为正切函数,fov为视角,clamp为截断函数。
25、第二方面,本发明提供一种地平线弯曲特效实现装置,装置包括:
26、获取模块,用于获取包含地平线的游戏画面中的每一待渲染点;
27、确定模块,用于基于预设参考位置及每一待渲染点的位置,从所有待渲染点中确定每一待渲染点的采样点,预设参考位置是根据地平线在相机坐标系中的地平线平面的法向量及相机的视角确定的;
28、渲染模块,用于根据每一待渲染点的采样点的像素值,对每一待渲染点进行渲染,得到包括地平线的弯曲效果的游戏画面。
29、第三方面,本发明提供一种电子设备,包括处理器和存储器,存储器用于存储程序,处理器用于在执行程序时,实现前述实施方式中第一方面的地平线弯曲特效实现方法。
30、第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前述实施方式中第一方面的地平线弯曲特效实现方法。
31、与现有技术相比,本发明实施例根据地平线在相机坐标系中的地平线平面的法向量及相机的视角确定的预设参考位置及每一待渲染点的位置,从所有待渲染点中确定每一待渲染点的采样点,根据每一待渲染点的采样点的像素值,对每一待渲染点进行渲染,得到包括地平线的弯曲效果的游戏画面,由于避免使用球状网格模型,大大简化了实现地平线弯曲效果的处理复杂度,提高了地平线弯曲特效的实现效率。
1.一种地平线弯曲特效实现方法,其特征在于,所述方法包括:
2.如权利要求1所述的地平线弯曲特效实现方法,其特征在于,所述每一待渲染点的位置包括在屏幕纹理坐标系中的v轴坐标和u轴坐标,所述基于预设参考位置及所述每一待渲染点的位置,从所有所述待渲染点中确定所述每一待渲染点的采样点的步骤包括:
3.如权利要求2所述的地平线弯曲特效实现方法,其特征在于,所述将所述预设参考位置映射在所述屏幕纹理坐标系的值域范围内,得到映射值的步骤包括:
4.如权利要求2所述的地平线弯曲特效实现方法,其特征在于,所述根据所述映射值及所述每一待渲染点的v轴坐标,确定所述每一待渲染点的初始偏移值的步骤包括:
5.如权利要求2所述的地平线弯曲特效实现方法,其特征在于,所述根据所述每一待渲染点的u轴坐标,确定所述每一待渲染点的插值因数的步骤包括:
6.如权利要求1所述的地平线弯曲特效实现方法,其特征在于,所述方法还包括:
7.如权利要求6所述的地平线弯曲特效实现方法,其特征在于,所述根据所述视角、所述法向量在所述相机坐标系的y轴分向量及在所述相机坐标系的z轴的分向量,计算所述地平线平面投影至所述相机坐标系的y轴的投影坐标的步骤包括:
8.一种地平线弯曲特效实现装置,其特征在于,所述装置包括:
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器用于存储程序,所述处理器用于在执行所述程序时,实现权利要求1-7中任一项所述的地平线弯曲特效实现方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,该计算机程序被处理器执行时实现如权利要求1-7中任一项所述的地平线弯曲特效实现方法。