首页 > Unity3D频道 > 【Unity3D研究院之游戏开发】 > Unity3D研究院之动态分辨率降低渲染开销(一百一十三)
2020
01-04

Unity3D研究院之动态分辨率降低渲染开销(一百一十三)

之前项目降低分辨率我们都普遍使用Screen.SetResolution,但是它有两个问题。

1.每次设置的时候屏幕会闪烁。

2.降低分辨率与摄像机无关,无法做到只降低3D摄像机的分辨率,保留UI摄像机不降低分辨率。

其实我们可以使用摄像机动态分辨率,如下图所示,给需要降低分辨率的摄像机打开allow Dynamic Resolution属性。

Unity3D研究院之动态分辨率降低渲染开销(一百一十三) - 雨松MOMO程序研究院 - 1

如下图所示,在ProjectSetting上必须勾选Enable Frame Timing Stats属性。

Unity3D研究院之动态分辨率降低渲染开销(一百一十三) - 雨松MOMO程序研究院 - 2

代码中就可以很方便设置分辨率了。

如下图所示在iPhone X上,频繁设置3D摄像机分辨率并不会出现闪烁的情况,而且并没有影响UI摄像机看到的文本(Text)的分辨率

Unity3D研究院之动态分辨率降低渲染开销(一百一十三) - 雨松MOMO程序研究院 - 3

需要注意的是动态分辨率安卓Android(仅适用于Vulkan) 或者也可以用SRP可编程渲染管线,最后在修改RT这样就都支持了。

详情 https://docs.unity3d.com/Manual/DynamicResolution.html

最后编辑:
作者:雨松MOMO
专注移动互联网,Unity3D游戏开发
捐 赠写博客不易,如果您想请我喝一杯星巴克的话?就进来看吧!

Unity3D研究院之动态分辨率降低渲染开销(一百一十三)》有 2 条评论

  1. 谢谢 说:

    雨松大佬,请问您的这个测试时基于unity什么版本?

谢谢的回复 取消回复

你的email不会被公开。