【发布时间】:2020-07-14 08:01:36
【问题描述】:
我目前正在使用 C# 在 Unity 中开发游戏,但遇到了一个小问题。
我需要相对于Spawnposition 和另一个游戏对象的长度生成某个gameobjects。
现在我认为bounds.size 将是在此实例中使用的最佳函数。
如下所示,我首先在我的启动方法中声明使用它的变量:
public void Start()
{
GameObject PointBar = (GameObject) Resources.Load("PointBar Horizontal");
PointBarVectorLength = PointBar.GetComponent<BoxCollider2D>().bounds.size.x;
PointBarVectorConv = Camera.main.WorldToViewportPoint(new Vector2(PointBarVectorLength, 0f));
}
但是,有问题的 gameobjects 在 start 调用时处于非活动状态,因此我认为在调用时不会为 bounds.size 返回任何值。
有谁知道我如何访问bounds.size 或等效的非活动gameobject 或者我在这里还缺少什么?
【问题讨论】:
-
你能画出你想要达到的目标吗?为什么要把它转换成视口空间?
-
因为我的游戏需要在多种屏幕配置下运行。因为是手机游戏所以我把世界空间转换成ViewportSpace
标签: c# unity3d vector game-engine game-development