一种基于光照环境实时切换烘焙数据的方法及其系统技术方案

技术编号:31009616 阅读:19 留言:0更新日期:2021-11-30 00:05
本发明专利技术提供了一种基于光照环境实时切换烘焙数据的方法,该方法为:步骤S1、需要烘焙光照环境时,将场景中需要烘焙的物件信息与光源信息输入离线烘焙程序中;步骤S2、离线烘焙程序通过最终聚集算法将物件对应像素的光照信息写入光照贴图中,将采样点处的球谐函数系数写入光照探针中;步骤S3、等待烘焙线程完成后,读取烘焙结果生成光照贴图与光照探针,并存储生产该光照环境对应的烘焙文件;步骤S4、修改光照环境,重复执行步骤S1至步骤S3生成修改后的光照环境对应的烘焙文件,指向修改后的光照环境;步骤S5、通过更改索引的烘焙文件,在不同的光照环境下进行实时切换烘焙文件来达到烘焙效果,能实时切换烘焙数据,实现了展示不同的光照环境。的光照环境。的光照环境。

【技术实现步骤摘要】
一种基于光照环境实时切换烘焙数据的方法及其系统


[0001]本专利技术涉及计算机图形学
,特别是一种基于光照环境实时切换烘焙数据的方法及其系统。

技术介绍

[0002]烘焙即在内存中生成光照贴图,以后使用光照贴图即使将灯光禁用也可以正常发光。
[0003]预烘焙技术可以有效的帮助开发者实时监测环境光照效果。它可以在场景中实时烘焙,而不保存数据。但是比较耗性能,所以在不做场景烘焙时对它禁用。
[0004]在传统的游戏渲染方案中,由于性能的限制,实时渲染计算的部分一般仅包括局部光照(Local Illumation),这部分光照信息表述了光源与物件之间的直接光照效果;而全局光照(Global Illumation)不仅包括直接光照效果,还包含光线经过反弹后的间接光照效果,以及模型间的环境遮挡(Ambient Occlusion)等等一系列现实环境中存在的光学现象。某些方案中,会通过增加场景中的点光源,通过补光来模拟这一全局光照效果。这么做会使场景中的光照环境变得更加复杂,增加了无谓的性能消耗;且使得场景失去明显的明暗变化,场景由于光照不突出而显得呆板。

技术实现思路

