コンポーネント

アクタ内のサブオブジェクトとして使用するように設計された様々なタイプのコンポーネントの概要

Choose your operating system:

Windows

macOS

Linux

コンポーネント は、アクタに追加することができる機能の構成要素です。

コンポーネントをアクタに追加すると、アクタはコンポーネントが提供する機能を使用できます。例:

  • Spot Light コンポーネントを使用すると、アクターはスポットライトのように発光します。

  • Rotating Movement コンポーネントを使用すると、アクターが回転します。

  • Audio コンポーネントは、俳優にサウンドを再生する機能を提供します。

コンポーネントはアクタにアタッチする必要があり、単独で存在することはできません。

アクタにコンポーネントを追加すると、レベルに配置するアクタ全体の構成要素を作り上げていることになります。 例えば、車自体はアクタですが、車輪、ハンドル、車体、ライトなどはすべてコンポーネントと考えることができます。

アクタを特徴付けるコンポーネントを追加したら、車がどのように機能するかに関する ブループリント スクリプト (または C++ コード) を用意しなくてもレベルに配置できることは重要です (ドライバーが車の運転操作をしなくても物体として存在可能な現実世界と同じです)。 「アクセル」はコンポーネントであるため、スクリプトやコードによってアクセルが踏み込まれることを示し、同様に車を加速させるロジックを与えます。 各コンポーネントはこれと同じ方法で利用できます (ライトをオンにする、クラクションを鳴らす、ラジオをつける、ステアリングなど)。

コンポーネントのインスタンス化

一般的にサブオブジェクトのデフォルトの挙動とは逆に、アクタ内でサブオブジェクトとして作成されたコンポーネントはインスタンス化されます。つまり、各アクタの特定クラスのインスタンスは、コンポーネントの独自の固有インスタンスを取得します。 上述の乗り物の例で思い描くとわかりやすいでしょう。Car クラスは、車輪の表現にコンポーネントを使用するかもしれません。 クラスのデフォルト プロパティにはサブオブジェクトとして 4 つの Wheel コンポーネントが作成され、"Wheels" 配列へ割り当てられます。新規の Car インスタンスが作成されると、Wheel コンポーネントの新しいインスタンスはその特定の Car 用に作成されます。 これが該当しない場合、ワールドにある一台の Car が動くと、全ての Car の車輪が回転します。これは明らかに望まれる動作ではありません。デフォルトのコンポーネントのインスタンス化は、アクタへ固有のサブオブジェクトを迅速に追加するプロセスを簡素化します。

コンポーネントをインスタンス化しないと、全てのコンポーネントの変数は Instanced プロパティ指定子 を使用して宣言する必要があります。

コンポーネントのタイプ

多様なコンポーネントをアクタへ追加することができます。詳細は以下のリンクを参照してください。

上記以外のコンポーネントについては、「 Unreal Engine API リファレンス 」の「 コンポーネント ビジュアライザ 」セクションを参照してください。

Unreal Engine のドキュメントを改善するために協力をお願いします!どのような改善を望んでいるかご意見をお聞かせください。
調査に参加する
閉じる