0

gameObject があり、スクリプトの 1 つから値を取得したいと考えています。スクリプトをどのように指定しますか? 現時点では、Body という名前のスクリプトから gameObject を呼び出しており、RightArm という名前のスクリプトを取得したいと考えています。

4

1 に答える 1

1

Body スクリプト内で、Arm が Body 内にあると仮定して、これを行うことができます。

RightArm rArm = GetComponentInChildren<RightArm>();

すべての子を調べて、必要な正しいコンポーネントを見つけます。これを使用して、リジボディなどのあらゆる種類のコンポーネントを見つけることができます。

RightArm が別の場所、おそらく体外の床にあると仮定します。次に、これを行うことができます:

RightArm rArm = GameObject.Find("RightArm").GetComponent<RightArm>();

「RightArm」を、RightArm スクリプトを含むゲームオブジェクトの名前にします。

この 2 番目の実装は、シーン内で「RightArm」という名前のゲーム オブジェクトを調べてから、そのゲーム オブジェクト内のコンポーネントを調べて、RightArm スクリプトを返します。「RightArm」という名前のゲーム オブジェクトがない場合、null のコンポーネントを取得しようとすると例外が発生します。

于 2013-06-02T19:08:16.980 に答える