Ash*_*ria 52 android screen-resolution unity-game-engine ios
我正在使用Unity 4.3.3进行游戏.我正在为Android和iOS设备制作游戏.由于我对团结很新,我似乎找不到使用不同屏幕分辨率的方法.我正在使用c#作为我的脚本.
我想让我的游戏全屏运行.我已经在iPad 2上进行了测试,它运行得很完美,但对于iPhone 4来说,两侧都是剪裁的,对于iPhone 5,它们的剪裁效果更好.解决办法是什么?我应该在播放器设置> iOS>其他设置>目标分辨率下选择哪个选项?
Ste*_*lls 40
unity更改其游戏相机以匹配其使用的屏幕宽高比的尺寸.显然这并不总是需要,所以有几种方法可以解决这个问题:
1)第一种方法很容易实现,尽管很少看起来很好.您只需更改相机的纵横比即可与您设计的游戏相匹配.所以,如果你以4:3的比例设计你的游戏,你会做这样的事情:
Camera.aspect = 4f/3f;
Run Code Online (Sandbox Code Playgroud)
请记住,这会在不同的宽高比上扭曲游戏.
2)另一种方法稍微复杂一些,但结果看起来要好得多.如果您使用的是正交相机,请记住一件重要的事情是,无论使用何种屏幕分辨率,正交相机都会将高度保持在设定值并仅更改宽度.例如,使用尺寸为10的正交相机,高度将设置为2.考虑到这一点,您需要做的是补偿每个级别内最宽的相机(例如,具有更宽的背景)或动态更改相机的正交尺寸,直到其宽度与您创建的相匹配.
只需将GUI位置设置为依赖于所需的屏幕分辨率,GUI组件就更容易实现.例如,如果您想要一个按钮出现在右上角,您只需将其位置设置为类似的位置position = new Vector2(Screen.width - 50, 50);
编辑:既然你提到了你使用的设备,我做了一些查找,找到每个使用的宽高比:Ipad2 = 4:3,Iphone4 = 3:2,Iphone5 = 16:9
既然你说它在Ipad2上看起来很完美,我猜你已经设计了你的游戏使用4:3的宽高比,所以你提到的"剪裁"只是你的正交相机已经扩大了.解决方案是使用我上面描述的两种方法之一.
您可以非常轻松地看到它在Unity编辑器中的每个设备上的外观.如果你进入游戏选项卡(在统一编辑器中按下播放时弹出的内容),你会看到它有一个设备名称,以及分辨率和宽高比.更改此项将让您了解在不同宽高比下的效果.
小智 4
您可能想尝试使用 Camera.ScreenWidth 和 Camera.ScreenHeight 捕获设备分辨率。
然后进行一些数学运算来计算与您拥有的分辨率的差异,并将其应用到父对象。
这将缩放所有内容更大/更小以适应设备分辨率,而无需为不同分辨率的设备提供多个图像分辨率等。
| 归档时间: |
|
| 查看次数: |
75820 次 |
| 最近记录: |