Unreal

Unreal设备分级总结

参考网址:https://docs.unrealengine.com/zh-CN/Platforms/Mobile/Performance/index.html

Unreal的分级分成两种:

一种是通过CVar配合Proile进行简单的分级。

另外一种是针对Shader相关的分级。

CVar与Profile分级

Unreal最简单的分级在

针对GPU、机型、OpenGL ES版本以及其他进行匹配。以调整各种自带以及自定义参数。

大部分的机型适配都是以这样的方式进行的。

常用的参数r.MobileContentScaleFactor表示分辨率

Shader分级

Shader主要是通过Unreal提供的MaterialQuality的参数进行分级。

实际上这个参数也是跟着profile走的。

在材质球上可以直接通过相关节点来调整不同分级的参数。

而在shader中,我们则需要特定的宏来帮助我们在不同的设备上使用不同的shader。

需要主要的是,在安装包中会包含所有分级的shader。

在MobileBasePassRendering.cpp中

这个函数的作用就是在不同的分级上,对shader开启不同的宏。

在ShaderPlatformQualitySetting上定义了相关的变量,提供给引擎进行具体设置

查看相关shader的时候可以发现,具体的宏会在shader中得到体现。

基本上shader相关的分级就是这么来做的。

在项目设置中可以直接设置相关参数

在Engine下的Rendering中

扩展

实际上可以添加自己的宏来达成一定的优化目的。举个例子,在极端低端的机型中强制使用Unlit

这样在Shader中就可以直接进行使用了。

在Profile中设置低端机型,

手机上即可反映出来。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注