CN111462293B - 三维角色模型的特效处理方法、装置、设备及存储介质 - Google Patents
三维角色模型的特效处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111462293B CN111462293B CN202010256305.4A CN202010256305A CN111462293B CN 111462293 B CN111462293 B CN 111462293B CN 202010256305 A CN202010256305 A CN 202010256305A CN 111462293 B CN111462293 B CN 111462293B
- Authority
- CN
- China
- Prior art keywords
- rendering
- character model
- mask
- result
- channel
- 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.)
- Active
Links
- 230000000694 effects Effects 0.000 title claims abstract description 112
- 238000003672 processing method Methods 0.000 title claims abstract description 16
- 238000003860 storage Methods 0.000 title claims abstract description 12
- 238000009877 rendering Methods 0.000 claims abstract description 421
- 238000012545 processing Methods 0.000 claims abstract description 92
- 230000008859 change Effects 0.000 claims abstract description 45
- 238000000034 method Methods 0.000 claims description 38
- 230000008569 process Effects 0.000 claims description 15
- 238000005520 cutting process Methods 0.000 claims description 11
- 238000005562 fading Methods 0.000 claims 6
- 238000004422 calculation algorithm Methods 0.000 abstract description 6
- 230000009471 action Effects 0.000 abstract description 5
- 238000013461 design Methods 0.000 description 29
- 230000001795 light effect Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 8
- 238000005286 illumination Methods 0.000 description 8
- 230000003111 delayed effect Effects 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 238000010422 painting Methods 0.000 description 5
- 230000003238 somatosensory effect Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 210000000689 upper leg Anatomy 0.000 description 3
- 210000001015 abdomen Anatomy 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000035807 sensation Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Geometry (AREA)
- Image Generation (AREA)
Abstract
本发明实施例提供了三维角色模型的特效处理方法、装置、设备及存储介质,在第二渲染通道上的顶点渲染阶段通过角色模型局部空间获取角色模型第一区域的第一遮罩和第二区域的第二遮罩,通过第一遮罩和第二遮罩共同作用,在初始渲染通道和第二渲染通道同时显示时角色模型仅第一区域和第二区域叠加部分添加外轮廓光;在第二渲染通道上的像素渲染阶段获取角色模型的局部空间的渐变处理结果;结合第二渲染通道顶点渲染结果和像素渲染结果,使得外轮廓光颜色渐变;结合第二渲染通道顶点渲染结果和像素渲染结果,最终得到角色模型外轮廓光的特效,丰富角色模型光影层次感,算法实现复杂度低,无需其他美术制作环节追加工作量或设置任何参数,可控性较强。
Description
技术领域
本发明涉及游戏开发领域,尤其涉及一种三维角色模型的特效处理方法、装置、设备及存储介质。
背景技术
在游戏开发过程中,美术设计人员通常会为了提升三维角色显示效果而进行多角度的布光,从而在游戏角色模型表现出轮廓光效果。
现有技术中通常采用RimLight技术实现角色轮廓光效果,其中RimLight泛指一种Shader(着色器)中常用的边缘光效果公式,Shader是利用相关的着色语言能驱动图形处理器进行图像渲染,是用来替代固定渲染管线的可编辑程序,而RimLight效果是在模型指向摄像机的一面输出为0,与摄像机垂直的一面输出为1,生成无论在任何视角下观察模型边缘都会有由外向内的光感,其本质是通过将模型法线方向与视点方向点乘并反转后,再乘以任意强度系数、颜色等参数,得出一个在任何视角下看模型边缘都会发亮的效果。在市面上的游戏里应用广泛,很多效果都可以基于上述的RimLight技术方案来实现,表现上也基本能满足大部分需求。
而当需要轮廓光清晰且只存在于角色外轮廓时,现有的RimLight技术方案最终表现得轮廓颜色是相对当前摄像机视角下所有模型体块的边缘,如果角色身上有很多装备细节,就会在模型剪影范围内也生成轮廓光效果,产生过多细碎高光,导致轮廓光效果本身喧宾夺主、破坏角色本体与轮廓光的主次关系。另外直接使用该方案,也无法直接模拟出轮廓光是来自于顶部且具有光衰减的特性。如图1所示,左图为原始角色模型,右图为通过RimLight技术方案得到的轮廓光效果,从图中可见RimLight技术方案得到的轮廓光效果边缘很难保持统一的勾边效果,会往模型内部延伸,即使只保留上半身的效果,模型内部结构也会受到些许影响,产生过多影响整体感的细节。
发明内容
本发明实施例提供一种三维角色模型的特效处理方法、装置、设备及存储介质,以对三维角色模型生成清晰的外轮廓光,并且外轮廓光具有明暗衰减效果,丰富玩家角色模型的光影层次感。
本发明实施例的第一方面是提供一种三维角色模型的特效处理方法,所述方法包括:
基于用于渲染角色模型的初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道;
根据所述角色模型的顶点数据,通过所述第二渲染通道基于所述角色模型的局部空间获取角色模型的第一区域的第一遮罩,并获取所述角色模型的第二区域的第二遮罩;
根据所述第一遮罩以及所述第二遮罩,得到所述第二渲染通道上的顶点渲染结果;
通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果,并根据所述渐变处理结果得到所述第二渲染通道上的像素渲染结果;
根据所述初始渲染通道的角色模型的渲染结果以及所述第二渲染通道的顶点渲染结果和像素渲染结果,得到具有所述特效的所述角色模型。
在一种可能的设计中,所述第一遮罩为在所述角色模型的第一区域的明暗渐变的遮罩,渐变方向为所述角色模型局部空间坐标系的第一方向;
所述通过所述第二渲染通道基于所述角色模型的局部空间获取角色模型的第一区域的第一遮罩,包括:
根据所述角色模型的第一区域范围参数、渐变程度参数以及第一预设公式,对所述角色模型的局部空间沿所述第一方向进行明暗渐变处理,获取所述第一遮罩。
在一种可能的设计中,所述第二遮罩为所述角色模型中法线方向朝向第二方向的第二区域的遮罩;
所述获取所述角色模型的第二区域的第二遮罩,包括:
根据所述角色模型顶点法线方向、以及第二预设公式,剔除所述角色模型中法线方向不朝向所述第二方向的区域,获取所述第二遮罩。
在一种可能的设计中,根据所述第一遮罩以及所述第二遮罩,得到所述第二渲染通道上的顶点渲染结果,包括:
将第一遮罩和第二遮罩进行叠加;
在所述角色模型的齐次坐标下,对第一遮罩和第二遮罩叠加的区域按照预定规则进行放大和偏移,得到所述第二渲染通道上的顶点渲染结果。
在一种可能的设计中,所述在所述角色模型的齐次坐标下,对第一遮罩和第二遮罩叠加的区域按照预定规则进行放大和偏移,得到所述第二渲染通道上的顶点渲染结果,包括:
根据第一偏移量对所述第一遮罩和第二遮罩叠加的区域进行齐次坐标xy方向的加法偏移,根据预设的第二偏移量对第一遮罩和第二遮罩叠加的区域进行齐次坐标z方向的减法偏移,得到所述第二渲染通道上的顶点渲染结果,其中所述顶点渲染结果中所述第一遮罩和第二遮罩叠加的区域轮廓较所述角色模型大、其余区域轮廓较所述角色模型小,且所述顶点渲染结果深度相较于所述角色模型更靠后。
在一种可能的设计中,所述角色模型的局部空间的渐变处理结果为所述角色模型的第一区域的颜色渐变结果,渐变方向为所述角色模型局部空间坐标系的第一方向;
所述通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果,包括:
根据所述角色模型的第一区域范围参数、渐变程度参数以及第三预设公式,对所述角色模型的局部空间沿所述第一方向进行颜色渐变处理,获取所述渐变处理结果。
在一种可能的设计中,所述根据所述渐变处理结果得到所述第二渲染通道上的像素渲染结果,包括:
根据预设的轮廓光颜色参数以及所述第二遮罩,对所述渐变处理结果进行颜色调整,得到所述第二渲染通道上的像素渲染结果。
在一种可能的设计中,在通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果后,还包括:
裁切掉所述渐变处理结果中颜色为黑色的部分。
在一种可能的设计中,所述基于用于渲染角色模型的初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道,包括:
在所述初始渲染通道对所述角色模型进行渲染处理之后、对所述角色模型进行蒙皮处理之前,基于所述初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道。
本发明实施例的第二方面是提供一种三维角色模型的特效处理装置,所述装置包括:
创建模块,用于基于用于渲染角色模型的初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道;
顶点渲染模块,用于根据所述角色模型的顶点数据,通过所述第二渲染通道基于所述角色模型的局部空间获取角色模型的第一区域的第一遮罩,并获取所述角色模型的第二区域的第二遮罩;根据所述第一遮罩以及所述第二遮罩,得到所述第二渲染通道上的顶点渲染结果;
像素渲染模块,用于通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果,并根据所述渐变处理结果得到所述第二渲染通道上的像素渲染结果;
输出模块,用于根据所述初始渲染通道的角色模型的渲染结果以及所述第二渲染通道的顶点渲染结果和像素渲染结果,得到具有所述特效的所述角色模型。
在一种可能的设计中,所述第一遮罩为在所述角色模型的第一区域的明暗渐变的遮罩,渐变方向为所述角色模型局部空间坐标系的第一方向;
所述顶点渲染模块在通过所述第二渲染通道基于所述角色模型的局部空间获取角色模型的第一区域的第一遮罩时,用于:
根据所述角色模型的第一区域范围参数、渐变程度参数以及第一预设公式,对所述角色模型的局部空间沿所述第一方向进行明暗渐变处理,获取所述第一遮罩。
在一种可能的设计中,所述第二遮罩为所述角色模型中法线方向朝向第二方向的第二区域的遮罩;
所述顶点渲染模块在获取所述角色模型的第二区域的第二遮罩时,用于:
根据所述角色模型顶点法线方向、以及第二预设公式,剔除所述角色模型中法线方向不朝向所述第二方向的区域,获取所述第二遮罩。
在一种可能的设计中,所述顶点渲染模块在根据所述第一遮罩以及所述第二遮罩,得到所述第二渲染通道上的顶点渲染结果时,用于:
将第一遮罩和第二遮罩进行叠加;
在所述角色模型的齐次坐标下,对第一遮罩和第二遮罩叠加的区域按照预定规则进行放大和偏移,得到所述第二渲染通道上的顶点渲染结果。
在一种可能的设计中,所述顶点渲染模块在所述角色模型的齐次坐标下,对第一遮罩和第二遮罩叠加的区域按照预定规则进行放大和偏移,得到所述第二渲染通道上的顶点渲染结果时,用于:
根据第一偏移量对所述第一遮罩和第二遮罩叠加的区域进行齐次坐标xy方向的加法偏移,根据预设的第二偏移量对第一遮罩和第二遮罩叠加的区域进行齐次坐标z方向的减法偏移,得到所述第二渲染通道上的顶点渲染结果,其中所述顶点渲染结果中所述第一遮罩和第二遮罩叠加的区域轮廓较所述角色模型大、其余区域轮廓较所述角色模型小,且所述顶点渲染结果深度相较于所述角色模型更靠后。
在一种可能的设计中,所述角色模型的局部空间的渐变处理结果为所述角色模型的第一区域的颜色渐变结果,渐变方向为所述角色模型局部空间坐标系的第一方向;
所述像素渲染模块通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果时,用于:
根据所述角色模型的第一区域范围参数、渐变程度参数以及第三预设公式,对所述角色模型的局部空间沿所述第一方向进行颜色渐变处理,获取所述渐变处理结果。
在一种可能的设计中,所述像素渲染模块在根据所述渐变处理结果得到所述第二渲染通道上的像素渲染结果时,用于:
根据预设的轮廓光颜色参数以及所述第二遮罩,对所述渐变处理结果进行颜色调整,得到所述第二渲染通道上的像素渲染结果。
在一种可能的设计中,所述像素渲染模块在通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果后,还用于:
裁切掉所述渐变处理结果中颜色为黑色的部分。
在一种可能的设计中,所述创建模块在基于用于渲染角色模型的初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道时,用于:
在所述初始渲染通道对所述角色模型进行渲染处理之后、对所述角色模型进行蒙皮处理之前,基于所述初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道。
本发明实施例的第三方面是提供一种电子设备,包括:可显示图形用户界面的显示单元、震动单元、处理器和存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面所述的方法。
本发明实施例的第四方面是提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如第一方面所述的方法。
本发明实施例提供的三维角色模型的特效处理方法、装置、设备及存储介质,在第二渲染通道上的顶点渲染阶段通过角色模型局部空间获取角色模型第一区域的第一遮罩和第二区域的第二遮罩,通过第一遮罩和第二遮罩的共同作用,使得在初始渲染通道和第二渲染通道同时显示时角色模型仅第一区域和第二区域叠加部分添加外轮廓光,在第二渲染通道上的像素渲染阶段获取角色模型的局部空间的渐变处理结果,使得外轮廓光颜色沿远离光源方向渐变;结合第二渲染通道顶点渲染结果和像素渲染结果,最终得到所需要的角色模型呈现外轮廓光的特效,可以满足概念设计阶段的原画效果,丰富玩家角色模型的光影层次感,从而提升其体感表现;并且算法实现复杂度低,可节省追加灯光的性能消耗;无需其他美术制作环节追加工作量或设置任何参数,可提高工作效率;独立于其他光照效果,无论前向渲染还是延迟渲染皆可保持效果一致,可控性较强。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为背景技术提供的通过RimLight技术方案得到的轮廓光效果示意图;
图2为本发明实施例提供的三维角色模型的特效处理方法流程图;
图3为本发明实施例提供的角色模型的局部空间的示意图;
图4为本发明实施例提供的角色模型上半身的明暗渐变的第一遮罩的示意图;
图5为本发明实施例提供的角色模型中法线方向向上区域的第二遮罩的示意图;
图6为本发明实施例提供的应用第二遮罩前后的对比效果示意图;
图7为本发明实施例提供的第一遮罩和第二遮罩进行叠加的示意图;
图8为本发明实施例提供的第一遮罩和第二遮罩叠加区域在齐次坐标xy方向的加法偏移对比效果示意图;
图9为本发明实施例提供的第一遮罩和第二遮罩叠加区域在齐次坐标z方向的减法偏移对比效果的示意图;
图10为本发明实施例提供的未经第三预设公式计算只输出轮廓光的效果的示意图;
图11为本发明实施例提供的角色模型局部空间的渐变颜色结果的示意图;
图12为本发明实施例提供的只保留法线方向向上的区域的渐变颜色结果的示意图;
图13为本发明实施例提供的裁切对比效果的示意图;
图14为本发明实施例提供的经裁切后的第二渲染通道上的像素渲染结果的示意图;
图15为本发明实施例提供的外轮廓效果对比示意图;
图16为本发明实施例提供的三维角色模型的特效处理装置的结构图;
图17为本发明实施例提供的电子设备的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。此外,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。
由于现有的RimLight技术方案得到的轮廓光效果边缘很难保持统一的勾边效果,会往模型内部延伸,即使只保留上半身的效果,模型内部结构也会受到些许影响,产生过多影响整体感的细节。因此本发明中基于用于渲染角色模型的初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道,通过初始渲染通道和第二渲染通道的叠加,从而呈现出清晰的角色模型外轮廓光的特效。
具体的,可以在第二渲染通道上的顶点渲染阶段通过角色模型局部空间获取角色模型第一区域的第一遮罩和第二区域的第二遮罩,通过第一遮罩和第二遮罩的共同作用,使得在初始渲染通道和第二渲染通道同时显示时角色模型仅第一区域和第二区域叠加部分添加外轮廓光,在第二渲染通道上的像素渲染阶段获取角色模型的局部空间的渐变处理结果,使得外轮廓光颜色沿远离光源方向渐变;结合第二渲染通道顶点渲染结果和像素渲染结果,最终得到所需要的角色模型呈现外轮廓光的特效,可以满足概念设计阶段的原画效果,丰富玩家角色模型的光影层次感,从而提升其体感表现;并且算法实现复杂度低,可节省追加灯光的性能消耗;无需其他美术制作环节追加工作量或设置任何参数,可提高工作效率;独立于其他光照效果,无论前向渲染还是延迟渲染皆可保持效果一致,可控性较强。
下面结合实施例对本发明的三维角色模型的特效处理过程进行详细说明。
图2为本发明实施例提供的三维角色模型的特效处理方法流程图。本实施例提供了一种三维角色模型的特效处理方法,应用于电子设备。如图2所示,该方法具体步骤如下:
S101、基于用于渲染角色模型的初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道。
在本实施例中,在初始渲染通道上对初始的三维角色模型进行渲染,通过着色器(Shader)进行顶点渲染和像素渲染,但初始渲染通道在角色模型的外轮廓并不产生轮廓光效果。因此,本实施例初始渲染通道的基础上创建第二渲染通道(第二Pass,Pass语句块可以使一个模型被渲染一次,每个pass都可以设置不同的渲染状态),在第二渲染通道上进行下述的处理来渲染角色模型的特效,实现对角色模型产生外轮廓光效果。
其中,角色模型的特效为角色模型外轮廓光的特效,例如若光源位于角色模型的上方,则角色模型外轮廓光的特效可以为仅上半身的法线方向向上区域存在外轮廓光、且外轮廓光从上至下渐暗的轮廓光效果;若光源位于角色模型的侧方,例如光源位于角色模型的左侧,则角色模型外轮廓光的特效可以为仅左半身的法线方向向左区域存在外轮廓光、且外轮廓光从左至右渐暗的轮廓光效果;也即角色模型外轮廓光的特效根据光源与角色模型的相对位置来确定,当光源位于角色模型的其他位置处时角色模型外轮廓光的特效此处不再一一赘述。下述实施例中仅以光源位于角色模型的上方的情况为例。
在一种可选实施例中,为了使角色模型在运动时外轮廓光效果保持不变,本实施例的三维角色模型的特效处理方法在对角色模型进行蒙皮处理前进行,也即本实施例中的角色模型为未经蒙皮处理的角色模型,在初始渲染通道对角色模型进行渲染处理之后、对角色模型进行蒙皮处理之前,基于初始渲染通道创建用于渲染角色模型的特效的第二渲染通道。
S102、根据所述角色模型的顶点数据,通过所述第二渲染通道基于所述角色模型的局部空间获取角色模型的第一区域的第一遮罩,并获取所述角色模型的第二区域的第二遮罩。
在本实施例中,在顶点渲染阶段,当光源位于角色模型的上方时,为了实现角色模型只有上半身(腹部以上)、法线方向向上的区域(例如肩部、头部)有轮廓光,可在第二渲染通道上将角色模型局部空间中角色模型上半身作为第一区域,并获取第一区域的第一遮罩,以角色模型中法线方向向上区域作为第二区域,并获取第二区域的第二遮罩。当然在光源位于角色模型的其他位置处时需要相应的调整第一区域和第二区域,第一区域为角色模型靠近光源一侧的区域,第二区域为法线方向朝向光源的区域,例如光源位于角色模型的左侧,则第一区域为角色模型左半身区域,第二区域为法线方向向左的区域。
需要说明的是,本实施例中是对角色模型进行特效处理,因此需要在角色模型的局部空间中进行特效的处理和呈现;当然若需要对其他目标进行特效处理,则可选择该目标对应的空间进行特效的处理和呈现,例如对整个界面进行特效处理,则选择整个界面对应的空间进行特效的处理和呈现。
S103、根据所述第一遮罩以及所述第二遮罩,得到所述第二渲染通道上的顶点渲染结果。
在本实施例中,在通过第二渲染通道基于所述角色模型的局部空间获取角色模型的获取到第一遮罩、以及第二遮罩后,可将第一遮罩和第二遮罩进行叠加,得到第一区域和第二区域叠加区域的遮罩,进而根据第一区域和第二区域叠加区域的遮罩可得到所述第二渲染通道上的顶点渲染结果。
S104、通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果,并根据所述渐变处理结果得到所述第二渲染通道上的像素渲染结果。
在本实施例中,在像素渲染阶段,为了实现角色模型外轮廓光颜色渐变的效果,也即靠近光源处的轮廓光更亮,原理光源处的轮廓光更暗,因此在第二渲染通道上获取角色模型局部空间的颜色的渐变处理结果,并根据渐变处理结果得到第二渲染通道上的像素渲染结果。
S105、根据所述初始渲染通道的角色模型的渲染结果以及所述第二渲染通道的顶点渲染结果和像素渲染结果,得到具有所述特效的所述角色模型。
在本实施例中,在得到第二渲染通道的顶点渲染结果和像素渲染结果后,在显示阶段可同时显示初始渲染通道和第二渲染通道,第二渲染通道上同时显示顶点渲染结果和像素渲染结果,从而完成角色模型的轮廓光处理过程,由于初始渲染通道上呈现的是角色模型,第二渲染通道上呈现的是顶点渲染结果和像素渲染结果,初始渲染通道的角色模型档在第二渲染通道之前,仅仅露出顶点渲染结果和像素渲染结果的边缘部分没有被角色模型遮挡,形成外轮廓光效果,从而得到所需要的角色模型外轮廓光的特效。
本实施例提供的三维角色模型的特效处理方法,在第二渲染通道上的顶点渲染阶段通过角色模型局部空间获取角色模型第一区域的第一遮罩和第二区域的第二遮罩,通过第一遮罩和第二遮罩的共同作用,使得在初始渲染通道和第二渲染通道同时显示时角色模型仅第一区域和第二区域叠加部分添加外轮廓光,在第二渲染通道上的像素渲染阶段获取角色模型的局部空间的渐变处理结果,使得外轮廓光颜色沿远离光源方向渐变;结合第二渲染通道顶点渲染结果和像素渲染结果,最终得到所需要的角色模型呈现外轮廓光的特效,可以满足概念设计阶段的原画效果,丰富玩家角色模型的光影层次感,从而提升其体感表现;并且算法实现复杂度低,可节省追加灯光的性能消耗;无需其他美术制作环节追加工作量或设置任何参数,可提高工作效率;独立于其他光照效果,无论前向渲染还是延迟渲染皆可保持效果一致,可控性较强。
在上述实施例的基础上,所述第一遮罩为在所述角色模型的第一区域的明暗渐变的遮罩,渐变方向为所述角色模型局部空间坐标系的第一方向,其中第一方向为远离光源的方向;S102中所述的通过所述第二渲染通道基于所述角色模型的局部空间获取角色模型的第一区域的第一遮罩,可具体包括:
根据所述角色模型的第一区域范围参数、渐变程度参数以及第一预设公式,对所述角色模型的局部空间沿所述第一方向进行明暗渐变处理,获取所述第一遮罩。
在本实施例中,当光源位于角色模型上方时,可根据角色模型上半身范围参数、渐变程度参数以及第一预设公式,对所述角色模型局部空间坐标系的y方向进行明暗渐变处理,获取所述角色模型上半身的明暗渐变的第一遮罩。具体的,可首先获取角色模型的局部空间,对角色模型的局部空间以第一预设公式pow(saturate(OUT.Ori_LocalPosition.y-a),b)进行计算,即可的到角色模型上半身明暗渐变的第一遮罩,其中OUT.Ori_LocalPosition.y为角色模型局部空间坐标系的y方向(方向向量);a为角色模型上半身范围参数,本实施例中以0至1表示角色模型从头至脚全身范围,取一个小于1的数值、以0至a表示角色模型上半身范围,优选的,a可以取0.7;b为渐变程度参数,表征上半身从上至下对应光照强度由明至暗的渐变程度,优选的,b可以取2。具体的,未经第一预设公式计算前(也即直接输出OUT.Ori_LocalPosition.y),角色模型的局部空间如图3所示,而经过第一预设公式计算后得到的角色模型上半身的明暗渐变的第一遮罩如图4所示,从大腿部位以下为黑色,而从头顶到大腿部位则是由明至暗渐变。
需要说明的是,对于光源位于角色模型的其他位置处的情况仅需相应的改变坐标方向即可,此处不再赘述。
在上述任一实施例的基础上,所述第二遮罩为所述角色模型中法线方向朝向第二方向的第二区域的遮罩,其中第二方向为朝向光源的方向;S102中所述的获取所述角色模型的第二区域的第二遮罩,具体可包括:
根据所述角色模型顶点法线方向、以及第二预设公式,剔除所述角色模型中法线方向不朝向所述第二方向的区域,获取所述第二遮罩。
在本实施例中,当光源位于角色模型上方时,可根据所述角色模型顶点法线方向、以及第二预设公式,剔除所述角色模型中法线方向不向上的区域,获取所述角色模型中法线方向向上区域的第二遮罩。具体的,可首先通过矩阵转换得出角色模型世界坐标、顶点法线、以及齐次坐标。进一步的,将角色模型的世界坐标以第二预设公式normalize(dot(WorldNormal,float3(0,1,0)))进行计算,其中WorldNormal为角色模型世界坐标的xyz方向(方向向量),normalize函数的作用是剔除角色模型中法线方向不向上的区域,而对法线方向向上区域进行明暗渐变处理,即可得出角色模型中法线方向向上区域的第二遮罩。角色模型中法线方向向上区域的第二遮罩如图5所示,其中角色模型中法线方向向上区域为白色,而其他区域则为黑色。在初始渲染通道和第二渲染通道同时显示时,如图6所示,左图中未应用法线方向向上区域的第二遮罩,会在角色模型的腋下与胳膊下方(箭头处)等位置也产生轮廓光,与实际光照情况不符,而应用了法线方向向上区域的第二遮罩后,则只有法线朝上的肩部与头部会有轮廓光。
需要说明的是,同样的,对于光源位于角色模型的其他位置处的情况仅需相应的改变坐标方向即可,此处不再赘述。
在上述任一实施例的基础上,S103所述的根据所述第一遮罩以及所述第二遮罩,得到所述第二渲染通道上的顶点渲染结果,具体可包括:
将第一遮罩和第二遮罩进行叠加;并在所述角色模型的齐次坐标下,对第一遮罩和第二遮罩叠加的区域按照预定规则进行放大和偏移,得到所述第二渲染通道上的顶点渲染结果。
在本实施例中,使角色模型仅在第一遮罩和第二遮罩叠加的区域具有外轮廓,因此通过第一遮罩和第二遮罩的叠加得到第一遮罩和第二遮罩叠加的区域;进一步的,通过对第一遮罩和第二遮罩叠加的区域进行放大,可以在初始渲染通道和第二渲染通道同时显示时,第二通道的第一遮罩和第二遮罩叠加的区域的边缘部分显露与初始渲染通道的角色模型之外,形成外轮廓光效果;此外,通过对第一遮罩和第二遮罩叠加的区域进行偏移,可以使第一遮罩和第二遮罩叠加的区域的深度较初始渲染通道的角色模型更靠后一点,在初始渲染通道和第二渲染通道同时显示时第一遮罩和第二遮罩叠加的区域不与角色模型相互穿插,可以只保留外轮廓光效果。
更具体的,可以根据第一偏移量对所述第一遮罩和第二遮罩叠加的区域进行齐次坐标xy方向的加法偏移,根据预设的第二偏移量对第一遮罩和第二遮罩叠加的区域进行齐次坐标z方向的减法偏移,得到所述第二渲染通道上的顶点渲染结果,其中所述顶点渲染结果中所述第一遮罩和第二遮罩叠加的区域轮廓较所述角色模型大、其余区域轮廓较所述角色模型小,且所述顶点渲染结果深度相较于所述角色模型更靠后。
在本实施例中,首先将第二渲染通道第一遮罩和第二遮罩效果叠加,通过公式:第一遮罩*第二遮罩,进行叠加,对于光源位于角色模型上方的情况可得到如图7所示的上半身法线方向向上区域明暗渐变的效果。进一步的,通过对第一遮罩和第二遮罩叠加的区域进行齐次坐标xy方向的加法偏移可以使得第一遮罩和第二遮罩叠加的区域放大,较角色模型更大,从而在初始渲染通道和第二渲染通道同时显示时,第二通道的第一遮罩和第二遮罩叠加的区域的边缘部分显露与初始渲染通道的角色模型之外,形成外轮廓光效果,具体的,在初始渲染通道和第二渲染通道同时显示时,如图8所示,左图为没有经过两个遮罩影响的外轮廓光效果;而右图为被两个遮罩影响的外轮廓光效果,通过加法偏移,上半身的法线方向向上区域的外轮廓被放大,显露在角色模型之外,而其他区域的轮廓则越来越细、直到比角色模型还小,不显露在角色模型之外。本实施例中在齐次坐标的xy方向的第一偏移量为预设轮廓光强度参数、所述第一遮罩、所述第二遮罩的乘积,其中预设轮廓光强度参数越大,第一遮罩和第二遮罩叠加的区域放大得越多,第二通道的第一遮罩和第二遮罩叠加的区域的边缘部分越多的显露于初始渲染通道的角色模型之外,也即轮廓光强度越强,则外轮廓光效果越明显。而对于第一遮罩和第二遮罩叠加的区域之外的区域,通过齐次坐标xy方向的加法偏移,第一遮罩和第二遮罩叠加的区域之外的区域被一定程度的缩小,也即角色模型下半身区域以及法线方向不向上的区域轮廓越来越细、甚至比角色模型还小。
通过对第二渲染通道第一遮罩和第二遮罩叠加的区域进行齐次坐标z方向的减法偏移,可以使第一遮罩和第二遮罩叠加的区域的深度较初始渲染通道的角色模型更靠后一点,在初始渲染通道和第二渲染通道同时显示时第一遮罩和第二遮罩叠加的区域不与角色模型相互穿插,可以只保留外轮廓光效果,具体的,在初始渲染通道和第二渲染通道同时显示时,如图9所示,左图为未进行齐次坐标z方向的减法偏移的情况,可见第一遮罩和第二遮罩叠加的区域与角色模型发生相互穿插;而右图为进行了齐次坐标z方向的减法偏移的情况,可见第一遮罩和第二遮罩叠加的区域与角色模型未发生穿插,可以只保留外轮廓光效果。可选的,进行齐次坐标z方向的减法偏移时的预设的第二偏移量可取0.01,可根据实际需求取值。
通过上述的处理过程即可得到所述第二渲染通道上的顶点渲染结果。进一步的,可输出模型的第一层UV空间,为像素渲染阶段读取贴图做准备;此外也可将第二遮罩输出给像素渲染阶段。
在上述任一实施例的基础上,所述角色模型的局部空间的渐变处理结果为所述角色模型的第一区域的颜色渐变结果,渐变方向为所述角色模型局部空间坐标系的第一方向;S104所述的通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果,具体可包括:
根据所述角色模型的第一区域范围参数、渐变程度参数以及第三预设公式,对所述角色模型的局部空间沿所述第一方向进行颜色渐变处理,获取所述渐变处理结果。
在本实施例中,当光源位于角色模型上方时,可根据角色模型上半身范围参数、渐变程度参数以及第三预设公式,对所述角色模型局部空间坐标系的y方向进行颜色渐变处理,获取所述角色模型局部空间的渐变颜色结果。具体的,与上述获取角色模型上半身的明暗渐变的第一遮罩过程相类似,可对角色模型局部空间以第三预设公式pow(saturate(IN.Ori_LocalPosition.y-a),b)进行计算,对角色模型局部空间坐标系的y方向进行颜色渐变处理,获取角色模型局部空间的渐变颜色结果,上半身的上部较明下部较暗,其中IN.Ori_LocalPosition.y为从顶点渲染阶段传来的角色模型局部空间坐标的y方向(方向向量);a为角色模型上半身范围参数,本实施例中以0至1表示角色模型从头至脚全身范围,取一个小于1的数值、以0至a表示角色模型上半身范围,优选的,a可以取0.55,较第一预设公式中的a更小,也即像素渲染阶段所渲染的角色模型上半身范围比顶点阶段角色模型上半身范围更小(例如顶点阶段角色模型上半身范围为头顶至大腿处,而像素渲染阶段角色模型上半身范围为头顶至腹部);b为渐变程度参数,表征上半身从上至下对应光照强度由明至暗的渐变程度,优选的,b可以取5,较第一预设公式中的b更大,由明至暗的渐变程度更大。通过a、b数值的设置角色模型局部空间的渐变颜色结果与角色模型上半身的明暗渐变的第一遮罩的位置和明暗渐变程度不同,可得到更好的轮廓光颜色渐变效果。具体的,图10为未经第三预设公式计算只输出轮廓光的效果,经第三预设公式计算后可得到如图11所示的角色模型局部空间的渐变颜色结果,上半身的上部较明下部较暗。
需要说明的是,对于光源位于角色模型的其他位置处的情况仅需相应的改变坐标方向即可,此处不再赘述。
进一步的,在上述实施例的基础上,所述根据所述渐变处理结果得到所述第二渲染通道上的像素渲染结果,具体包括:
根据预设的轮廓光颜色参数以及所述第二遮罩,对所述渐变处理结果进行颜色调整,得到所述第二渲染通道上的像素渲染结果。
在本实施例中,不同颜色的光源照射在角色模型上可能呈现出不同颜色的外轮廓光,例如红色的光照射在角色模型上可能呈现出红色的外轮廓光,因此本实施例中根据预设的轮廓光颜色参数对角色模型局部空间的渐变颜色结果进行颜色调整。本实施例中,可根据公式:轮廓光颜色参数*角色模型局部空间的渐变颜色结果*第二遮罩,得到颜色调整后的角色模型局部空间的渐变颜色结果,通过乘第二遮罩,可只保留法线方向向上的区域的渐变颜色结果,如图12所示。
进一步的,在上述实施例的基础上,在通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果后,还可包括:
裁切掉所述渐变处理结果中颜色为黑色的部分。
在本实施例中,为了防止在初始渲染通道和第二渲染通道同时显示时,第二渲染通道角色模型局部空间的渐变颜色结果中颜色为黑色的部分显露于初始渲染通道的角色模型之外,因此可对角色模型局部空间的渐变颜色结果中颜色为黑色的部分进行裁切,如图13所示,左图为未经裁切的情况,角色模型下身装备(箭头处)的透贴部分露出了第二渲染通道角色模型局部空间的渐变颜色结果中颜色为黑色的部分;而右图为将第二通道角色模型局部空间的渐变颜色结果中颜色为黑色的部分裁切后则不会再露出。本实施例中,采用clip函数对角色模型局部空间的渐变颜色结果进行像素裁切。可选的,可在clip裁切前可将采样模型贴图的透明通道与顶点渲染结果相乘,进而对结果中黑色部分采用clip函数裁切。在裁切时,将角色模型局部空间的渐变颜色结果减去预定数值,实现控制裁切范围的作用,例如,原本clip函数可对颜色结果为大于0.5的区域不进行渲染实现透明裁切,而角色模型局部空间的渐变颜色结果减去预定数值后,例如减去0.1,则clip函数可对颜色结果为大于0.4的区域不进行渲染实现透明裁切,从而控制了裁切范围的大小。
在像素渲染阶段通过上述过程可得到如图14所示的经裁切后的第二渲染通道上的像素渲染结果。
在上述实施例的基础上,最后可根据所述初始渲染通道的角色模型的渲染结果以及所述第二渲染通道的顶点渲染结果和像素渲染结果,得到具有所述特效的所述角色模型。
例如当光源位于角色模型上方时,在得到第二渲染通道的顶点渲染结果和像素渲染结果后,在显示阶段可同时显示初始渲染通道和第二渲染通道,第二渲染通道上同时显示顶点渲染结果和像素渲染结果,从而完成角色模型的轮廓光处理过程,得到仅上半身的法线方向向上区域存在外轮廓光、且外轮廓光从上至下渐暗的角色模型。具体如图15所示,右图为本实施例得到的仅上半身的法线方向向上区域存在外轮廓光、且外轮廓光从上至下渐暗的角色模型,而左图为直接输出轮廓光颜色(也即将图10所示的轮廓光直接叠加到角色模型上)的情况,对比箭头处,右图外轮廓光存在颜色渐变的效果,而左图外轮廓光无颜色渐变的效果。
上述各实施例提供的三维角色模型的特效处理方法,在第二渲染通道上的顶点渲染阶段通过角色模型局部空间获取角色模型第一区域的第一遮罩和第二区域的第二遮罩的共同作用,使得在初始渲染通道和第二渲染通道同时显示时角色模型仅第一区域和第二区域叠加部分存在外轮廓光,在第二渲染通道上的像素渲染阶段获取角色模型的局部空间的渐变处理结果,使得外轮廓光颜色沿远离光源方向渐变;结合第二渲染通道顶点渲染结果和像素渲染结果,最终得到所需要的角色模型外轮廓光的特效,可以满足概念设计阶段的原画效果,丰富玩家角色模型的光影层次感,从而提升其体感表现;并且算法实现复杂度低,可节省追加灯光的性能消耗;无需其他美术制作环节追加工作量或设置任何参数,可提高工作效率;独立于其他光照效果,无论前向渲染还是延迟渲染皆可保持效果一致,可控性较强。
图16为本发明实施例提供的三维角色模型的特效处理装置的结构图。本实施例提供的三维角色模型的特效处理装置应用于电子设备,可以执行三维角色模型的特效处理方法实施例提供的处理流程,如图16所示,所述三维角色模型的特效处理装置200包括创建模块201、顶点渲染模块202、像素渲染模块203以及输出模块204。
创建模块201,用于基于用于渲染角色模型的初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道;
顶点渲染模块202,用于根据所述角色模型的顶点数据,通过所述第二渲染通道基于所述角色模型的局部空间获取角色模型的第一区域的第一遮罩,并获取所述角色模型的第二区域的第二遮罩;根据所述第一遮罩以及所述第二遮罩,得到所述第二渲染通道上的顶点渲染结果;
像素渲染模块203,用于通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果,并根据所述渐变处理结果得到所述第二渲染通道上的像素渲染结果;
输出模块204,用于根据所述初始渲染通道的角色模型的渲染结果以及所述第二渲染通道的顶点渲染结果和像素渲染结果,得到具有所述特效的所述角色模型。
在一种可能的设计中,所述第一遮罩为在所述角色模型的第一区域的明暗渐变的遮罩,渐变方向为所述角色模型局部空间坐标系的第一方向;
所述顶点渲染模块202在通过所述第二渲染通道基于所述角色模型的局部空间获取角色模型的第一区域的第一遮罩时,用于:
根据所述角色模型的第一区域范围参数、渐变程度参数以及第一预设公式,对所述角色模型的局部空间沿所述第一方向进行明暗渐变处理,获取所述第一遮罩。
在一种可能的设计中,所述第二遮罩为所述角色模型中法线方向朝向第二方向的第二区域的遮罩;所述顶点渲染模块202在获取所述角色模型的第二区域的第二遮罩时,用于:
根据所述角色模型顶点法线方向、以及第二预设公式,剔除所述角色模型中法线方向不朝向所述第二方向的区域,获取所述第二遮罩。
在一种可能的设计中,所述顶点渲染模块202在根据所述第一遮罩以及所述第二遮罩,得到所述第二渲染通道上的顶点渲染结果时,用于:
将第一遮罩和第二遮罩进行叠加;
在所述角色模型的齐次坐标下,对第一遮罩和第二遮罩叠加的区域按照预定规则进行放大和偏移,得到所述第二渲染通道上的顶点渲染结果。
在一种可能的设计中,所述顶点渲染模块202在所述角色模型的齐次坐标下,对第一遮罩和第二遮罩叠加的区域按照预定规则进行放大和偏移,得到所述第二渲染通道上的顶点渲染结果时,用于:
根据第一偏移量对所述第一遮罩和第二遮罩叠加的区域进行齐次坐标xy方向的加法偏移,根据预设的第二偏移量对第一遮罩和第二遮罩叠加的区域进行齐次坐标z方向的减法偏移,得到所述第二渲染通道上的顶点渲染结果,其中所述顶点渲染结果中所述第一遮罩和第二遮罩叠加的区域轮廓较所述角色模型大、其余区域轮廓较所述角色模型小,且所述顶点渲染结果深度相较于所述角色模型更靠后。
在一种可能的设计中,所述角色模型的局部空间的渐变处理结果为所述角色模型的第一区域的颜色渐变结果,渐变方向为所述角色模型局部空间坐标系的第一方向;
所述像素渲染模块203通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果时,用于:
根据所述角色模型的第一区域范围参数、渐变程度参数以及第三预设公式,对所述角色模型的局部空间沿所述第一方向进行颜色渐变处理,获取所述渐变处理结果。
在一种可能的设计中,所述像素渲染模块203在根据所述渐变处理结果得到所述第二渲染通道上的像素渲染结果时,用于:
根据预设的轮廓光颜色参数以及所述第二遮罩,对所述渐变处理结果进行颜色调整,得到所述第二渲染通道上的像素渲染结果。
在一种可能的设计中,所述像素渲染模块203在通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果后,还用于:
裁切掉所述渐变处理结果中颜色为黑色的部分。
在一种可能的设计中,所述创建模块201在基于用于渲染角色模型的初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道时,用于:
在所述初始渲染通道对所述角色模型进行渲染处理之后、对所述角色模型进行蒙皮处理之前,基于所述初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道。
本发明实施例提供的三维角色模型的特效处理装置可以具体用于执行上述图2所提供的方法实施例,具体功能此处不再赘述。
本发明实施例三维角色模型的特效处理装置,在第二渲染通道上的顶点渲染阶段通过角色模型局部空间获取角色模型第一区域的第一遮罩和第二区域的第二遮罩,通过第一遮罩和第二遮罩的共同作用,使得在初始渲染通道和第二渲染通道同时显示时角色模型仅第一区域和第二区域叠加部分添加外轮廓光,在第二渲染通道上的像素渲染阶段获取角色模型的局部空间的渐变处理结果,使得外轮廓光颜色沿远离光源方向渐变;结合第二渲染通道顶点渲染结果和像素渲染结果,最终得到所需要的角色模型呈现外轮廓光的特效,可以满足概念设计阶段的原画效果,丰富玩家角色模型的光影层次感,从而提升其体感表现;并且算法实现复杂度低,可节省追加灯光的性能消耗;无需其他美术制作环节追加工作量或设置任何参数,可提高工作效率;独立于其他光照效果,无论前向渲染还是延迟渲染皆可保持效果一致,可控性较强。
图17为本发明实施例提供的电子设备的结构示意图。本发明实施例提供的电子设备可以执行三维角色模型的特效处理方法实施例提供的处理流程,如图17所示,电子设备300包括处理器301、存储器302、通讯接口303;其中,处理器301、存储器302以及通讯接口303通过总线304连接。其中,计算机程序存储在存储器302中,并被配置为由处理器301执行以上实施例所述的三维角色模型的特效处理方法。
图17所示实施例的电子设备可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
另外,本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现上述实施例所述的三维角色模型的特效处理方法。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (18)
1.一种三维角色模型的特效处理方法,其特征在于,包括:
基于用于渲染角色模型的初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道;
根据所述角色模型的顶点数据,通过所述第二渲染通道基于所述角色模型的局部空间获取角色模型的第一区域的第一遮罩,并获取所述角色模型的第二区域的第二遮罩;
根据所述第一遮罩以及所述第二遮罩,得到所述第二渲染通道上的顶点渲染结果;
通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果,并根据所述渐变处理结果得到所述第二渲染通道上的像素渲染结果;
根据所述初始渲染通道的角色模型的渲染结果以及所述第二渲染通道的顶点渲染结果和像素渲染结果,得到具有所述特效的所述角色模型;
根据所述第一遮罩以及所述第二遮罩,得到所述第二渲染通道上的顶点渲染结果,包括:
将第一遮罩和第二遮罩进行叠加;
在所述角色模型的齐次坐标下,对第一遮罩和第二遮罩叠加的区域按照预定规则进行放大和偏移,得到所述第二渲染通道上的顶点渲染结果。
2.根据权利要求1所述的方法,其特征在于,所述第一遮罩为在所述角色模型的第一区域的明暗渐变的遮罩,渐变方向为所述角色模型局部空间坐标系的第一方向;
所述通过所述第二渲染通道基于所述角色模型的局部空间获取角色模型的第一区域的第一遮罩,包括:
根据所述角色模型的第一区域范围参数、渐变程度参数以及第一预设公式,对所述角色模型的局部空间沿所述第一方向进行明暗渐变处理,获取所述第一遮罩。
3.根据权利要求1所述的方法,其特征在于,所述第二遮罩为所述角色模型中法线方向朝向第二方向的第二区域的遮罩;
所述获取所述角色模型的第二区域的第二遮罩,包括:
根据所述角色模型顶点法线方向、以及第二预设公式,剔除所述角色模型中法线方向不朝向所述第二方向的区域,获取所述第二遮罩。
4.根据权利要求1所述的方法,其特征在于,所述在所述角色模型的齐次坐标下,对第一遮罩和第二遮罩叠加的区域按照预定规则进行放大和偏移,得到所述第二渲染通道上的顶点渲染结果,包括:
根据第一偏移量对所述第一遮罩和第二遮罩叠加的区域进行齐次坐标xy方向的加法偏移,根据预设的第二偏移量对第一遮罩和第二遮罩叠加的区域进行齐次坐标z方向的减法偏移,得到所述第二渲染通道上的顶点渲染结果,其中所述顶点渲染结果中所述第一遮罩和第二遮罩叠加的区域轮廓较所述角色模型大、其余区域轮廓较所述角色模型小,且所述顶点渲染结果深度相较于所述角色模型更靠后。
5.根据权利要求1所述的方法,其特征在于,所述角色模型的局部空间的渐变处理结果为所述角色模型的第一区域的颜色渐变结果,渐变方向为所述角色模型局部空间坐标系的第一方向;
所述通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果,包括:
根据所述角色模型的第一区域范围参数、渐变程度参数以及第三预设公式,对所述角色模型的局部空间沿所述第一方向进行颜色渐变处理,获取所述渐变处理结果。
6.根据权利要求5所述的方法,其特征在于,所述根据所述渐变处理结果得到所述第二渲染通道上的像素渲染结果,包括:
根据预设的轮廓光颜色参数以及所述第二遮罩,对所述渐变处理结果进行颜色调整,得到所述第二渲染通道上的像素渲染结果。
7.根据权利要求5或6所述的方法,其特征在于,在通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果后,还包括:
裁切掉所述渐变处理结果中颜色为黑色的部分。
8.根据权利要求1所述的方法,其特征在于,所述基于用于渲染角色模型的初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道,包括:
在所述初始渲染通道对所述角色模型进行渲染处理之后、对所述角色模型进行蒙皮处理之前,基于所述初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道。
9.一种三维角色模型的特效处理装置,其特征在于,包括:
创建模块,用于基于用于渲染角色模型的初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道;
顶点渲染模块,用于根据所述角色模型的顶点数据,通过所述第二渲染通道基于所述角色模型的局部空间获取角色模型的第一区域的第一遮罩,并获取所述角色模型的第二区域的第二遮罩;根据所述第一遮罩以及所述第二遮罩,得到所述第二渲染通道上的顶点渲染结果;
像素渲染模块,用于通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果,并根据所述渐变处理结果得到所述第二渲染通道上的像素渲染结果;
输出模块,用于根据所述初始渲染通道的角色模型的渲染结果以及所述第二渲染通道的顶点渲染结果和像素渲染结果,得到具有所述特效的所述角色模型;
所述顶点渲染模块在根据所述第一遮罩以及所述第二遮罩,得到所述第二渲染通道上的顶点渲染结果时,用于:
将第一遮罩和第二遮罩进行叠加;
在所述角色模型的齐次坐标下,对第一遮罩和第二遮罩叠加的区域按照预定规则进行放大和偏移,得到所述第二渲染通道上的顶点渲染结果。
10.根据权利要求9所述的装置,其特征在于,所述第一遮罩为在所述角色模型的第一区域的明暗渐变的遮罩,渐变方向为所述角色模型局部空间坐标系的第一方向;
所述顶点渲染模块在通过所述第二渲染通道基于所述角色模型的局部空间获取角色模型的第一区域的第一遮罩时,用于:
根据所述角色模型的第一区域范围参数、渐变程度参数以及第一预设公式,对所述角色模型的局部空间沿所述第一方向进行明暗渐变处理,获取所述第一遮罩。
11.根据权利要求9所述的装置,其特征在于,所述第二遮罩为所述角色模型中法线方向朝向第二方向的第二区域的遮罩;
所述顶点渲染模块在获取所述角色模型的第二区域的第二遮罩时,用于:
根据所述角色模型顶点法线方向、以及第二预设公式,剔除所述角色模型中法线方向不朝向所述第二方向的区域,获取所述第二遮罩。
12.根据权利要求9所述的装置,其特征在于,所述顶点渲染模块在所述角色模型的齐次坐标下,对第一遮罩和第二遮罩叠加的区域按照预定规则进行放大和偏移,得到所述第二渲染通道上的顶点渲染结果时,用于:
根据第一偏移量对所述第一遮罩和第二遮罩叠加的区域进行齐次坐标xy方向的加法偏移,根据预设的第二偏移量对第一遮罩和第二遮罩叠加的区域进行齐次坐标z方向的减法偏移,得到所述第二渲染通道上的顶点渲染结果,其中所述顶点渲染结果中所述第一遮罩和第二遮罩叠加的区域轮廓较所述角色模型大、其余区域轮廓较所述角色模型小,且所述顶点渲染结果深度相较于所述角色模型更靠后。
13.根据权利要求9所述的装置,其特征在于,所述角色模型的局部空间的渐变处理结果为所述角色模型的第一区域的颜色渐变结果,渐变方向为所述角色模型局部空间坐标系的第一方向;
所述像素渲染模块通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果时,用于:
根据所述角色模型的第一区域范围参数、渐变程度参数以及第三预设公式,对所述角色模型的局部空间沿所述第一方向进行颜色渐变处理,获取所述渐变处理结果。
14.根据权利要求13所述的装置,其特征在于,所述像素渲染模块在根据所述渐变处理结果得到所述第二渲染通道上的像素渲染结果时,用于:
根据预设的轮廓光颜色参数以及所述第二遮罩,对所述渐变处理结果进行颜色调整,得到所述第二渲染通道上的像素渲染结果。
15.根据权利要求13或14所述的装置,其特征在于,所述像素渲染模块在通过所述第二渲染通道获取所述角色模型的局部空间的渐变处理结果后,还用于:
裁切掉所述渐变处理结果中颜色为黑色的部分。
16.根据权利要求9所述的装置,其特征在于,所述创建模块在基于用于渲染角色模型的初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道时,用于:
在所述初始渲染通道对所述角色模型进行渲染处理之后、对所述角色模型进行蒙皮处理之前,基于所述初始渲染通道,创建用于渲染所述角色模型的特效的第二渲染通道。
17.一种电子设备,其特征在于,包括:可显示图形用户界面的显示单元、处理器和存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1-8任一项所述的三维角色模型的特效处理方法。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1-8任一项所述的三维角色模型的特效处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010256305.4A CN111462293B (zh) | 2020-04-02 | 2020-04-02 | 三维角色模型的特效处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010256305.4A CN111462293B (zh) | 2020-04-02 | 2020-04-02 | 三维角色模型的特效处理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111462293A CN111462293A (zh) | 2020-07-28 |
CN111462293B true CN111462293B (zh) | 2023-11-21 |
Family
ID=71685826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010256305.4A Active CN111462293B (zh) | 2020-04-02 | 2020-04-02 | 三维角色模型的特效处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111462293B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112163983B (zh) * | 2020-08-14 | 2023-07-18 | 福建数博讯信息科技有限公司 | 一种场景物件的描边方法及终端 |
CN112053423B (zh) * | 2020-09-18 | 2023-08-08 | 网易(杭州)网络有限公司 | 模型渲染方法、装置、存储介质及计算机设备 |
CN112316420B (zh) * | 2020-11-05 | 2024-03-22 | 网易(杭州)网络有限公司 | 模型渲染方法、装置、设备及存储介质 |
CN112435324A (zh) * | 2020-11-23 | 2021-03-02 | 上海莉莉丝科技股份有限公司 | 三维虚拟空间中的像素点的着色方法、系统、设备和介质 |
CN113870403B (zh) * | 2021-09-23 | 2023-01-10 | 埃洛克航空科技(北京)有限公司 | 用于图像渲染的信息处理方法及装置 |
CN113888398B (zh) * | 2021-10-21 | 2022-06-07 | 北京百度网讯科技有限公司 | 头发渲染方法、装置及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109102560A (zh) * | 2018-08-09 | 2018-12-28 | 腾讯科技(深圳)有限公司 | 三维模型渲染方法及装置 |
CN109876441A (zh) * | 2019-03-13 | 2019-06-14 | 网易(杭州)网络有限公司 | 游戏中的渲染方法及装置、存储介质及电子设备 |
CN110400372A (zh) * | 2019-08-07 | 2019-11-01 | 网易(杭州)网络有限公司 | 一种图像处理的方法及装置、电子设备、存储介质 |
CN110458930A (zh) * | 2019-08-13 | 2019-11-15 | 网易(杭州)网络有限公司 | 三维地图的渲染方法、装置及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104966312B (zh) * | 2014-06-10 | 2017-07-21 | 腾讯科技(深圳)有限公司 | 一种3d模型的渲染方法、装置及终端设备 |
-
2020
- 2020-04-02 CN CN202010256305.4A patent/CN111462293B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109102560A (zh) * | 2018-08-09 | 2018-12-28 | 腾讯科技(深圳)有限公司 | 三维模型渲染方法及装置 |
CN109876441A (zh) * | 2019-03-13 | 2019-06-14 | 网易(杭州)网络有限公司 | 游戏中的渲染方法及装置、存储介质及电子设备 |
CN110400372A (zh) * | 2019-08-07 | 2019-11-01 | 网易(杭州)网络有限公司 | 一种图像处理的方法及装置、电子设备、存储介质 |
CN110458930A (zh) * | 2019-08-13 | 2019-11-15 | 网易(杭州)网络有限公司 | 三维地图的渲染方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111462293A (zh) | 2020-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111462293B (zh) | 三维角色模型的特效处理方法、装置、设备及存储介质 | |
CN106815883B (zh) | 一种游戏角色的头发处理方法及系统 | |
CN112316420B (zh) | 模型渲染方法、装置、设备及存储介质 | |
US5870098A (en) | Method for rendering shadows on a graphical display | |
US7583264B2 (en) | Apparatus and program for image generation | |
WO1998038591A9 (en) | Method for rendering shadows on a graphical display | |
CN108876931A (zh) | 三维物体颜色调整方法、装置、计算机设备及计算机可读存储介质 | |
RU2427918C2 (ru) | Метафора двумерного редактирования для трехмерной графики | |
CN109035381B (zh) | 基于ue4平台的卡通画头发渲染方法、存储介质 | |
CN111862285A (zh) | 人物皮肤的渲染方法及装置、存储介质、电子装置 | |
RU2422902C2 (ru) | Двумерная/трехмерная комбинированная визуализация | |
CN113888398B (zh) | 头发渲染方法、装置及电子设备 | |
US20040056859A1 (en) | Image generating method, storage medium, image generating apparatus, data signal and program | |
CN111803942A (zh) | 一种软阴影生成方法、装置、电子设备和存储介质 | |
CN114187398A (zh) | 基于法线贴图进行人体光照渲染的处理方法及装置 | |
CN111429558B (zh) | 实时模拟动态水体缩略模型的方法及系统 | |
CN109961500A (zh) | 次表面散射效果的渲染方法、装置、设备及可读存储介质 | |
CN112465941B (zh) | 一种体积云处理方法、装置、电子设备及存储介质 | |
EP2063395B1 (en) | Tinting a surface to simulate a visual effect in a computer generated scene | |
JP2010033288A (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
KR100900076B1 (ko) | 경계선이 자연스러운 3차원 텍스쳐 장치 및 방법 | |
Boulanger et al. | Rendering grass terrains in real-time with dynamic lighting | |
JP7190780B1 (ja) | 画像処理プログラム、画像処理装置、及び画像処理方法 | |
CN117078838B (zh) | 一种对象渲染方法、装置、存储介质及电子设备 | |
CN114863078A (zh) | 模型渲染方法、装置、计算机设备及存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |