一种对象渲染方法、装置及着色器制造方法及图纸

技术编号:30700875 阅读:19 留言:0更新日期:2021-11-06 09:37
本申请涉及一种对象渲染方法、装置及着色器,在对对象进行光照效果渲染时,通过传入虚拟光源的光照信息如光照方向、颜色等,来替代实时光方式,并将光照分为直接光照、漫反射和高光反射这几个部分,来模拟真实光照情况,在此基础上,计算对象的上述各个部分的光照情况,并综合各部分的光照情况得到对象的最终光照结果,从而,本申请提出了一简化的光照模型,基于该简化的光照模型对对象进行非实时光照下的光照效果渲染,与现有技术通过在游戏场景中放置复杂灯光组件,并由游戏引擎按实时光方式对对象进行复杂光照计算及渲染展示的方案相比,可大幅降低由引擎实时光照处理带来的性能消耗,且可满足定制光照方案的需求。且可满足定制光照方案的需求。且可满足定制光照方案的需求。

【技术实现步骤摘要】
一种对象渲染方法、装置及着色器


[0001]本申请属于计算机
,尤其涉及一种对象渲染方法、装置及着色器。

技术介绍

[0002]高尔夫游戏有一系列主题的高尔夫球,在游戏过程中或游戏对象上架展览时,需对高尔夫球进行渲染展示。
[0003]传统的解决方案,利用游戏引擎,如Unity 3d游戏引擎对高尔夫球按实时光方式进行光照及计算处理,并基于光照计算结果对高尔夫球进行渲染展示,然而,该方式使用繁多的灯光组件并通过复杂的计算过程来实现对高尔夫球的光照效果渲染,导致性能上有一定的消耗,且无法满足定制光照方案的需求。

技术实现思路

