logo好方法网

虚拟流体表面的渲染方法、装置、设备及存储介质


技术摘要:
本申请提供一种虚拟流体表面的渲染方法、装置、设备及存储介质,涉及场景渲染技术领域。该方法包括确定待渲染的虚拟流体表面的投影网格中每个子网格对应的参考点;根据透视空间中所述参考点的位置,确定所述参考点在世界空间的投影点的位置;根据所述投影点的位置和虚  全部
背景技术:
随着互联网技术的发展,游戏发展迅速,各种游戏充斥在人们的生活中,玩家对于 游戏场景的要求越来越高,如何让玩家在游戏过程中找到身临其境的感觉,是游戏场景设 计者需要解决的问题。 关于游戏中大面积的虚拟流体表面的渲染,例如:关于海平面的渲染,一般是通过 投射网格技术,将透视空间转换至世界空间,从而构成海平面模型,并且投射网格技术只需 要一个模型资源,没有LOD切换时的突变,并且由于模型均处于摄像机范围内,所以基本没 有无效绘制。 但是这样的渲染方式会造成不必要的性能下降。
技术实现要素:
本申请的目的在于,针对上述现有技术中的不足,提供一种虚拟流体表面的渲染 方法、装置、设备及存储介质,以解决现有技术中渲染方式会造成不必要的性能下降的问 题。 为实现上述目的,本申请实施例采用的技术方案如下: 第一方面,本申请一实施例提供了一种虚拟流体表面的渲染方法,所述方法包括: 确定待渲染的虚拟流体表面的投影网格中每个子网格对应的参考点,其中,所述 投影网格为所述虚拟流体表面在虚拟投射器的透视空间形成的网格; 根据透视空间中所述参考点的位置,确定所述参考点在世界空间的投影点的位 置; 根据所述投影点的位置和虚拟摄像机的位置,确定所述投影点与所述虚拟摄像机 之间的距离,其中,所述虚拟摄像机为用于确定游戏画面的摄像机; 根据所述距离确定对所述虚拟流体表面上所述每个子网格对应的渲染参数。 可选地,所述根据透视空间中所述参考点的位置,采用预设的变换矩阵,确定所述 参考点在世界空间的投影点之前,所述方法还包括: 确定所述虚拟摄像机的视景体在世界空间中的预设基准高度的所述虚拟流体表 面上的投射点; 将所述投射点变换到所述透视空间,得到所述透视空间的投射点; 根据所述透视空间的投射点在所述透视空间的坐标轴上的距离,构建缩放矩阵; 其中,所述透视空间的坐标轴包括:所述虚拟投射器的投射方向,和所述投射方向的垂直方 向; 根据所述虚拟投射器的透视矩阵的逆矩阵,以及所述缩放矩阵,确定所述变换矩 4 CN 111598986 A 说 明 书 2/11 页 阵。 可选地,所述确定所述虚拟摄像机的视景体在预设基准高度的所述虚拟流体表面 上的投射点,包括: 分别确定所述视景体的边缘线段,与第一预设高度和第二预设高度的所述虚拟流 体表面上的第一交点和第二交点;其中,所述第一预设高度高于所述预设基准高度,所述第 二预设高度低于所述预设基准高度; 将所述第一交点和所述第二交点均投射到所述预设基准高度的所述虚拟流体表 面上,得到所述视景体在所述预设基准高度的所述虚拟流体表面上的投射点。 可选地,所述根据所述透视空间的投射点在所述透视空间的坐标轴上的距离,构 建缩放矩阵包括: 根据所述透视空间的投射点在所述透视空间的坐标轴上的最大距离和最小距离, 构建所述缩放矩阵。 可选地,所述根据所述透视空间的投射点在所述透视空间的坐标轴上的最大距离 和最小距离,构建所述缩放矩阵,包括: 将所述最大距离和所述最小距离,转换为预设范围内的距离值; 根据转换后的所述预设范围内的距离值,构建所述缩放矩阵。 可选地,所述根据透视空间中所述参考点的位置,采用预设的变换矩阵,确定所述 参考点在世界空间的投影点,包括: 根据透视空间中所述参考点的位置,采用所述变换矩阵,确定世界空间中所述参 考点的位置; 确定世界空间中所述参考点的位置,与所述虚拟摄像机位置之间的射线; 确定所述射线与所述虚拟流体表面的交点为所述参考点在世界空间的投影点。 可选地,所述根据所述距离,对所述虚拟流体表面上所述每个子网格对应区域进 行渲染,包括: 根据所述距离,确定所述每个子网格的多细节层级LOD; 采用所述每个子网格的LOD对应的着色器,对所述每个子网格对应区域进行渲染。 可选地,所述采用所述每个子网格的LOD对应的着色器,对所述每个子网格对应区 域进行渲染之前,所述方法还包括: 根据最大波动距离,以及所述每个子网格中各像素点与所述虚拟摄像机之间的实 际距离,确定所述各像素点的缩放系数; 根据所述缩放系数,以及预设波动位移,确定所述各像素点对应的波动位移; 所述采用所述每个子网格的LOD对应的着色器,对所述每个子网格对应区域进行 渲染,包括: 根据所述各像素点对应的波动位移,采用所述每个子网格的LOD对应的着色器,对 所述每个子网格对应区域进行渲染。 可选地,所述确定待渲染的虚拟流体表面的投影网格中每个子网格内的参考点包 括: 确定所述每个子网格中下半部分的中点为所述参考点,所述下半部分为所述虚拟 流体表面以下的部分。 5 CN 111598986 A 说 明 书 3/11 页 第二方面,本申请另一实施例提供了一种虚拟流体表面的渲染装置,所述装置包 括:确定模块和渲染模块,其中: 所述确定模块,用于确定待渲染的虚拟流体表面的投影网格中每个子网格对应的 参考点,其中,所述投影网格为所述虚拟流体表面在虚拟投射器的透视空间形成的网格; 所述确定模块,还用于根据透视空间中所述参考点的位置,确定所述参考点在世 界空间的投影点; 所述确定模块,还用于根据所述投影点的位置和虚拟摄像机的位置,确定所述投 影点与所述虚拟摄像机的位置之间的距离,其中,所述虚拟摄像机为用于确定游戏画面的 摄像机; 所述渲染模块,用于根据所述距离确定对所述虚拟流体表面上所述每个子网格对 应的渲染参数。 可选地,所述装置还包括:变换模块和构建模块,其中: 所述确定模块,还用于确定所述虚拟摄像机的视景体在世界空间中的预设基准高 度的所述虚拟流体表面上的投射点; 所述变换模块,用于将所述投射点变换到所述透视空间,得到所述透视空间的投 射点; 所述构建模块,用于根据所述透视空间的投射点在所述透视空间的坐标轴上的距 离,构建缩放矩阵;其中,所述透视空间的坐标轴包括:所述虚拟投射器的投射方向,和所述 投射方向的垂直方向; 所述确定模块,还用于根据所述虚拟投射器的透视矩阵的逆矩阵,以及所述缩放 矩阵,确定所述变换矩阵。 可选地,所述确定模块,还用于分别确定所述视景体的边缘线段,与第一预设高度 和第二预设高度的所述虚拟流体表面上的第一交点和第二交点;其中,所述第一预设高度 高于所述预设基准高度,所述第二预设高度低于所述预设基准高度; 将所述第一交点和所述第二交点均投射到所述预设基准高度的所述虚拟流体表 面上,得到所述视景体在所述预设基准高度的所述虚拟流体表面上的投射点。 可选地,所述构建模块,还用于根据所述透视空间的投射点在所述透视空间的坐 标轴上的最大距离和最小距离,构建所述缩放矩阵。 可选地,所述构建模块,还用于将所述最大距离和所述最小距离,转换为预设范围 内的距离值;根据转换后的所述预设范围内的距离值,构建所述缩放矩阵。 可选地,所述确定模块,还用于根据透视空间中所述参考点的位置,采用所述变换 矩阵,确定世界空间中所述参考点的位置; 所述确定模块,还用于确定世界空间中所述参考点的位置,与所述虚拟摄像机位 置之间的射线; 所述确定模块,还用于确定所述射线与所述虚拟流体表面的交点为所述参考点在 世界空间的投影点。 可选地,所述确定模块,还用于根据所述距离,确定所述每个子网格的多细节层级 LOD; 所述渲染模块,还用于采用所述每个子网格的LOD对应的着色器,对所述每个子网 6 CN 111598986 A 说 明 书 4/11 页 格对应区域进行渲染。 可选地,所述确定模块,还用于根据最大波动距离,以及所述每个子网格中各像素 点与所述虚拟摄像机之间的实际距离,确定所述各像素点的缩放系数; 确定模块,还用于根据所述缩放系数,以及预设波动位移,确定所述各像素点对应 的波动位移; 所述渲染模块,还用于根据所述各像素点对应的波动位移,采用所述每个子网格 的LOD对应的着色器,对所述每个子网格对应区域进行渲染。 可选地,所述确定模块,还用于确定所述每个子网格中下半部分的中点为所述参 考点,所述下半部分为所述虚拟流体表面以下的部分。 第三方面,本申请另一实施例提供了一种虚拟流体表面的渲染设备,包括:处理 器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当虚拟流体 表面的渲染设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行 所述机器可读指令,以执行如上述第一方面任一所述方法的步骤。 第四方面,本申请另一实施例提供了一种存储介质,所述存储介质上存储有计算 机程序,所述计算机程序被处理器运行时执行如上述第一方面任一所述方法的步骤。 本申请的有益效果是:采用本申请提供的虚拟流体表面的渲染方法,确定待渲染 的虚拟流体表面的投影网格中每个子网格内的参考点后,根据透视空间中参考点的位置, 采用预设的变换矩阵,确定参考点在世界空间的投影点,并确定参考点世界空间中投影点 和虚拟摄像机之间的距离,随后根据距离对虚拟流体表面上每个子网格对应区域进行渲 染。该方法中,基于每个子网格内的参考点在世界空间内的投影点,以及虚拟摄像机之间的 距离,对虚拟流体表面上该每个子网格对应的区域进行渲染,不同子网格的参考点在世界 空间的投影点不同,那么其与虚拟摄像机之间的距离便不同,即对虚拟流体表面不同子网 格对应区域进行渲染所采用的渲染方法不同的,如此,便可避免针对虚拟流体表面的每一 处均进行相同的渲染,可有效避免较远距离的位置进行渲染导致的像素填充压力,从而有 效避免不必要的性能下降。 附图说明 为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附 图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对 范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这 些附图获得其他相关的附图。 图1为本申请一实施例提供的虚拟流体表面的渲染方法的流程示意图; 图2为本申请另一实施例提供的虚拟流体表面的渲染方法的流程示意图; 图3为缩放矩阵的生成步骤的示意图; 图4为本申请另一实施例提供的虚拟流体表面的渲染方法的流程示意图; 图5为本申请另一实施例提供的虚拟流体表面的渲染方法的流程示意图; 图6为本申请另一实施例提供的虚拟流体表面的渲染方法的流程示意图; 图7为本申请一实施例提供的虚拟流体表面的渲染装置的结构示意图; 图8为本申请另一实施例提供的虚拟流体表面的渲染装置的结构示意图; 7 CN 111598986 A 说 明 书 5/11 页 图9为本申请一实施例提供的虚拟流体表面的渲染设备的结构示意图。
分享到:
收藏