【问题标题】:Maintain proportion of a sprite in Unity在 Unity 中保持精灵的比例
【发布时间】:2017-11-13 11:56:53
【问题描述】:

我在 Unity 的 16:9 场景中添加了一个带有 PNG 图像的精灵。当我在 iPad(4:3 纵横比)上查看场景时,它看起来失真。我怎样才能让精灵保持它的比例?

iPad 上的图片:

在计算机上(在 Unity 中):

这是我的设置。

我尝试将这个脚本用于相机,但它不起作用,它只是放大了角色,但仍然失真。 (source):

using UnityEngine;

public class PixelPerfectCamera : MonoBehaviour {

    public float pixelsToUnits = 100;
    private Camera camera;

    void Awake () {
        camera = Camera.main;
    }

    void Update () {
        camera.orthographicSize = Screen.height / pixelsToUnits / 2;
    }
}

我正在使用 Unity 5 在 2D 场景中使用精灵。

【问题讨论】:

  • 你能在两个屏幕分辨率上添加一张图片的快照
  • 您需要根据分辨率调整相机的正交尺寸。这就是你需要的youtube.com/watch?v=yI8JrBNTwkc
  • @UmairM 刚刚添加了一张图片。
  • @Fiffe 这个我试过了,没用:frispgames.com/…
  • @Idan Shechter 互联网上有很多 Pixel Perfect 相机脚本,甚至在资产商店中,您可能得到了过时的脚本或做错了什么。

标签: unity3d unity5


【解决方案1】:

您可以使用图像的保留纵横比选项。

【讨论】:

  • 如果我需要让图像交互,这个解决方案会好吗?精灵没有这个选项,它只用于图像控制。如果我向精灵添加一个 Image 控件并设置 Preserve Aspect,它仍然显得失真。
  • @Idan Shechter 你不应该同时使用 Image 和 Sprite。您是否将图像用于 UI?
  • 那么,你应该使用 SpriteRenderer。对于 SpriteRenderer 纵横比不是问题,您可以随意缩放它。你的问题是我猜分辨率问题。您应该尝试使用高分辨率图标。
  • 我首先使用了精灵渲染器,这就是我遇到问题的地方。当我的应用在 iPad 上运行时,它显示了一个扭曲的骑士图像。
【解决方案2】:

您在 UI/Image 上使用精灵,它需要一个矩形变换组件,导致它根据屏幕调整大小。在空对象上使用精灵渲染器。

创建它的一种方法是使用菜单:

GameObject->2D 对象->Sprite

希望对你有帮助

【讨论】:

    猜你喜欢
    • 2020-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多