Unity3D Android手机屏幕分辨率问题
Android手机屏幕分辨率五花八门,导致开发时不好把握,还好各个引擎对这个屏幕分辨率问题都有较好的处理方式;unity3D 也为我们提供了一个不错的解决方案。
在Unity3D 进行 android 游戏开发时,对于不同分辨率下的显示效果就像是摄像机的自动平移了一般,看了不少游戏,对于 Unity3D 开发 android 游戏貌似都没有做相应的屏幕分辨率的处理,而是随摄像机的自动移动,把场景做大些不至于出现空白背景。
其实 Unity3D 开发3D游戏,对于不同的分辨率,我们只需要设置 1 个唯一的屏幕显示区域比(说白了就是宽高比),这样显示区域就不会随分辨率的改变而拉升。
1 using UnityEngine; 2 using System.Collections; 3 4 5 public class Resolution : MonoBehaviour { 6 public Camera mainCamera; 7 void Start() 8 { 9 //Screen.SetResolution(1280, 800, true, 60); 10 mainCamera = Camera.mainCamera; 11 // float screenAspect = 1280 / 720; 现在android手机的主流分辨。 12 // mainCamera.aspect ---> 摄像机的长宽比(宽度除以高度) 13 mainCamera.aspect = 1.78f; 14 } 15 }
把此代码脚本绑定在 MainCamera 上就OK了,这样就不会导致不同分辨率下屏幕显示区域大小不一的问题!