[0005]为克服上述问题,本专利技术的目的是提供一种基于光照环境实时切换烘焙数据的方法,实时切换烘焙数据,实现了展示不同的光照环境,且硬件性能消耗小。
[0006]本专利技术采用以下方案实现:一种基于光照环境实时切换烘焙数据的方法,包括如下步骤:步骤S1、需要烘焙光照环境时,将场景中需要烘焙的物件信息与光源信息输入离线烘焙程序中;步骤S2、离线烘焙程序通过最终聚集算法将物件对应像素的光照信息写入光照贴图中,将采样点处的球谐函数系数写入光照探针中;步骤S3、等待烘焙线程完成后,读取烘焙结果生成光照贴图与光照探针,并存储生产该光照环境对应的烘焙文件;步骤S4、修改光照环境,重复执行步骤S1至步骤S3生成修改后的光照环境对应的烘焙文件,指向修改后的光照环境;步骤S5、通过更改索引的烘焙文件,在不同的光照环境下进行实时切换烘焙文件来达到烘焙效果。
[0007]进一步的,所述物件信息包括但不限于:顶点缓存、索引缓存、顶点法线、材质漫反射纹理、以及纹理坐标;所述光源信息包括但不限于:光源类型、光源强度、光源颜色、以及衰减程度;所述离线烘焙程序能根据所述物件信息和光源信息生产光照贴图。
[0008]进一步的,所述步骤S2进一步具体为:配置场景的烘焙选项,该烘焙选项包括:全
局烘焙配置、单个物件烘焙配置、光源配置以及光照探针编辑;所述全局烘焙配置包括烘焙类型、是否烘焙地形、是否生成环境遮挡、环境遮挡强度、间接光反弹次数、离线烘焙算法;所述单个物件烘焙配置包括设置烘焙分组、烘焙分辨率、是否接收阴影、是否产生阴影、是否接收环境遮挡、是否产生环境遮挡;所述光源配置包括增加光源、删除光源、移动光源以及修改光照类型、光照强度、光照方向、光照颜色;离线烘焙程序根据场景的烘焙选项通过最终聚集算法将物件对应像素的光照信息写入光照贴图中,将采样点处的球谐函数系数写入光照探针中。
[0009]进一步的,所述烘焙类型包括但不限于:全烘焙、间接光烘焙、以及阴影烘焙。
[0010]进一步的,所述光照信息包括但不限于:光照贴图和光照探针。
[0011]进一步的,所述步骤S5进一步具体为:在不同的光照环境下时,更改索引的烘焙文件,读取更改后的烘焙文件,遍历主场景所有物件,根据烘焙文件ID更新光照贴图,清空主场景所有光照探针,加载光照探针数据,从而达到烘焙效果。
[0012]本专利技术还提供了一种基于光照环境实时切换烘焙数据的系统,所述系统包括:输入模块、烘焙模块、存储模块、执行模块、以及切换模块;所述输入模块,用于需要烘焙光照环境时,将场景中需要烘焙的物件信息与光源信息输入离线烘焙程序中;所述烘焙模块,用于离线烘焙程序通过最终聚集算法将物件对应像素的光照信息写入光照贴图中,将采样点处的球谐函数系数写入光照探针中;所述存储模块,用于等待烘焙线程完成后,读取烘焙结果生成光照贴图与光照探针,并存储生产该光照环境对应的烘焙文件;所述执行模块,用于修改光照环境,重复执行输入模块、烘焙模块、存储模块生成修改后的光照环境对应的烘焙文件,指向修改后的光照环境;所述切换模块,用于通过更改索引的烘焙文件,在不同的光照环境下进行实时切换烘焙文件来达到烘焙效果。
[0013]进一步的,所述物件信息包括但不限于:顶点缓存、索引缓存、顶点法线、材质漫反射纹理、以及纹理坐标;所述光源信息包括但不限于:光源类型、光源强度、光源颜色、以及衰减程度;所述离线烘焙程序能根据所述物件信息和光源信息生产光照贴图。
[0014]进一步的,所述烘焙模块进一步具体为:配置场景的烘焙选项,该烘焙选项包括:全局烘焙配置、单个物件烘焙配置、光源配置以及光照探针编辑;所述全局烘焙配置包括烘焙类型、是否烘焙地形、是否生成环境遮挡、环境遮挡强度、间接光反弹次数、离线烘焙算法;所述单个物件烘焙配置包括设置烘焙分组、烘焙分辨率、是否接收阴影、是否产生阴影、是否接收环境遮挡、是否产生环境遮挡;所述光源配置包括增加光源、删除光源、移动光源以及修改光照类型、光照强度、光照方向、光照颜色;离线烘焙程序根据场景的烘焙选项通过最终聚集算法将物件对应像素的光照信息写入光照贴图中,将采样点处的球谐函数系数写入光照探针中。
[0015]进一步的,所述烘焙类型包括但不限于:全烘焙、间接光烘焙、以及阴影烘焙。
[0016]进一步的,所述光照信息包括但不限于:光照贴图和光照探针。
[0017]进一步的,所述切换模块进一步具体为:在不同的光照环境下时,更改索引的烘焙
文件,读取更改后的烘焙文件,遍历主场景所有物件,根据烘焙文件ID更新光照贴图,清空主场景所有光照探针,加载光照探针数据,从而达到烘焙效果。
[0018]本专利技术的有益效果在于:1、采用光照贴图,还原了静态物件的全局光照环境,且性能消耗较小;光照探针的应用,丰富了动态物件的效果,使动态物体完美契合场景光源。2、实时切换光照信息功能,能应对不同光照环境下(特别是白天与黑夜)的需求,使场景昼夜变换更加真实。
附图说明
[0019]图1是本专利技术的方法流程示意图。
[0020]图2是本专利技术光照信息切换的流程示意图。
[0021]图3是本专利技术一实施例的流程示意图。
[0022]图4是本专利技术的系统原理框图。
具体实施方式
[0023]下面结合附图对本专利技术做进一步说明。
[0024]请参阅图1所示,本专利技术的一种基于光照环境实时切换烘焙数据的方法,包括如下步骤:步骤S1、需要烘焙光照环境时,为了不影响其余操作,编辑器开辟新的线程,将场景中需要烘焙的物件信息与光源信息转为离线烘焙支持的格式后输入离线烘焙程序中;所述物件信息包括但不限于:顶点缓存、索引缓存、顶点法线、材质漫反射纹理、以及纹理坐标;所述光源信息包括但不限于:光源类型、光源强度、光源颜色、以及衰减程度;所述离线烘焙程本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于光照环境实时切换烘焙数据的方法,其特征在于:包括如下步骤:步骤S1、需要烘焙光照环境时,将场景中需要烘焙的物件信息与光源信息输入离线烘焙程序中;步骤S2、离线烘焙程序通过最终聚集算法将物件对应像素的光照信息写入光照贴图中,将采样点处的球谐函数系数写入光照探针中;步骤S3、等待烘焙线程完成后,读取烘焙结果生成光照贴图与光照探针,并存储生产该光照环境对应的烘焙文件;步骤S4、修改光照环境,重复执行步骤S1至步骤S3生成修改后的光照环境对应的烘焙文件,指向修改后的光照环境;步骤S5、通过更改索引的烘焙文件,在不同的光照环境下进行实时切换烘焙文件来达到烘焙效果。2.根据权利要求1所述的一种基于光照环境实时切换烘焙数据的方法,其特征在于:所述物件信息包括但不限于:顶点缓存、索引缓存、顶点法线、材质漫反射纹理、以及纹理坐标;所述光源信息包括但不限于:光源类型、光源强度、光源颜色、以及衰减程度;所述离线烘焙程序能根据所述物件信息和光源信息生产光照贴图。3.根据权利要求1所述的一种基于光照环境实时切换烘焙数据的方法,其特征在于:所述步骤S2进一步具体为:配置场景的烘焙选项,该烘焙选项包括:全局烘焙配置、单个物件烘焙配置、光源配置以及光照探针编辑;所述全局烘焙配置包括烘焙类型、是否烘焙地形、是否生成环境遮挡、环境遮挡强度、间接光反弹次数、离线烘焙算法;所述单个物件烘焙配置包括设置烘焙分组、烘焙分辨率、是否接收阴影、是否产生阴影、是否接收环境遮挡、是否产生环境遮挡;所述光源配置包括增加光源、删除光源、移动光源以及修改光照类型、光照强度、光照方向、光照颜色;离线烘焙程序根据场景的烘焙选项通过最终聚集算法将物件对应像素的光照信息写入光照贴图中,将采样点处的球谐函数系数写入光照探针中。4.根据权利要求3所述的一种基于光照环境实时切换烘焙数据的方法,其特征在于:所述烘焙类型包括但不限于:全烘焙、间接光烘焙、以及阴影烘焙。5.根据权利要求1所述的一种基于光照环境实时切换烘焙数据的方法,其特征在于:所述步骤S5进一步具体为:在不同的光照环境下时,更改索引的烘焙文件,读取更改后的烘焙文件,遍历主场景所有物件,根据烘焙文件ID更新光照贴图,清空主场景所有光照探针,加载光照探针数据,从而达到烘焙效果。6.一种基于光照环境实时切换烘焙数据的系统,其特征在于:所述系统包...

【专利技术属性】
技术研发人员:刘德建董志翔涂智业陈宏展
申请(专利权)人:福建天晴在线互动科技有限公司
类型:发明
国别省市:

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

1