Hello,大家好,今天带来Unreal科普知识HLOD性能优化,我是木偶心没。
HLOD,官方全称, Hierarchical Level of Detail;官方翻译,分层细节级别;官方解释,HLOD系统可以使用单个经过合并的静态网格体Actor替换远距离上多个静态网格体Actor。这有助于减少场景中需要渲染的Actor数量。所以一句话就是和LOD差不多,都是用来优化性能的。唯一不太一样的地方除了制作方法以外,还有就是LOD针对的是单个物件,HLOD针对的是一堆物件。
而且HLOD的设置,是引擎自动计算的,我们只需要在world setting里面勾选Enable Hierarchical LODSystem。
然后就可以在Windows里面打开HLOD窗口。
窗口左边是LOD代理模型,右边是LOD设置。默认只有一层HLOD,LODLevel-0,如果需要加两层LOD,就点击HLOD Setup Asset旁边的加号。
LOD设置中有几个比较重要的参数,在一般创建的时候会进行设置。
首先是设置lod距离的Desired Bound Radius,表示将我们的模型合并在一起进行LOD的半径。
还有下面Merge Setting里面的一些参数,比如是否要Merge Materials。如果选择合并material,引擎就会为lod后合并的模型创建一个新的材质球,会把每个物体的材质球都压缩到一张贴图上。
参数设置好以后就可以直接生成Clusters,这个过程会为整个场景里面的模型自动分组,也就是说会获取上面Desired Bound Radius的值然后把所有全在这个区域内的模型进行合并。
分好组以后点Generate Proxy Meshes,生成合并的LOD模型以及材质。如果场景里面东西太多会花多一点时间。
往测试场景里面丢了两坨模型,但是生成完了以后查看到HLOD场景Actor窗口里面只有三个模型(其实点了generate clusters以后就能看到),所以其他的模型都不在设置的500这个范围内,所以并没有生成HLOD。
进到场景里面,在HLOD生成Actor窗口中选择LODActor_0可以选择到设置成500的LOD0范围。在这个范围以外的那块大石头并没有生成HLOD。
远处那一坨也不在范围之内,所以也没有生成。
拉动摄像机就可以看到从单个的三个物件,变成了后面的一个模型,选中合并以后的模型,可定位到所在的位置,也就是创建HLOD时,代理模型自动放置的位置。
以及合了贴图以后的材质球。
另外如果场景里面的物件位置等或者材质被修改了,HLOD窗口会显示Not built需要重新进行build。
和LOD一样,在场景里面也可以检查HLOD的效果。
现在我们再加一层HLOD,并把半径设置为4000,重新生成clusters和proxy meshes。由于半径关系,就只能包含左边两堆挨着的物件。
HLOD不支持带有Opacity或者mask的材质,所以如果不需要这类材质参与HLOD,可以单独进行移除。
另外,如果单个模型本身有LOD,会优先读取HLOD的代理模型。
综上,HLOD优点就是节约性能,省drawcall;而缺点就是内存占用变多以及load速度变低,因为毕竟要生成新的代理模型。
来源:Thepoly公众号
热门课程
专业讲师指导 快速摆脱技能困惑相关文章
多种教程 总有一个适合自己专业问题咨询
你担心的问题,火星帮你解答2D建模师是指使用2D软件进行建模的专业人员,是游戏开发过程中不可或缺的一个环节,主要用于绘制游戏的角色、场景、道具等元素。当......
游戏产业已成为了一个庞大的产业链,不仅是游戏开发和发行,还包括游戏赛事、直播、内容创作等。而游戏剪辑恰恰是这些内容创作中的一环......
游戏剪辑作为游戏视频制作的一种重要方式,随着游戏行业的蓬勃发展而越来越受到重视。随着游戏制作技术的提高,游戏剪辑的制作越来越复......
在游戏剪辑中,通过将游戏录像的精彩时刻进行剪辑和编辑、添加音乐、音效和特效等元素,创造出视觉上令人兴奋的故事情节,是游戏剪辑师......
游戏剪辑视频是近年来随着电竞产业的发展而崛起的一项新兴职业。在游戏社区和电竞圈中很受欢迎的。但是游戏剪辑视频的制作需要具备一定......
游戏剪辑是一种将游戏画面和声音进行剪辑和编辑,制作成视频的过程。它是随着游戏产业的发展而出现的,而且随着游戏产业的发展,游戏剪......