分配多个刚体以起作用

问题描述

我正在使用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

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...