[0004]有鉴于此,本申请提供了一种对象渲染方法、装置及着色器,用于通过一种基于非实时光照的对象渲染方案,来至少节省由引擎按实时光照方式进行对象渲染带来的性能消耗。
[0005]具体技术方案如下:
[0006]一种对象渲染方法,所述方法包括:
[0007]获取待渲染的对象的显示特征信息及虚拟光源的光照信息;
[0008]根据所述显示特征信息及所述光照信息,确定所述对象的直接光照颜色、漫反射光照量和在高光光照区域的高光光照量;
[0009]根据所述直接光照颜色、所述漫反射光照量和所述高光光照量,确定所述对象的光照结果;
[0010]基于所述光照结果,对所述对象进行光照效果渲染。
[0011]可选的,所述获取待渲染的对象的显示特征信息及虚拟光源的光照信息,包括:
[0012]获取所述对象的主纹理贴图的颜色、漫反射光颜色、漫反射光强度、高光强度、高光颜色及主纹理贴图透明度;
[0013]获取所述虚拟光源的灯光颜色及光照方向。
[0014]可选的,所述根据所述显示特征信息及所述光照信息,确定所述对象的直接光照颜色、漫反射光照量和在高光光照区域的高光光照量,包括:
[0015]根据所述对象的主纹理贴图的颜色及虚拟光源的灯光颜色,确定所述对象的直接光照颜色;
[0016]根据所述虚拟光源的光照方向与所述对象的漫反射光颜色、漫反射光强度,确定所述对象的正反两面的漫反射光照量;
[0017]确定所述对象的高光光照区域,并根据所述对象的高光强度、高光颜色及主纹理贴图透明度确定所述对象在所述高光光照区域的高光光照量;
[0018]所述根据所述直接光照颜色、所述漫反射光照量和所述高光光照量,确定所述对
象的光照结果,包括:
[0019]叠加所述直接光照颜色、所述漫反射光照量和所述高光光照量,得到所述对象的光照结果。
[0020]可选的,所述根据所述对象的主纹理贴图的颜色及虚拟光源的灯光颜色,确定所述对象的直接光照颜色,包括:
[0021]计算所述对象的主纹理贴图上不同像素的颜色值与虚拟光源的颜色值的乘积,得到所述对象的主纹理贴图上不同像素的直接光照颜色。
[0022]可选的,所述根据所述虚拟光源的光照方向与所述对象的漫反射光颜色、漫反射光强度,确定所述对象的正反两面的漫反射光照量,包括:
[0023]计算所述对象的正反两面不同位置在世界空间下的法线方向和所述虚拟光源的光照方向的点积;
[0024]将不同点积的点积结果与所述对象的漫反射光颜色、漫反射光强度相乘,得到所述对象的正反两面的漫反射光照量。
[0025]可选的,所述确定所述对象的高光光照区域,包括:
[0026]根据视角方向与所述虚拟光源的光照方向,确定半角向量,通过所述半角向量表征所述对象的高光光照区域;
[0027]所述根据所述对象的高光强度、高光颜色及主纹理贴图透明度确定所述对象在所述高光光照区域的高光光照量,包括:
[0028]将所述高光强度、所述高光颜色、所述主纹理贴图透明度和半角向量与所对应法线方向的点积结果相乘,得到所述高光光照量。
[0029]可选的,在根据所述直接光照颜色、所述漫反射光照量及所述高光光照量,确定所述对象的光照结果之前,还包括:
[0030]根据所述对象的主纹理贴图上不同像素的颜色与所述对象的自发光颜色,确定所述对象上不同像素点的自发光光照量。
[0031]所述根据所述直接光照颜色、所述漫反射光照量及所述高光光照量,确定所述对象的光照结果,包括:
[0032]叠加所述直接光照颜色、所述漫反射光照量、所述高光光照量和所述自发光光照量,得到所述对象的光照结果。
[0033]可选的,所述基于所述光照结果,对所述对象进行光照效果渲染,包括:
[0034]确定所述对象的当前状态;所述当前状态为半透明状态或非透明状态;
[0035]利用与所述当前状态匹配的目标渲染通道,并基于所述光照结果,对所述对象进行光照效果渲染;
[0036]其中,对象的不同状态对应不同的渲染通道,不同的渲染通道分别基于不同的透明度对对象进行光照效果渲染。
[0037]一种对象渲染装置,包括:
[0038]获取模块,用于获取待渲染的对象的显示特征信息及虚拟光源的光照信息;
[0039]第一确定模块,用于根据所述显示特征信息及所述光照信息,确定所述对象的直接光照颜色、漫反射光照量和在高光光照区域的高光光照量;
[0040]第二确定模块,用于根据所述直接光照颜色、所述漫反射光照量和所述高光光照
量,确定所述对象的光照结果;
[0041]渲染模块,用于基于所述光照结果,对所述对象进行光照效果渲染。
[0042]一种着色器,所述着色器中实现有计算机指令集,所述计算机指令集被处理器执行时实现如上任一项所述的对象渲染方法。
[0043]根据以上方案可知,本申请实施例提供的对象渲染方法、装置及着色器,在对对象进行光照效果渲染时,通过传入虚拟光源的光照信息如光照方向、颜色等,来替代实时光方式,并将光照分为直接光照、漫反射和高光反射这几个部分,来模拟真实光照情况,在此基础上,计算对象的上述各个部分的光照情况,并综合各部分的光照情况得到对象的最终光照结果,从而,本申请提出了一简化的光照模型,基于该简化的光照模型对对象进行非实时光照下的光照效果渲染,与现有技术通过在游戏场景中放置复杂灯光组件,并由游戏引擎按实时光方式对对象进行复杂光照计算及渲染展示的方案相比,可大幅降低由引擎实时光照处理带来的性能消耗,且可满足定制光照方案的需求。
附图说明
[0044]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0045]图1是本申请实施例提供的对象渲染方法的一流程示意图;
[0046]图2是本申请实施例提供的计算对象的直接光照、漫反射和高光反射这几个部分的光照情况的处理流程图;
[0047]图3和图4分别是本申请实施例提供的半透明渲染通道本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种对象渲染方法,其特征在于,所述方法包括:获取待渲染的对象的显示特征信息及虚拟光源的光照信息;根据所述显示特征信息及所述光照信息,确定所述对象的直接光照颜色、漫反射光照量和在高光光照区域的高光光照量;根据所述直接光照颜色、所述漫反射光照量和所述高光光照量,确定所述对象的光照结果;基于所述光照结果,对所述对象进行光照效果渲染。2.根据权利要求1所述的方法,其特征在于,所述获取待渲染的对象的显示特征信息及虚拟光源的光照信息,包括:获取所述对象的主纹理贴图的颜色、漫反射光颜色、漫反射光强度、高光强度、高光颜色及主纹理贴图透明度;获取所述虚拟光源的灯光颜色及光照方向。3.根据权利要求2述的方法,其特征在于,所述根据所述显示特征信息及所述光照信息,确定所述对象的直接光照颜色、漫反射光照量和在高光光照区域的高光光照量,包括:根据所述对象的主纹理贴图的颜色及虚拟光源的灯光颜色,确定所述对象的直接光照颜色;根据所述虚拟光源的光照方向与所述对象的漫反射光颜色、漫反射光强度,确定所述对象的正反两面的漫反射光照量;确定所述对象的高光光照区域,并根据所述对象的高光强度、高光颜色及主纹理贴图透明度确定所述对象在所述高光光照区域的高光光照量;所述根据所述直接光照颜色、所述漫反射光照量和所述高光光照量,确定所述对象的光照结果,包括:叠加所述直接光照颜色、所述漫反射光照量和所述高光光照量,得到所述对象的光照结果。4.根据权利要求3所述的方法,其特征在于,所述根据所述对象的主纹理贴图的颜色及虚拟光源的灯光颜色,确定所述对象的直接光照颜色,包括:计算所述对象的主纹理贴图上不同像素的颜色值与虚拟光源的颜色值的乘积,得到所述对象的主纹理贴图上不同像素的直接光照颜色。5.根据权利要求3所述的方法,其特征在于,所述根据所述虚拟光源的光照方向与所述对象的漫反射光颜色、漫反射光强度,确定所述对象的正反两面的漫反射光照量,包括:计算所述对象的正反两面不同位置在世界空间下的法线方向和所述虚拟光源的光照方向的点积;将不同点积的点积结果与所述对象的漫反射光颜色、漫反射光强度相乘,得到所述对象...

【专利技术属性】
技术研发人员:游定坤
申请(专利权)人:北京果仁互动科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1