如何在 Unity3D 游戏启动时将内容放入屏幕的指定区域

How to fit content into a specified area of screen at game startup in Unity3D

我们正在使用 Unity3D 开发一个有趣的医疗应用程序。通过非常简单地制作它,我们有一个非常大的触摸屏,挂在墙上。这个屏风是固定在墙上的,不能移动。患者可以是成人或儿童。高或矮的人等等。在开始游戏之前,我们执行一个校准阶段,其中包括尝试或多或少地了解触摸范围是多少。也就是说,个子高的人可以到达屏幕的最高点,而个子矮的人则不能。然后校准阶段或多或少地识别哪个区域是可到达的。校准的结果(简化)是一个矩形。我们希望将使用 Unity3D 制作的游戏内容包含在该矩形内。也就是说,Unity3D 中有一些函数允许您通过定义一种 "sub screen"?

来指定何时开始游戏 "draw" 游戏元素

绝对是的。这很简单,只需更改 CameraViewport Rect:

同时检查 Documentation 的完整性(段落 标准化视口矩形 报告了游戏领域的一个例子,其中摄像机被分割用于两人比赛。 ..你基本上想要同样的东西,但只有一个相机)。

this doc 中,还有一个以编程方式更改视口的示例(您就是这种情况)。基本上:

Camera.main.rect = new Rect(xMin, xMax, yMin, yMax);