问题描述
我正在使用Unity + Vuforia应用程序,该应用程序可用于特定的葡萄酒盒。侧面有一个水龙头,当您单击它时,球体开始从其中掉落,就像液体一样。我制作了一个脚本,单击水龙头即可赋予球体重力。
[SerializeField]
private Rigidbody sphere;
public Collider tap;
void Start()
{
tap = GetComponent<Collider>();
}
void OnMouseDown()
{
if (sphere.useGravity == false)
{
Debug.Log("Flows");
sphere.useGravity = true;
sphere.isKinematic = false;
}
else if (sphere.useGravity == true)
{
Debug.Log("Stops");
sphere.useGravity = false;
sphere.isKinematic = true;
}
}
将一个球体分配给sphere
变量,我想要的是检查员有一个字段,我可以在其中输入要附加的球体数量,然后手动附加它们。而不是为每个球体都变量。如果还有另一种方法,请告诉我。
总结:我希望一键点击几个useGravity
的刚体。
解决方法
您可以制作诸如public List<RigidBody> bodies
之类的刚体列表,但是您需要使用bodies.Add(rb)
将所有球体分配给该列表,然后实现的效果是在{{1 }}函数被调用。它将使用OnMouseDown()
foreach