Overview: Accessing Other Components Manual     Reference     Scripting  
Scripting
Overview: コンポーネントへのアクセス(Accessing Other Components)

 コンポーネントはゲームオブジェクトに付加されます。Rendererコンポーネントをゲームオブジェクトに負荷すると、スクリーンにレンダリングされます。Cameraオブジェクトをアタッチすると、カメラになります。 全てのスクリプトはコンポーネントですので、ゲームオブジェクトに付加出来ます。

最も一般的なコンポーネントは、次のメンバ変数としてアクセスできます:

コンポーネント
変数名
Transform(移動) transform
Rigidbody(リジッドボディ) rigidbody
Renderer(レンダラ) renderer
Camera(カメラ) camera (only on camera objects)
Light(ライト) light (only on light objects)
Animation(アニメーション) animation
Collider(コライダ) collider
... その他

定義済みのメンバ変数のリストはComponentBehaviourMonoBehaviour クラスのドキュメントを参照してください。ゲームオブジェクトがアクセスしようとしたコンポーネントを持っていない場合、これらの変数はnullになりま す。

ゲームオブジェクトに付加されたコンポーネントやスクリプトは、GetComponent関数で取得できます。

transform.Translate(0, 1, 0);
// is equivalent to
GetComponent(Transform).Translate(0,1,0);

transformとTransformで 頭文字の大小が異なることに注意してください。transformは変数で、Transformはクラスやスクリプトの名前です。大小文字の違いによっ て、変数とスクリプト/クラス名を区別できます。

ここまでに学んだことで、同じゲームオブジェクトに付加されたスクリプトや定義済みコンポーネントを見つけることがGetComponent関 数で可能なことがわかりました。次の例が動くようにするには、DoSomethingという関数が実装されたOtherScriptというスクリプトを作 ります。次のスクリプトとOtherScriptを、同じゲームオブジェクトに付加してください。

// This finds the script
called OtherScript in the same game object

// and calls DoSomething on it.
function Update () {
otherScript = GetComponent(OtherScript);
otherScript.DoSomething();
}