Unity:什么是Unity测量?

Has*_*yat 2 c# coordinates unity-game-engine measure unity5

什么是Unity坐标测量?(cm,m,km)

如何实施真正的措施呢?

我想在Unity中实现一个真正的措施.怎么做?

public Vector2 GetAsMeters (Vector2 vec) {
    Vector2 meters = new Vector2 (0, 0);
    while (vec.x > 1000) {
        vec.x -= 1000;
        meters.x++;
    }
    meters.x += vec.x;
    while (vec.y > 1000) {
        vec.y -= 1000;
        meters.y++;
    }
    meters.y += vec.y;
    return meters;
}
Run Code Online (Sandbox Code Playgroud)

编辑:如何实现像"Left 4 Dead"这样的测量?(这个游戏有一个巨大的地图,它只要真正的公里)

Jon*_*son 5

在Unity中,由开发人员决定单元的含义.开发人员坚持1台仅仅1米就很常见了.

如果这样做,您可以通过简单地检索它的大小来计算Vector2的长度(以米为单位).

float distanceInMeters = myVector2.magnitude
Run Code Online (Sandbox Code Playgroud)

通过坚持1个1米的单位你也可以测量两个位置之间的距离,如下所示:

float distanceInMeters = Vector2.Distance(positionA, positionB)
Run Code Online (Sandbox Code Playgroud)