我正在开发一款基于unity并使用1080x1920纵向分辨率的3d游戏。
当我在手机上构建和运行项目时,它的纵向分辨率为1080x2340,它会切断游戏的一部分(侧面)。
红线表示在哪里断开
镜头没有跟随,所以玩家可以"走出屏幕"。
我如何解决这个问题,确保我的游戏在不同的分辨率下看起来是一样的?
(编辑到正确的分辨率顺序)
你的游戏区有固定的大小吗?如果游戏内游戏区域的宽高比与运行游戏的设备不一样,你就必须砍掉它的一部分,或者在顶部/底部或左侧/右侧添加空白。Unity的相机正交尺寸决定了相机视图的高度,而不是宽度。宽度仅为screenAspectRatio * camera orthographic size
修改:
float aspect = Screen.Width / Screen.Height;
myCamera.orthographicSize = Mathf.Max(playAreaHeight, playAreaWidth / aspect);
这将导致相机的视图太宽或太高,而不是太小。