我正在用一个球和一个球员做一场比赛。到目前为止,我为球制作了一个球体,为玩家制作了一个正方形(稍后会制作模型)。我为玩家附加了一个运动脚本,以便它可以向各个方向移动,但我希望他能够在碰到球时捡起球。为此,我假设在球脚本中,在碰撞函数中,我必须将其位置更改为玩家的位置。所以我想知道:从球脚本中访问球员坐标的正确方法是什么?
问问题
23816 次
1 回答
6
我希望我对你的理解是正确的。为了得到你会做的职位:
GameObject player = GameObject.Find ("Player");
Transform playerTransform = player.transform;
// get player position
Vector3 position = playerTransform.position;
但是要捡起并带走球,您应该做育儿:
// ...
transform.parent = playerTransform;
// take care to disable physics while ball is under control of the player
rigidbody.isKinematic = true;
这样您就不必在每次更新或固定更新时自己移动球了。如果球员后来丢球,只需通过设置球的transform.parent = null
and来反转isKinematic = false
。
于 2012-04-04T21:40:19.503 回答