[发明专利]离线渲染的预处理方法有效
申请号: | 201510402120.9 | 申请日: | 2015-07-10 |
公开(公告)号: | CN105321200B | 公开(公告)日: | 2018-03-06 |
发明(设计)人: | 游之鹏 | 申请(专利权)人: | 苏州蜗牛数字科技股份有限公司 |
主分类号: | G06T15/50 | 分类号: | G06T15/50 |
代理公司: | 北京德崇智捷知识产权代理有限公司11467 | 代理人: | 王金双 |
地址: | 215000 江苏省苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 离线 渲染 预处理 方法 | ||
技术领域
本发明涉及离线渲染技术领域,尤其涉及一种离线渲染的预处理方法。
背景技术
3D客户端渲染的目的是尽量展现逼真的效果。然而,因为所需要渲染的环境每帧都会发生改变,所以每帧都需要计算阴影、光照及环境光遮挡等信息,这一过程需要占用大量的CPU或GPU。此外,一些更为逼真的间接光还因为效率问题无法考虑进去。所以,离线渲染技术应运而生。它利用预先生成好的数据,当客户端渲染所指定的地表和模型,不需要实时渲染着色流程,而是动态加载那些预处理数据,并显示出来。
发明内容
为了解决现有技术存在的不足,本发明的目的在于提供一种离线渲染的预处理方法,从而实现基于Flexi客户端引擎并采用Beast的全局光照明解决方案,使Beast的客户端能增强真实感。
为实现上述目的,本发明提供的离线渲染的预处理方法,包括以下步骤:
1)通过编辑器设定直接和间接光强度、光线反弹次数参数,创建Beast环境;
2)把渲染所需要的光线进行分类,并提供每种类型光的颜色、亮度及方向信息给Beast;
3)分割场景,生成光贴图数据;
4)使模型的顶点数据附带上光贴图uv,开辟子线程使得Beast启动光贴图展uv模式,线程结束后,获取以面索引和uv值的方式提供的结果数据,进行顶点合并操作,并保存模型数据;
5)把光照信息、模型和地形信息,以及依附在它们上的材质信息传入Beast;
6)从Beast数据反馈模块获取光贴图数据,并保存在磁盘中;
7)批量合并所有小贴图到一张贴图里,并记录具体材质映射到此合并后所在贴图的偏移量和缩放值。
进一步地,所述步骤2)中的光线分类包括太阳光、环境光、太空光、点光源和聚光源。
进一步地,所述步骤3)进一步包括以下步骤:根据权利要求2所述的离线渲染的预处理方法,其特征在于,所述步骤3)进一步包括以下步骤:Flexi引擎将地形按照正方形分割,每个正方形区域定义为一个zone,保持加载3*3个zone地形数据和zone上的物件,并保证摄像机在中心zone内;把3*3个zone地形数据添加到Beast里;在摄像机所在的zone创建烘焙纹理目标,创建烘焙实例,进行烘焙;对中心zone和靠近中心zone物件进行光贴图渲染。
进一步地,所述步骤6)中的光贴图保存格式包括DXT1和A8R8G8B8。
本发明的离线渲染的预处理方法,其技术效果主要包括:避免了内存过大的问题,并使客户端不需要实时渲染的着色流程,只需要采样光贴图就可以实现很真实的效果,增强了Beast客户端的真实感。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的实施例一起,用于解释本发明,并不构成对本发明的限制。在附图中:
图1为根据本发明的离线渲染的预处理方法流程图;
图2为按照zone分割整个场景的效果图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1为根据本发明的离线渲染的预处理方法流程图。下面将参考图1,对本发明的离线渲染的预处理方法进行详细描述。
首先,在步骤101,通过编辑器,设定好直接和间接光强度,光线反弹次数等参数,创建Beast环境。
在步骤102,把渲染所需要的光线分类为太阳光、环境光、太空光、点光源以及聚光源,并每种类型光的颜色、亮度、方向信息给Beast。
在步骤103,Flexi引擎把地形按照正方形来分割,这个正方形区域就定义为zone,保持一直加载3*3个zone地形数据和zone上的物件,并且保证摄像机在中心的zone内。如图2所示,1个格子为1个zone,范围256平方米,中心格子(斜线区域)是摄像头所在zone。
随后,把3*3个zone全部添加到Beast里,并且规定了只有摄像机所在的zone,才创建了烘焙纹理目标,创建烘焙实例,进行了烘焙,只有中心zone(斜线区域)和靠近中心zone的物件(以斜线标出)进行光贴图渲染,其他zone和物件只是作为基础数据传入。
通过zone分割整个场景,避免了内存过大问题,并可简单管理生成出来的光贴图数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州蜗牛数字科技股份有限公司,未经苏州蜗牛数字科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510402120.9/2.html,转载请声明来源钻瓜专利网。