所以我创建了一个带有2d精灵边框的蛇形游戏。我的游戏窗口设置为16:9,在此分辨率下图像看起来很好。然而,扩展到任何其他东西开始使游戏看起来很奇怪。我希望游戏窗口可以重新调整大小。如何根据当前分辨率使我的精灵拉伸和缩小?
下面我发布我的精灵如何设置的截图。以及如何将它们放入层次结构中。
示例分辨率和当前输出
答案 0 :(得分:0)
为每个边框添加一个简单的脚本:
public class Border : MonoBehaviour {
enum BorderTypes
{
bottom, top, left, right
}
[SerializeField] float borderOffset = 0.1f;
[SerializeField] BorderTypes type = BorderTypes.top;
// Use this for initialization
void Start () {
switch (type)
{
case BorderTypes.bottom:
transform.position = Camera.main.ViewportToWorldPoint(new Vector3(0.5f, borderOffset, 10));
break;
case BorderTypes.top:
transform.position = Camera.main.ViewportToWorldPoint(new Vector3(0.5f, 1 - borderOffset, 10));
break;
case BorderTypes.left:
transform.position = Camera.main.ViewportToWorldPoint(new Vector3(borderOffset, 0.5f, 10));
break;
case BorderTypes.right:
transform.position = Camera.main.ViewportToWorldPoint(new Vector3(1 - borderOffset, 0.5f, 10));
break;
default:
break;
}
}
}
答案 1 :(得分:0)
您可以使用一种简单的方法:
答案 2 :(得分:0)
首先,您不应该更改精灵。您的问题是游戏视口。您根本无法在“全屏”中的每个设备上都具有16:9的固定长宽比。您在这里有2个选项: