【问题标题】:variable screen resolution sprite not scaling unity可变屏幕分辨率精灵不缩放统一
【发布时间】:2015-06-29 22:15:59
【问题描述】:

我正在努力让我的第一场比赛团结一致。我需要支持android和iOS的不同分辨率。问题是当我为任何一个 res ex 放置背景图像时。 1536x2048,640x960 无法正常显示。屏幕大小不同,但 sprites 和 bg sprite 不按 res 缩放。

我不清楚如何实现它。但是,它必须是一个基本的东西,因为 android 上有这么多游戏,所有手机都有不同的 res。和 dpi。

应该有一些公式,或者我们只需要为此设置 orthographic.size。我正在使用这个:

// 计算大小

Camera.main.orthographicSize = Screen.currentResolution.height / (2*70); //
Camera.main.orthographicSize = Screen.currentResolution.height / 2;
Debug.Log("Camera size :" + Camera.main.orthographicSize); 
Debug.Log("Width : " + Screen.currentResolution.width + " height : " + Screen.currentResolution.height);

// 这并没有根据屏幕分辨率给我宽度和高度,例如。对于 1536x2048 -> 我得到,宽度:1366 高度:768

我发现这是一个类似的问题

http://forum.unity3d.com/threads/orthographic-screen-size.113641/ 但它没有帮助,而问题几乎相同。

如果有人可以分享如何通过代码获得正确的屏幕分辨率以及如何设置bg精灵和其他精灵的宽度,它可以解决问题或

如果有一些设置采用默认场景并自动缩放以适应各种分辨率。会有帮助的。

【问题讨论】:

    标签: android unity3d sprite screen-resolution


    【解决方案1】:

    Unity 不会像那样扩展。相反,我们设计资产以满足我们的需求。您正在使用一个公式,但我不知道您对此有何期望。 这里有一些信息:正交大小是视口的高度。以您为例,对于 2048 的高度,相机尺寸为:2048/2/100=10.24。无论设备屏幕大小如何,这都将保持不变。唯一的区别是它在较小的设备上会不太详细,有点像缩小效果。现在对于宽度,我不确定纵向,但假设 9:16 是最宽的。因此,如果您为此宽高比设计背景,则背景将在较小的设备上被裁剪,在 9:16 设备上显示完整。要针对此宽高比进行设计,您的背景需要为 9/16*10.24*100=576 像素。 (我再次不确定纵向模式下哪个纵横比最宽)。希望有帮助

    【讨论】:

    • @Sumitiscreative 这有帮助吗?
    猜你喜欢
    • 2016-04-02
    • 2016-07-27
    • 1970-01-01
    • 2016-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多