CN117398686A - 游戏中的岩浆渲染方法、装置、存储介质与电子设备 - Google Patents
游戏中的岩浆渲染方法、装置、存储介质与电子设备 Download PDFInfo
- Publication number
- CN117398686A CN117398686A CN202311468055.0A CN202311468055A CN117398686A CN 117398686 A CN117398686 A CN 117398686A CN 202311468055 A CN202311468055 A CN 202311468055A CN 117398686 A CN117398686 A CN 117398686A
- Authority
- CN
- China
- Prior art keywords
- magma
- luminous
- self
- information
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000009877 rendering Methods 0.000 title claims abstract description 56
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000003860 storage Methods 0.000 title claims abstract description 16
- 230000000694 effects Effects 0.000 claims abstract description 116
- 238000010586 diagram Methods 0.000 claims abstract description 23
- 238000013507 mapping Methods 0.000 claims abstract description 17
- 239000003086 colorant Substances 0.000 claims abstract description 13
- 230000000737 periodic effect Effects 0.000 claims description 114
- 230000006870 function Effects 0.000 claims description 107
- 230000004927 fusion Effects 0.000 claims description 72
- 230000003068 static effect Effects 0.000 claims description 61
- 238000005282 brightening Methods 0.000 claims description 24
- 239000000463 material Substances 0.000 claims description 22
- 238000004364 calculation method Methods 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 11
- 238000005070 sampling Methods 0.000 claims description 10
- 230000010365 information processing Effects 0.000 claims description 9
- 230000007480 spreading Effects 0.000 claims description 9
- 238000003892 spreading Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 3
- 230000000875 corresponding effect Effects 0.000 description 38
- 238000004020 luminiscence type Methods 0.000 description 23
- 230000008859 change Effects 0.000 description 10
- 238000007654 immersion Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 239000012530 fluid Substances 0.000 description 3
- 238000005286 illumination Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000010923 batch production Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000003973 paint Substances 0.000 description 1
- 230000002572 peristaltic effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/02—Non-photorealistic rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/66—Methods for processing data by generating or executing the game program for rendering three dimensional images
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本公开提供一种游戏中的岩浆渲染方法、装置、存储介质与电子设备,涉及计算机技术领域。该方法包括:获取游戏中的岩浆模型,并获取针对所述岩浆模型绘制的顶点颜色;利用所述顶点颜色烘焙贴图,得到所述岩浆模型对应的顶点颜色遮罩图;根据所述顶点颜色遮罩图的第一预设通道信息,确定所述岩浆模型的顶点动画信息;根据所述顶点颜色遮罩图的第二预设通道信息,确定所述岩浆模型的自发光信息;所述自发光信息包括针对所述岩浆模型的至少部分区域的动态自发光信息;基于所述自发光信息对所述岩浆模型渲染自发光效果,基于所述顶点动画信息对所述岩浆模型渲染顶点动画效果。本公开提升了岩浆的渲染效果。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种游戏中的岩浆渲染方法、游戏中的岩浆渲染装置、计算机可读存储介质与电子设备。
背景技术
随着电子设备与互联网的发展,游戏成为人们日常娱乐的一种方式,并且游戏画面越来越精细与拟真化,使得玩家的游戏体验不断提升。
岩浆是游戏中常见的视觉元素之一,用于营造火山等极具风格化的游戏场景,能够带给玩家诸如紧张、压迫等游戏氛围感受。相关技术中,对岩浆模型的渲染大多采用静态渲染的方式,缺乏亮度变化和动态变化等效果,导致渲染表现不佳,由此影响游戏场景的氛围感、玩家的沉浸感以及游戏的表现力。
发明内容
本公开提供一种游戏中的岩浆渲染方法、游戏中的岩浆渲染装置、计算机可读存储介质与电子设备,以至少在一定程度上提升岩浆的渲染效果。
根据本公开的第一方面,提供一种游戏中的岩浆渲染方法,包括:获取游戏中的岩浆模型,并获取针对所述岩浆模型绘制的顶点颜色;利用所述顶点颜色烘焙贴图,得到所述岩浆模型对应的顶点颜色遮罩图;根据所述顶点颜色遮罩图的第一预设通道信息,确定所述岩浆模型的顶点动画信息;根据所述顶点颜色遮罩图的第二预设通道信息,确定所述岩浆模型的自发光信息;所述自发光信息包括针对所述岩浆模型的至少部分区域的动态自发光信息;基于所述自发光信息对所述岩浆模型渲染自发光效果,基于所述顶点动画信息对所述岩浆模型渲染顶点动画效果。
根据本公开的第二方面,提供一种游戏中的岩浆渲染装置,包括:岩浆模型获取模块,被配置为获取游戏中的岩浆模型,并获取针对所述岩浆模型绘制的顶点颜色;贴图烘焙模块,被配置为利用所述顶点颜色烘焙贴图,得到所述岩浆模型对应的顶点颜色遮罩图;顶点动画信息处理模块,被配置为根据所述顶点颜色遮罩图的第一预设通道信息,确定所述岩浆模型的顶点动画信息;自发光信息处理模块,被配置为根据所述顶点颜色遮罩图的第二预设通道信息,确定所述岩浆模型的自发光信息;所述自发光信息包括针对所述岩浆模型的至少部分区域的动态自发光信息;渲染处理模块,被配置为基于所述自发光信息对所述岩浆模型渲染自发光效果,基于所述顶点动画信息对所述岩浆模型渲染顶点动画效果。
根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述游戏中的岩浆渲染方法及其可能的实现方式。
根据本公开的第四方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令,来执行上述游戏中的岩浆渲染方法及其可能的实现方式。
本公开的技术方案具有以下有益效果:
一方面,通过在岩浆模型中渲染动态自发光效果和顶点动画效果,使得岩浆呈现出亮度变化和流动的效果,能够提升渲染效果,有利于还原出现实世界火山地貌应有的环境氛围,提升游戏场景的氛围感、玩家的沉浸感与游戏的表现力。另一方面,对顶点颜色实现了合理与充分的使用,将顶点颜色遮罩图的第一预设通道信息、第二预设通道信息与岩浆模型的顶点动画信息、自发光信息相关联,有利于高效、准确地配置顶点动画信息和自发光信息,并降低岩浆模型的数据量与开销。
附图说明
图1示出本示例性实施方式中一种游戏中的岩浆渲染方法的流程图;
图2A示出本示例性实施方式中第一模型的示意图;
图2B示出本示例性实施方式中第二模型的示意图;
图2C示出本示例性实施方式中第三模型的示意图;
图2D示出本示例性实施方式中岩浆模型的示意图;
图3示出本示例性实施方式中顶点颜色遮罩图的示意图;
图4示出本示例性实施方式中一种生成流动纹理的流程图;
图5示出本示例性实施方式中一种得到顶点动画信息的流程图;
图6示出本示例性实施方式中一种得到自发光信息的流程图;
图7示出本示例性实施方式中动态自发光周期函数的曲线示意图;
图8A示出本示例性实施方式中渲染岩浆模型的效果图;
图8B示出本示例性实施方式中游戏场景的效果图;
图9示出本示例性实施方式中一种游戏中的岩浆渲染装置的结构示意图;
图10示出本示例性实施方式中一种电子设备的结构示意图。
具体实施方式
下文将结合附图更全面地描述本公开的示例性实施方式。
附图为本公开的示意性图解,并非一定是按比例绘制。附图中所示的一些方框图可能是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在硬件模块或集成电路中实现这些功能实体,或在网络、处理器或微控制器中实现这些功能实体。实施方式能够以多种形式实施,不应被理解为限于在此阐述的范例。本公开所描述的特征、结构或特性可以以任何合适的方式结合在一个或多个实施方式中。在下文的描述中,提供许多具体细节从而给出对本公开实施方式的充分说明。然而,本领域技术人员应意识到,可以在实现本公开的技术方案时省略其中的一个或多个特定细节,或者可以采用其它的方法、组元、装置、步骤等替代一个或多个特定细节。
相关技术中,使用DCC(Digital Content Creation,数字内容创作)软件制作岩浆模型,根据岩浆的美术需求进行流体解算,雕刻高面数的模型,以还原现实里的造型与结构。然后制作PBR(Physically Based Rendering,基于物理的渲染)光照模型所需的纹理。最后将岩浆模型导入至UE4(Unreal Engine 4,虚幻引擎4)等引擎中,进行渲染。该方案得到的岩浆模型缺乏亮度变化和动态变化,缺乏现实世界中的火山地貌应有的环境氛围,因此渲染效果不佳,不利于提升游戏场景的氛围感、玩家的沉浸感与游戏的表现力。并且,PBR光照模型对于纹理的依赖性很高,不利于批量制作,流体解算需要大量的算力与时间,这些导致方案实现成本较高,不利于快速迭代。
鉴于上述一个或多个问题,本公开的示例性实施方式提供一种游戏中的岩浆渲染方法。图1示出了该方法的示例性流程,可以包括以下步骤S110至S150:
步骤S110,获取游戏中的岩浆模型,并获取针对岩浆模型绘制的顶点颜色;
步骤S120,利用顶点颜色烘焙贴图,得到岩浆模型对应的顶点颜色遮罩图;
步骤S130,根据顶点颜色遮罩图的第一预设通道信息,确定岩浆模型的顶点动画信息;
步骤S140,根据顶点颜色遮罩图的第二预设通道信息,确定岩浆模型的自发光信息;自发光信息包括针对岩浆模型的至少部分区域的动态自发光信息;
步骤S150,基于自发光信息对岩浆模型渲染自发光效果,基于顶点动画信息对岩浆模型渲染顶点动画效果。
在图1所示的方法中,一方面,通过在岩浆模型中渲染动态自发光效果和顶点动画效果,使得岩浆呈现出亮度变化和流动的效果,能够提升渲染效果,有利于还原出现实世界火山地貌应有的环境氛围,提升游戏场景的氛围感、玩家的沉浸感与游戏的表现力。另一方面,对顶点颜色实现了合理与充分的使用,将顶点颜色遮罩图的第一预设通道信息、第二预设通道信息与岩浆模型的顶点动画信息、自发光信息相关联,有利于高效、准确地配置顶点动画信息和自发光信息,并降低岩浆模型的数据量与开销。
下面对图1中的每个步骤做具体说明。
参考图1,在步骤S110中,获取游戏中的岩浆模型,并获取针对岩浆模型绘制的顶点颜色。
其中,岩浆模型可以由任意的游戏编辑或图形软件制作而成,其可以是二维模型或三维模型等,这与游戏的类型相关,本公开不做限定。
在一种实施方式中,上述获取游戏中的岩浆模型,可以包括以下步骤:
获取由岩浆的初始造型形成的第一模型;
将第一模型进行体素化处理,得到第二模型;
将第二模型进行重拓扑处理,得到第三模型;
通过噪声在第三模型的表面形成起伏,得到岩浆模型。
其中,岩浆的初始造型可以包括较为初始、粗糙的形状、结构等信息,美术人员可以对岩浆的初始造型进行简单设置与编辑,来生成第一模型。因此,第一模型是较为初始的模型。参考图2A所示,美术人员在UE4内摆放大致的二维图形,来表现岩浆的初始造型,形成第一模型。当然,第一模型可以由任意形状的二维或三维图形组成,不限于图2A所示的四边形。初始造型的编辑过程非常简单,不需要美术人员进行精细的手动编辑、雕刻等工作,节约了人力与时间成本。
在得到第一模型后,对其进行体素化处理,可以将第一模型中的图形拆分为一个个体素。若第一模型由二维图形组成,所需的岩浆模型为三维模型,则可以将第一模型中的二维图形拆分,并赋予其厚度,形成三维的体素。体素化处理后得到第二模型,第二模型是由体素组成的较为初始的模型。参考图2B所示,可以将UE4中形成的第一模型导入C4D(Cinema 4D,一款3D建模、动画、模拟和渲染软件),使用体素网格功能进行体素化处理,形成第二模型。
在得到第二模型后,对其进行重拓扑处理,这样可以基于更优的拓扑对第二模型的表面进行重构,使体素之间平滑连接,表面形成简单的起伏,由此得到第三模型。参考图2C所示,可以在C4D中使用重拓扑网格功能进行重拓扑处理,形成第三模型。
在得到第三模型后,可以通过添加噪声,在第三模型的表面形成起伏。实际上,第三模型的表面可能本身具有起伏,添加噪声后可以使起伏更加精致,由此得到岩浆模型。参考图2D所示,对第三模型使用噪声形成更加细小的起伏,得到高面数的岩浆模型。
由上可知,第一模型是美术人员初始手动编辑的模型,岩浆模型是最终生成的高面数模型,第二模型、第三模型是过程中产生的中间模型。本示例性实施方式在保证岩浆模型的质量与精细度的同时,能够减少美术人员的人工与时间成本,并且不需要进行高算力的流体解算,从而降低了方案实现与迭代成本。
岩浆模型的顶点颜色可以由美术人员手动绘制,也可以由程序自动绘制。示例性的,可以将在C4D中生成的岩浆模型(如图2D所示的岩浆模型)导入至UE4中,在场景中放置岩浆模型,选择“网格体绘制”的模式,使用绘制(Paint)功能,确定笔刷绘制半径(Radius)和岩浆模型的顶点颜色通道(Channels),对岩浆模型的顶点颜色的每个通道(如可以包括R通道、G通道、B通道)分别进行绘制,由此得到岩浆模型的顶点颜色。
在一种实施方式中,可以预先完成岩浆模型的生成以及顶点颜色的绘制过程,保存岩浆模型和顶点颜色的数据。在步骤S110中,读取已保存的岩浆模型和顶点颜色的数据即可。或者,在读取已保存的岩浆模型和顶点颜色的数据后,对其进行修改,如对顶点颜色进行手动或自动地添加噪声、整体增亮或减亮等修改,使得在复用同一套岩浆模型和顶点颜色时,产生一定的差异化效果。
继续参考图1,在步骤S120中,利用顶点颜色烘焙贴图,得到岩浆模型对应的顶点颜色遮罩图。
绘制的顶点颜色是比较初步的颜色信息,利用顶点颜色烘焙贴图,可以得到较为完整、精细的颜色信息。本示例性实施方式将烘焙得到的贴图作为遮罩,记录动态自发光以及顶点动画的相关参数信息,该遮罩称为顶点颜色遮罩图。示例性的,可以将在UE4中绘制的顶点颜色导入至C4D中,利用C4D中的顶点颜色烘焙得到顶点颜色遮罩图,该顶点颜色遮罩图可以再导入至UE4中,便于在UE4中基于岩浆模型和顶点颜色遮罩图进行后续处理。图3示出了图2D的岩浆模型对应的顶点颜色遮罩图。
在一种实施方式中,参考图4所示,岩浆渲染方法还可以包括以下步骤S410至S430:
步骤S410,对岩浆模型的纹理贴图进行采样,将采样得到的初始方向信息进行值域映射,得到基础方向信息。
其中,除了通过烘焙贴图得到顶点颜色遮罩图外,还可以获取岩浆模型的纹理贴图。纹理贴图可以包含纹理的方向信息,例如方向信息可以体现为纹理贴图坐标与岩浆模型的UV坐标之间的映射向量等。对纹理贴图进行采样,得到初始方向信息,将其中的方向值映射到预定的值域内,使得方向值规范化,如可以采用[-1,1]的值域,得到基础方向信息。
步骤S420,利用流动纹理周期函数对基础方向信息构造周期性变化,得到动态方向信息。
其中,流动纹理周期函数是用于产生流动纹理的周期函数,其作用以及具体的函数形式、参数等可以区别于本文中的其他周期函数。示例性的,流动纹理周期函数可以是线性周期函数或正弦函数等。将流动纹理周期函数作用到基础方向信息上,得到随时间周期性变化的方向信息,称为动态方向信息。
在一种实施方式中,动态方向信息可以包括目标动态UV信息。上述利用周期函数对基础方向信息构造周期性变化,得到动态方向信息,可以包括以下步骤:
获取具有相位差的多个流动纹理周期函数;
利用多个流动纹理周期函数与基础方向信息分别相乘,并与岩浆模型的基准UV参数相加,得到多个流动纹理周期函数对应的多组动态UV信息;
对多组动态UV信息进行线性插值,得到目标动态UV信息。
其中,UV信息可以是UV坐标或贴图向UV坐标映射的信息等。基础方向信息可以包括基础UV信息,即从纹理贴图中采样得到初始UV信息并进行值域映射得到的UV信息。可以设置任意数量的流动纹理周期函数,以构造任意数量的动态UV信息。一般的,流动纹理周期函数的数量越多,最终产生的流动纹理的动态效果越强。这些流动纹理周期函数之间具有相位差,即任意两个流动纹理周期函数的相位不重合。
岩浆模型的基准UV参数可以是基准UV坐标,如纹理贴图上的基准点(纹理贴图上的其他点的方向信息可以是相对于基准点的相对信息)在岩浆模型上对应的UV坐标、UV0坐标等。将多个流动纹理周期函数与基础方向信息分别相乘,使得基础方向信息以不同的相位形成多组周期性变化的方向信息,将其与基准UV参数相加,得到多组动态UV信息,可以是随时间周期性变化的多组UV坐标。
对多组动态UV信息进行线性插值,即将多组动态UV信息以所需的比例进行融合,得到一组目标动态UV信息。该比例可以是固定的,也可以是可变的。例如,可以设置随纹理贴图坐标位置不同而变化的比例,后续能够产生较为复杂的流动纹理效果。
步骤S430,基于动态方向信息生成岩浆模型的流动纹理。
可以将动态方向信息与纹理贴图进行关联,通过动态方向信息将纹理贴图映射到岩浆模型的表面上,这样纹理的位置是周期性变化的,由此产生流动纹理的效果。
对形成流动纹理的过程举例说明:在完成纹理贴图等PBR贴图后,可以在UE4中创建岩浆材质,采样漫反射纹理、混合纹理、自发光纹理等获得计算PBR光照模型所需的信息,并使用常量参数控制法线信息、粗糙度信息、镜面反射信息的强度等。在岩浆材质中对纹理进行采样,获得二维的初始方向信息。将初始方向信息的值域重新映射至[-1,1]区间,得到基础方向信息。利用时间节点(Time)构造两个流动纹理周期函数,其周期相同,相位差为0.5个。将两个流动纹理周期函数分别与基础方向信息相乘,将相乘结果分别与岩浆模型的UV0输入相加,得到两组动态UV信息。构造线性插值所需的比例(Alpha),通过线性插值函数(lerp)对两组动态UV信息进行线性插值混合,得到目标动态UV信息。目标动态UV信息将作用于岩浆材质的纹理上,产生流动纹理的效果。
应当理解,图4的方法步骤可以在获得纹理贴图之后、对岩浆模型最终进行渲染之前的任意时间执行,如可以在步骤S120之后、步骤S130之前,也可以在步骤S130或S140之后,本公开对此不做限定。
继续参考图1,在步骤S130中,根据顶点颜色遮罩图的第一预设通道信息,确定岩浆模型的顶点动画信息。
本示例性实施方式中,顶点颜色遮罩图的第一、第二预设通道,均可以是任意一个或多个颜色通道。例如,第一预设通道是B通道,第二预设通道是R通道和G通道。第一预设通道信息可以包括顶点颜色遮罩图的第一预设通道的值,可以是一张单通道图像。第二预设通道信息的含义类似。
可以将岩浆模型的顶点设置为位置动态变化,即顶点可运动,由此产生顶点动画的效果,相关的顶点位置动态变化的信息即顶点动画信息。可以将顶点颜色遮罩图的第一预设通道信息与顶点动画信息进行关联,例如将第一预设通道信息与顶点动态的强度关联,可以根据第一预设通道信息确定顶点动画信息。
在一种实施方式中,顶点动画信息包括岩浆模型的顶点的第二周期性运动参数。参考图5所示,上述根据顶点颜色遮罩图的第一预设通道信息,确定岩浆模型的顶点动画信息,可以包括以下步骤S510和S520:
步骤S510,利用顶点运动周期函数确定顶点的第一周期性运动参数;
步骤S520,根据顶点颜色遮罩图的第一预设通道信息,对顶点的第一周期性运动参数进行强度调节,得到顶点的第二周期性运动参数。
其中,顶点运动周期函数是用于产生顶点运动的周期函数,其作用以及具体的函数形式、参数等可以区别于本文中的其他周期函数。示例性的,在UE4中,可以采用材质函数MF_Gerstner_Wave(MF表示材质函数,Gerstner_Wave是模拟水体表面波形的一种方式),利用Gerstner_Wave公式计算顶点的偏移值,即第一周期性运动参数。公式如下:
其中,表示波矢量,ki表示波缩放,Ai表示振幅,/>表示相位,ωi表示频率,t表示时间,x、y表示偏移的x、y坐标值。对每个变量进行计算,示例性的,波矢量/>可通过对三维常量参数进行归一化计算得到;波缩放ki可通过常量参数直接赋值;振幅Ai可通过常量参数直接赋值;频率ωi可通过2π/L计算得到,其中L为波长,通过常量参数直接赋值;相位/>可通过sqrt(ωi*G)计算得到,G可以取980。将计算后的每个变量代入至上述Gerstner_Wave公式中,计算顶点坐标的偏移值,作为第一周期性运动参数。并可以计算顶点坐标偏移后的法线信息。
根据顶点颜色遮罩图的第一预设通道信息,对顶点的第一周期性运动参数进行强度调节。顶点的第一预设通道值可作为强度调节参数。例如,第一预设通道为B通道,可以以顶点的B通道值为插值参数,如作为线性插值的比例(Alpha),通过线性插值函数(lerp)对第一周期性运动参数与基础运动参数进行线性插值混合,B通道值越大,混合时第一周期性运动参数所占的比例越大,表示运动强度越高,由此得到顶点的第二周期性运动参数。基础运动参数是运动程度较低的运动参数,可以是0(0表示顶点无运动)。
通过顶点运动周期函数构造顶点的周期性运动,使得岩浆模型表现出蠕动的效果。并且,通过第一预设通道信息控制不同位置的顶点的运动强度,使得岩浆模型能够产生较为复杂、多样化的顶点动画效果,视觉表现更加真实。
在一种实施方式中,上述利用顶点运动周期函数确定顶点的第一周期性运动参数,可以包括以下步骤:
根据岩浆模型对应的岩浆材质设置信息,确定顶点运动周期函数的数量;
若顶点运动周期函数的数量为多个,则将多个顶点运动周期函数的计算结果合并,得到顶点的第一周期性运动参数。
其中,采用多个顶点运动周期函数时,可以实现更加复杂的顶点动画效果。一般的,顶点运动周期函数的数量越多,顶点动画效果越复杂、真实。岩浆材质设置信息可以包括是否开启顶点动画效果,还可以包括顶点动画效果的分级信息。例如,若岩浆材质设置信息指示开启顶点动画效果,则确定采用1个顶点运动周期函数,若岩浆材质设置信息指示关闭顶点动画效果,则确定对岩浆模型不渲染顶点动画效果,即顶点运动周期函数的数量为0。或者,若岩浆材质设置信息指示顶点动画效果为高级,则确定采用3个顶点运动周期函数,若岩浆材质设置信息指示顶点动画效果为中级,则确定采用2个顶点运动周期函数,若岩浆材质设置信息指示顶点动画效果为低级,则确定采用1个顶点运动周期函数或不采用顶点运动周期函数(即数量为0)。
若顶点运动周期函数的数量为多个,可以对不同顶点运动周期函数设置不同的参数。例如,采用多个材质函数MF_Gerstner_Wave时,可以对不同函数中的波缩放、波矢量、振幅、频率或相位的一者或多者设置为不同值,使得不同函数产生不同方向、不同程度、不同周期或具有相位差的顶点运动效果。将多个顶点运动周期函数的计算结果合并,也就是将每个顶点运动周期函数计算出的顶点的偏移值合并,得到顶点的第一周期性运动参数。
在一种实施方式中,岩浆渲染方法还可以包括以下步骤:
若顶点运动周期函数的数量为0,则确定对岩浆模型不渲染顶点动画效果。
例如,上述岩浆材质设置信息指示关闭顶点动画效果,或者指示顶点动画效果为低级等情况中,可以确定顶点运动周期函数的数量为0,这表示不采用顶点动画效果。可以不执行步骤S130,后续对岩浆模型不渲染顶点动画效果。
在一种实施方式中,在UE4中,针对岩浆材质,可以使用MakeMaterialAttributes节点实现顶点动画效果的分级。关于多个顶点运动周期函数的计算结果的合并,可以使用材质函数MakeFloat4进行向量合并,能够在保证计算结果准确性的情况下,减少向量合并后的计算量,进一步降低岩浆材质的性能开销。
继续参考图1,在步骤S140中,根据顶点颜色遮罩图的第二预设通道信息,确定岩浆模型的自发光信息;自发光信息包括针对岩浆模型的至少部分区域的动态自发光信息。
其中,自发光信息可以包括自发光强度、色温、位置、发光角度等。岩浆模型的至少部分区域的自发光是变化的,可用于呈现动态自发光效果,将变化的自发光信息称为动态自发光信息。示例性的,岩浆模型包括第一区域和第二区域,岩浆模型的自发光信息包括静态自发光信息和动态自发光信息。第一区域为静态自发光区域,该区域的自发光信息为静态自发光信息。第二区域为动态自发光区域,该区域的自发光信息为动态自发光信息。
可以将顶点颜色遮罩图的第二预设通道信息与自发光信息进行关联,例如将第二预设通道信息与自发光强度或自发光位置关联,可以根据第二预设通道信息确定自发光信息。
在一种实施方式中,参考图6所示,上述根据顶点颜色遮罩图的第二预设通道信息,确定岩浆模型的自发光信息,可以包括以下步骤S610和S620:
步骤S610,根据顶点颜色遮罩图的第二预设通道信息,确定岩浆模型的多个区域的自发光融合参数;
步骤S620,基于每个区域的自发光融合参数,将基础静态自发光参数、增亮静态自发光参数、动态自发光参数融合,得到每个区域的自发光信息。
其中,岩浆模型可以被划分为多个区域,每个区域可以由任意数量的点组成,甚至每个点可以作为一个区域。岩浆模型的自发光可以三个层级的自发光效果:
第一层级:基础静态自发光,是自发光强度较低的静态自发光效果,可以使用数值较低的常量参数实现。基础静态自发光参数可以包括基础静态自发光的强度、色温等参数。
第二层级:增亮静态自发光,是自发光强度较高的静态自发光效果,可以使用数值较高的常量参数或使用第二预设通道中的G通道值实现。增亮静态自发光参数可以包括增亮静态自发光的强度、色温等参数。
第三层级:动态自发光,其自发光强度可以高于增亮静态自发光,且具有动态变化的效果,如自发光强度可以随时间变化。动态自发光参数可以包括动态自发光的强度、色温等参数以及这些参数变化的信息等。
自发光融合参数是指将基础静态自发光参数、增亮静态自发光参数、动态自发光参数融合的比例。根据顶点颜色遮罩图的第二预设通道信息,可以确定岩浆模型的每个区域的自发光融合参数,可以包括基础静态自发光参数、增亮静态自发光参数、动态自发光参数三者对应的融合比例。进而可以针对每个区域,按照其自发光融合参数将三种参数融合,计算出每个区域的自发光信息。
在一种实施方式中,第二预设通道信息包括G通道值和R通道值。可以使每个区域的自发光融合参数中增亮静态自发光参数对应的融合比例与该区域的G通道值正相关,例如某个点的G通道值越大,该点的增亮静态自发光越显著,动态自发光参数对应的融合比例与该区域的R通道值正相关,例如某个点的R通道值越大,该点的动态自发光越显著。
在一种实施方式中,第二预设通道信息包括G通道值和R通道值。上述根据顶点颜色遮罩图的第二预设通道信息,确定岩浆模型的多个区域的自发光融合参数,可以包括以下步骤:
若区域的G通道值大于第一G通道阈值,则确定该区域的自发光融合参数中增亮静态自发光参数对应的融合比例大于或等于1;
若区域的R通道值大于第一R通道阈值,则确定该区域的自发光融合参数中动态自发光参数对应的融合比例大于或等于1。
其中,第一G通道阈值、第一R通道阈值可以根据经验或具体需求确定。若某个区域的G通道值大于第一G通道阈值,可以将该区域的自发光融合参数中增亮静态自发光参数对应的融合比例设置为大于或等于1的值,相应的,基础静态自发光参数、动态自发光参数对应的融合比例均为0。由此得到静态自发光较强的结果。需要说明的是,若增亮静态自发光参数对应的融合比例大于1,将增亮静态自发光参数乘以该融合比例,得到该区域的静态自发光信息,表示该区域的静态自发光强度高于预设的增亮静态自发光参数所表征的强度。
若某个区域的R通道值大于第一R通道阈值,可以将该区域的自发光融合参数中动态自发光参数对应的融合比例设置为大于或等于1的值,相应的,基础静态自发光参数、增亮静态自发光参数对应的融合比例均为0。由此得到动态自发光较强的结果。需要说明的是,若动态自发光参数对应的融合比例大于1,将动态自发光参数乘以该融合比例,得到该区域的动态自发光信息,表示该区域的动态自发光强度高于预设的动态自发光参数所表征的强度。
在一种实施方式中,若区域的R通道值小于第一R通道阈值、且G通道值大于第一G通道阈值,则确定该区域的自发光融合参数中增亮静态自发光参数对应的融合比例大于或等于1。
在一种实施方式中,第二预设通道信息包括G通道值和R通道值。上述根据顶点颜色遮罩图的第二预设通道信息,确定岩浆模型的多个区域的自发光融合参数,可以包括以下步骤:
若区域的G通道值小于第二G通道阈值,则确定该区域的自发光融合参数中增亮静态自发光参数对应的融合比例为0;
若区域的R通道值小于第二R通道阈值,则确定该区域的自发光融合参数中动态自发光参数对应的融合比例为0。
其中,第二G通道阈值、第二R通道阈值可以根据经验或具体需求确定。在一种实施方式中,第二G通道阈值小于第一G通道阈值,第二R通道阈值小于第一R通道阈值。
若某个区域的G通道值小于第二G通道阈值,可以将该区域的自发光融合参数中增亮静态自发光参数对应的融合比例设置为0,即该区域不具有增亮静态自发光效果,其自发光效果仅由基础静态自发光和动态自发光形成,或仅具有其中的一者。
若某个区域的R通道值小于第二R通道阈值,可以将该区域的自发光融合参数中动态自发光参数对应的融合比例设置为0,即该区域不具有动态自发光效果,其自发光效果仅由基础静态自发光和增亮静态自发光形成,或仅具有其中的一者。
本示例性实施方式中,根据顶点颜色遮罩图中的G通道值确定增亮静态自发光信息,根据顶点颜色遮罩图中的R通道值确定动态自发光信息。可以理解为,某个点越偏绿,其静态自发光越强,某个点越偏红,其动态自发光越强。而岩浆中的流动部分通常偏红色,因为其能够流动因而产生动态自发光效果,静止部分中靠近流动部分的区域偏绿色,其自发光效果为静态,亮度较高,静止部分中远离流动部分的区域偏黑色,其自发光效果为静态,亮度较低。也就是说,本方案中根据G通道值、R通道值确定静态自发光与动态自发光信息,这符合岩浆本身的颜色特性,使得呈现出的自发光效果更加真实。
在一种实施方式中,动态自发光参数可以包括动态自发光周期函数,动态自发光周期函数的自变量为时间,函数为亮度值。其中,动态自发光周期函数用于产生亮度值周期性变化的动态自发光效果,该周期函数的作用以及具体的函数形式、参数等可以区别于本文中的其他周期函数。示例性的,动态自发光周期函数可以如下所示:
f(t)=saturate(10·smoothstep(0,0.95,frac(0.05t))·smoothstep(0.11,1,frac(-0.05t)))
(3)
其中,t表示时间,frac函数返回标量或每个矢量中各分量的小数部分,smoothstep为平滑阶梯函数,可以用来生成平滑过渡值,saturate函数用于进行数值标准化(如归一化)。该动态自发光周期函数的曲线可以参考图7所示,横坐标为时间,单位秒,纵坐标为自发光蔓延效果的强度(可以理解为自发光强度),值域为[0,1]。由该曲线图像可知,动态自发光以20秒为一个周期。在每个周期内,从0秒至4秒开始自发光亮度逐渐上升,即自发光开始蔓延。到4秒时达到最大值,从4秒至14秒维持亮度最大值,即自发光维持蔓延状态。从14秒至17秒自发光亮度逐渐降低至0,即自发光蔓延效果逐渐消失;从17秒至20秒进入冷却状态,此时自发光亮度保持为0。
在一种实施方式中,在确定岩浆模型的多个区域的自发光融合参数之后,岩浆渲染方法还可以包括以下步骤:
对于自发光融合参数中动态自发光参数对应的融合比例不为0的区域,按照预设蔓延方向设置其中不同点的动态自发光周期函数的时序信息,并添加到岩浆模型的自发光信息中。
其中,自发光融合参数中动态自发光参数对应的融合比例不为0的区域,是具有动态自发光效果的区域。预设蔓延方向是指岩浆的流动(或蠕动)方向。例如,在游戏场景中,设置岩浆由高处向低处流动,以Z轴表示高度,则预设蔓延方向可以是动态自发光参数对应的融合比例不为0的区域中沿着Z轴坐标值减小的方向。按照预设蔓延方向设置这些区域中不同点的动态自发光周期函数的时序信息,例如,按照预设蔓延方向,设置不同点的动态自发光周期函数具有时间差(或相位差),使得较高点(即Z轴坐标较大的点)的动态自发光周期函数的相位较早。如可以将最高点的动态自发光周期函数的自变量设置为t,按照预设蔓延方向指向Z轴坐标降低的方向,将之后的点的动态自发光周期函数的自变量依次设置为t-1、t-2、t-3等,使其动态自发光效果相比于最高点,存在1秒、2秒、3秒等的延迟。最终呈现的动态自发光,是自发光从岩浆模型的高处向低处逐渐蔓延的效果,从而与岩浆的流动方向相符合,视觉感受上更加真实。在UE4中,可以利用上述相关算法制作蔓延效果所需的遮罩,以实现动态自发光效果。
在一种实施方式中,岩浆渲染方法还可以包括以下步骤:
若岩浆模型对应的岩浆材质设置信息指示关闭动态自发光效果,则将动态自发光参数设为0。
其中,关闭动态自发光效果,表示对岩浆模型不渲染动态自发光效果,可以将上述动态自发光参数设为0,这样整个岩浆模型的自发光仅由基础静态自发光和增亮静态自发光形成,不具有动态效果。这通常是节约开销的做法。如玩家在进行游戏时可以通过设置画面效果来开启或关闭动态自发光效果。
在一种实施方式中,在UE4中,针对岩浆材质,可以使用开关节点分别控制岩浆模型是否具有动态自发光效果或顶点动画效果。这实际上将岩浆材质实例分为四类:无动态自发光效果和顶点动画效果,有动态自发光效果和顶点动画效果,有动态自发光效果而无顶点动画效果,有顶点动画效果而无动态自发光效果。
在一种实施方式中,在UE4中,还可以在岩浆材质实例中设置其他信息,如流动纹理效果信息,PBR效果信息等。
继续参考图1,在步骤S150中,基于自发光信息对岩浆模型渲染自发光效果,基于顶点动画信息对岩浆模型渲染顶点动画效果。
其中,可以基于自发光信息对岩浆模型的部分区域渲染静态自发光效果,部分区域渲染动态自发光效果,关于动态自发光效果,基于动态自发光信息中的自发光周期性变化信息使相应区域的自发光亮度形成周期性变化,由此呈现动态自发光效果。可以基于顶点动画信息,使岩浆模型的顶点进行周期性运动,由此渲染出顶点动画效果。若配置了关于纹理贴图的动态方向信息,可以构造出纹理的周期性变化,渲染出流动纹理效果。
在一种实施方式中,渲染岩浆模型的流动纹理效果和基于Gerstner Wave的顶点动画效果,可以还原岩浆在现实世界中进行缓慢流动时的“粘滞感”,提升岩浆模型的渲染效果的写实程度。
在一种实施方式中,顶点颜色遮罩图的第一预设通道信息可以基于用户进行顶点绘制时输入的第一预设通道(如B通道)的均一颜色参数而生成。将第一预设通道的颜色值与岩浆涌动的动画遮罩相乘,还可以与用户输入的其他相关效果贴图(如自发光贴图等)相乘,将相乘后的数值进行渲染,能够生成顶点动画效果。
在一种实施方式中,顶点颜色遮罩图的第二预设通道信息可以基于用户进行顶点绘制时输入的第二预设通道的均一颜色参数而生成。如的第二预设通道信息包括R通道、G通道的颜色值,将R通道、G通道的颜色值分别与用户输入的自发光贴图相乘,将相乘后的数值进行渲染,能够生成动态自发光效果和静态自发光效果。
渲染效果可以部分参考图8A和图8B所示。图8A示出了单个岩浆模型的渲染效果,图8B示出了由岩浆模型形成的场景效果。可以看出,岩浆的渲染效果较好,提升了场景氛围感。
此外,针对自发光效果、顶点动画效果,均可以提供开关或效果分级的相关设置,这使得游戏开发人员的前期配置工作以及玩家的游戏配置更加灵活,岩浆模型的渲染效果在不同硬件性能的移动设备上能够被流畅地渲染,提升了本方案的适用范围。
本公开的示例性实施方式还提供一种游戏中的岩浆渲染装置。参考图9所示,游戏中的岩浆渲染装置900可以包括以下程序模块:
岩浆模型获取模块910,被配置为获取游戏中的岩浆模型,并获取针对岩浆模型绘制的顶点颜色;
贴图烘焙模块920,被配置为利用顶点颜色烘焙贴图,得到岩浆模型对应的顶点颜色遮罩图;
顶点动画信息处理模块930,被配置为根据顶点颜色遮罩图的第一预设通道信息,确定岩浆模型的顶点动画信息;
自发光信息处理模块940,被配置为根据顶点颜色遮罩图的第二预设通道信息,确定岩浆模型的自发光信息;自发光信息包括针对岩浆模型的至少部分区域的动态自发光信息;
渲染处理模块950,被配置为基于自发光信息对岩浆模型渲染自发光效果,基于顶点动画信息对岩浆模型渲染顶点动画效果。
在一种实施方式中,顶点动画信息包括岩浆模型的顶点的第二周期性运动参数;上述根据顶点颜色遮罩图的第一预设通道信息,确定岩浆模型的顶点动画信息,包括:
利用顶点运动周期函数确定顶点的第一周期性运动参数;
根据顶点颜色遮罩图的第一预设通道信息,对顶点的第一周期性运动参数进行强度调节,得到顶点的第二周期性运动参数。
在一种实施方式中,上述利用顶点运动周期函数确定顶点的第一周期性运动参数,包括:
根据岩浆模型对应的岩浆材质设置信息,确定顶点运动周期函数的数量;
若顶点运动周期函数的数量为多个,则将多个顶点运动周期函数的计算结果合并,得到顶点的第一周期性运动参数。
在一种实施方式中,顶点动画信息处理模块930,还被配置为:
若顶点运动周期函数的数量为0,则确定对岩浆模型不渲染顶点动画效果。
在一种实施方式中,上述根据顶点颜色遮罩图的第二预设通道信息,确定岩浆模型的自发光信息,包括:
根据顶点颜色遮罩图的第二预设通道信息,确定岩浆模型的多个区域的自发光融合参数;
基于每个区域的自发光融合参数,将基础静态自发光参数、增亮静态自发光参数、动态自发光参数融合,得到每个区域的自发光信息。
在一种实施方式中,第二预设通道信息包括G通道值和R通道值;上述根据顶点颜色遮罩图的第二预设通道信息,确定岩浆模型的多个区域的自发光融合参数,包括:
若区域的G通道值大于第一G通道阈值,则确定区域的自发光融合参数中增亮静态自发光参数对应的融合比例大于或等于1;
若区域的R通道值大于第一R通道阈值,则确定区域的自发光融合参数中动态自发光参数对应的融合比例大于或等于1。
在一种实施方式中,第二预设通道信息包括G通道值和R通道值;上述根据顶点颜色遮罩图的第二预设通道信息,确定岩浆模型的多个区域的自发光融合参数,包括:
若区域的G通道值小于第二G通道阈值,则确定区域的自发光融合参数中增亮静态自发光参数对应的融合比例为0;
若区域的R通道值小于第二R通道阈值,则确定区域的自发光融合参数中动态自发光参数对应的融合比例为0。
在一种实施方式中,动态自发光参数包括动态自发光周期函数,动态自发光周期函数的自变量为时间,函数为亮度值。
在一种实施方式中,自发光信息处理模块940,还被配置为:
在确定岩浆模型的多个区域的自发光融合参数之后,对于自发光融合参数中动态自发光参数对应的融合比例不为0的区域,按照预设蔓延方向设置其中不同点的动态自发光周期函数的时序信息,并添加到岩浆模型的自发光信息中。
在一种实施方式中,自发光信息处理模块940,还被配置为:
若岩浆模型对应的岩浆材质设置信息指示关闭动态自发光效果,则将动态自发光参数设为0。
在一种实施方式中,上述获取游戏中的岩浆模型,包括:
获取由岩浆的初始造型形成的第一模型;
将第一模型进行体素化处理,得到第二模型;
将第二模型进行重拓扑处理,得到第三模型;
通过噪声在第三模型的表面形成起伏,得到岩浆模型。
在一种实施方式中,装置900还可以包括流动纹理处理模块,被配置为:
对岩浆模型的纹理贴图进行采样,将采样得到的初始方向信息进行值域映射,得到基础方向信息;
利用流动纹理周期函数对基础方向信息构造周期性变化,得到动态方向信息;
基于动态方向信息生成岩浆模型的流动纹理。
在一种实施方式中,动态方向信息包括目标动态UV信息;上述利用周期函数对基础方向信息构造周期性变化,得到动态方向信息,包括:
获取具有相位差的多个流动纹理周期函数;
利用多个流动纹理周期函数与基础方向信息分别相乘,并与岩浆模型的基准UV参数相加,得到多个流动纹理周期函数对应的多组动态UV信息;
对多组动态UV信息进行线性插值,得到目标动态UV信息。
上述装置中各部分的具体细节在方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。
本公开的示例性实施方式还提供了一种计算机可读存储介质,可以实现为一种程序产品的形式,其包括程序代码,当程序产品在电子设备上运行时,程序代码用于使电子设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。在一种可选的实施方式中,该程序产品可以实现为便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在电子设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本公开的示例性实施方式还提供一种电子设备,该电子设备可以包括处理器与存储器。存储器存储有处理器的可执行指令,如可以是程序代码。处理器通过执行该可执行指令来执行本示例性实施方式中的方法。此外,该电子设备还可以包括显示器,以用于显示图形用户界面。
下面参考图10,以通用计算设备的形式对电子设备进行示例性说明。应当理解,图10显示的电子设备1000仅仅是一个示例,不应对本公开实施方式的功能和使用范围带来限制。
如图10所示,电子设备1000可以包括:处理器1010、存储器1020、总线1030、I/O(输入/输出)接口1040、网络适配器1050、显示器1060。
存储器1020可以包括易失性存储器,例如RAM 1021、缓存单元1022,还可以包括非易失性存储器,例如ROM 1023。存储器1020还可以包括一个或多个程序模块1024,这样的程序模块1024包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。例如,程序模块1024可以包括上述装置中的各模块。
处理器1010可以包括一个或多个处理单元,例如:处理器1010可以包括AP(Application Processor,应用处理器)、调制解调处理器、GPU(Graphics ProcessingUnit,图形处理器)、ISP(Image Signal Processor,图像信号处理器)、控制器、编码器、解码器、DSP(Digital Signal Processor,数字信号处理器)、基带处理器和/或NPU(Neural-Network Processing Unit,神经网络处理器)等。
处理器1010可用于执行存储器1020中存储的可执行指令,如可以执行本示例性实施方式中的任意一个或多个方法步骤。
总线1030用于实现电子设备1000的不同组件之间的连接,可以包括数据总线、地址总线和控制总线。
电子设备1000可以通过I/O接口1040与一个或多个外部设备1100(例如键盘、鼠标、外置控制器等)进行通信。
电子设备1000可以通过网络适配器1050与一个或者多个网络通信,例如网络适配器1050可以提供如3G/4G/5G等移动通信解决方案,或者提供如无线局域网、蓝牙、近场通信等无线通信解决方案。网络适配器1050可以通过总线1030与电子设备1000的其它模块通信。
尽管图10中未示出,还可以在电子设备1000中设置其它硬件和/或软件模块,包括但不限于:显示器、微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的示例性实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
本领域技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施方式。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施方式仅被视为示例性的,本公开的真正范围和精神由权利要求指出。应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。
Claims (16)
1.一种游戏中的岩浆渲染方法,其特征在于,包括:
获取游戏中的岩浆模型,并获取针对所述岩浆模型绘制的顶点颜色;
利用所述顶点颜色烘焙贴图,得到所述岩浆模型对应的顶点颜色遮罩图;
根据所述顶点颜色遮罩图的第一预设通道信息,确定所述岩浆模型的顶点动画信息;
根据所述顶点颜色遮罩图的第二预设通道信息,确定所述岩浆模型的自发光信息;所述自发光信息包括针对所述岩浆模型的至少部分区域的动态自发光信息;
基于所述自发光信息对所述岩浆模型渲染自发光效果,基于所述顶点动画信息对所述岩浆模型渲染顶点动画效果。
2.根据权利要求1所述的方法,其特征在于,所述顶点动画信息包括所述岩浆模型的顶点的第二周期性运动参数;所述根据所述顶点颜色遮罩图的第一预设通道信息,确定所述岩浆模型的顶点动画信息,包括:
利用顶点运动周期函数确定所述顶点的第一周期性运动参数;
根据所述顶点颜色遮罩图的第一预设通道信息,对所述顶点的第一周期性运动参数进行强度调节,得到所述顶点的第二周期性运动参数。
3.根据权利要求2所述的方法,其特征在于,所述利用顶点运动周期函数确定所述顶点的第一周期性运动参数,包括:
根据所述岩浆模型对应的岩浆材质设置信息,确定所述顶点运动周期函数的数量;
若所述顶点运动周期函数的数量为多个,则将多个所述顶点运动周期函数的计算结果合并,得到所述顶点的第一周期性运动参数。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若所述顶点运动周期函数的数量为0,则确定对所述岩浆模型不渲染顶点动画效果。
5.根据权利要求1所述的方法,其特征在于,所述根据所述顶点颜色遮罩图的第二预设通道信息,确定所述岩浆模型的自发光信息,包括:
根据所述顶点颜色遮罩图的第二预设通道信息,确定所述岩浆模型的多个区域的自发光融合参数;
基于每个区域的自发光融合参数,将基础静态自发光参数、增亮静态自发光参数、动态自发光参数融合,得到每个区域的自发光信息。
6.根据权利要求5所述的方法,其特征在于,所述第二预设通道信息包括G通道值和R通道值;所述根据所述顶点颜色遮罩图的第二预设通道信息,确定所述岩浆模型的多个区域的自发光融合参数,包括:
若所述区域的G通道值大于第一G通道阈值,则确定所述区域的自发光融合参数中所述增亮静态自发光参数对应的融合比例大于或等于1;
若所述区域的R通道值大于第一R通道阈值,则确定所述区域的自发光融合参数中所述动态自发光参数对应的融合比例大于或等于1。
7.根据权利要求5所述的方法,其特征在于,所述第二预设通道信息包括G通道值和R通道值;所述根据所述顶点颜色遮罩图的第二预设通道信息,确定所述岩浆模型的多个区域的自发光融合参数,包括:
若所述区域的G通道值小于第二G通道阈值,则确定所述区域的自发光融合参数中所述增亮静态自发光参数对应的融合比例为0;
若所述区域的R通道值小于第二R通道阈值,则确定所述区域的自发光融合参数中所述动态自发光参数对应的融合比例为0。
8.根据权利要求5所述的方法,其特征在于,所述动态自发光参数包括动态自发光周期函数,所述动态自发光周期函数的自变量为时间,函数为亮度值。
9.根据权利要求8所述的方法,其特征在于,在确定所述岩浆模型的多个区域的自发光融合参数之后,所述方法还包括:
对于自发光融合参数中所述动态自发光参数对应的融合比例不为0的区域,按照预设蔓延方向设置其中不同点的动态自发光周期函数的时序信息,并添加到所述岩浆模型的自发光信息中。
10.根据权利要求5所述的方法,其特征在于,所述方法还包括:
若所述岩浆模型对应的岩浆材质设置信息指示关闭动态自发光效果,则将所述动态自发光参数设为0。
11.根据权利要求1所述的方法,其特征在于,所述获取游戏中的岩浆模型,包括:
获取由岩浆的初始造型形成的第一模型;
将所述第一模型进行体素化处理,得到第二模型;
将所述第二模型进行重拓扑处理,得到第三模型;
通过噪声在所述第三模型的表面形成起伏,得到所述岩浆模型。
12.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对所述岩浆模型的纹理贴图进行采样,将采样得到的初始方向信息进行值域映射,得到基础方向信息;
利用流动纹理周期函数对所述基础方向信息构造周期性变化,得到动态方向信息;
基于所述动态方向信息生成所述岩浆模型的流动纹理。
13.根据权利要求12所述的方法,其特征在于,所述动态方向信息包括目标动态UV信息;所述利用周期函数对所述基础方向信息构造周期性变化,得到动态方向信息,包括:
获取具有相位差的多个流动纹理周期函数;
利用所述多个流动纹理周期函数与所述基础方向信息分别相乘,并与所述岩浆模型的基准UV参数相加,得到所述多个流动纹理周期函数对应的多组动态UV信息;
对所述多组动态UV信息进行线性插值,得到所述目标动态UV信息。
14.一种游戏中的岩浆渲染装置,其特征在于,包括:
岩浆模型获取模块,被配置为获取游戏中的岩浆模型,并获取针对所述岩浆模型绘制的顶点颜色;
贴图烘焙模块,被配置为利用所述顶点颜色烘焙贴图,得到所述岩浆模型对应的顶点颜色遮罩图;
顶点动画信息处理模块,被配置为根据所述顶点颜色遮罩图的第一预设通道信息,确定所述岩浆模型的顶点动画信息;
自发光信息处理模块,被配置为根据所述顶点颜色遮罩图的第二预设通道信息,确定所述岩浆模型的自发光信息;所述自发光信息包括针对所述岩浆模型的至少部分区域的动态自发光信息;
渲染处理模块,被配置为基于所述自发光信息对所述岩浆模型渲染自发光效果,基于所述顶点动画信息对所述岩浆模型渲染顶点动画效果。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至13任一项所述的方法。
16.一种电子设备,其特征在于,包括:
处理器;
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至13任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311468055.0A CN117398686A (zh) | 2023-11-06 | 2023-11-06 | 游戏中的岩浆渲染方法、装置、存储介质与电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311468055.0A CN117398686A (zh) | 2023-11-06 | 2023-11-06 | 游戏中的岩浆渲染方法、装置、存储介质与电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117398686A true CN117398686A (zh) | 2024-01-16 |
Family
ID=89486928
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311468055.0A Pending CN117398686A (zh) | 2023-11-06 | 2023-11-06 | 游戏中的岩浆渲染方法、装置、存储介质与电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117398686A (zh) |
-
2023
- 2023-11-06 CN CN202311468055.0A patent/CN117398686A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ebert et al. | Texturing and modeling: a procedural approach | |
US7412362B2 (en) | River modeling | |
Schpok et al. | A real-time cloud modeling, rendering, and animation system | |
US6707458B1 (en) | Method and apparatus for texture tiling in a graphics system | |
CN115049811B (zh) | 一种数字孪生虚拟三维场景的编辑方法、系统及存储介质 | |
CN105184843B (zh) | 一种基于OpenSceneGraph的三维动画制作方法 | |
CN113457137B (zh) | 游戏场景生成方法、装置、计算机设备及可读存储介质 | |
WO2008014384A2 (en) | Real-time scenery and animation | |
Sinenko et al. | Automation of visualization process for organizational and technological design solutions | |
Corker-Marin et al. | 4d cubism: Modeling, animation, and fabrication of artistic shapes | |
CN110400366A (zh) | 一种基于OpenGL的实时洪水灾害可视化仿真方法 | |
Yan et al. | A non-photorealistic rendering method based on Chinese ink and wash painting style for 3D mountain models | |
CN117398686A (zh) | 游戏中的岩浆渲染方法、装置、存储介质与电子设备 | |
Zeman | Essential Skills for 3D Modeling, Rendering, and Animation | |
Jobst et al. | Mechanisms on graphical core variables in the design of cartographic 3D city presentations | |
Adzhiev et al. | Augmented sculpture: Computer ghosts of physical artifacts | |
Wang et al. | Computer Aided Animation Art Design and Production Based on Virtual Reality Technology | |
Jain | 3D Image Creation With Standard Light Effects | |
Smith et al. | Multicam: A system for interactive rendering of abstract digital images | |
CN118045352A (zh) | 流动效果的实现方法、装置、电子设备和计算机存储介质 | |
Isenberg et al. | 3D illustrative effects for animating line drawings | |
Gaya Walters | Raster Textures in Virtual Ray Tracer | |
Owada et al. | Volume Painter: Geometry-Guided Volume Modeling by Sketching on the Cross-Section. | |
Hu et al. | Dynamic Simulation and Real-time Rendering of Environmental Design Using Computer-aided Design and Multimedia Technology | |
Vijayalakshmi et al. | Architectural Visualisation using Virtual Reality |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |