Camera 属性设置为是正交摄像机 在不同的手机的分辨率下 都会由于分辨率的不同导致视口的差异,如图:
是在1920X1080的分辨率下的视口
在小米的1440X720下的视口
明显能看出来小米的1440X720的视口更宽广一些 在一些3D游戏 可能会分多个摄像机去照不同的视角的战斗场面 例如说捕鱼 假设说有三层 第一层是UI 也就是你的炮台子弹 人物信息的UI层 而为了体现出鱼是在3D环境下 那么鱼就有可能是一个3D层 最后还有一个背景层 这三层组成 不同的玩家使用的手机的分辨率不同会导致视口大小不一 就有可能造成在这个玩家的视野这条鱼是看的到打得到的 而在别人的手机看不到你打的这条鱼 导致游戏体验性差 那么为了保证视口的同一 我们可以根据一个公式去计算 公式是:
实际上是宽/高 不说了上代码:
public class CameraAbadtation: MonoBehaviour
{
public float InitialWidth = 1920;//初始宽
public float InitialHigh = 1080;//初始高
public float InitialViewport = 5;//初始视口
// Use this for initialization
void
通过代码设置视口的自适应(正交摄像机)
最新推荐文章于 2024-01-18 00:10:22 发布
在不同分辨率设备上,正交摄像机的视口大小会导致显示差异,影响游戏体验。通过设置公式`实际视口 = 初始视口 * 初始宽高/实际宽高`,可以实现视口自适应。示例代码中,`orthographicSize`被调整以适应屏幕宽高比,确保不同设备上的视口一致性。注意,获取屏幕尺寸时需转换为浮点数。
摘要由CSDN通过智能技术生成