Language:
Page Info
Engine Version:

アンリアルのアーキテクチャ

C++ コードでゲームプレイ要素をプログラミングする場合、各モジュールにはたくさんの C++ クラスが含まれることがあります。

ProjectModuleClassOrg.png

クラスはそれぞれ新規のアクタまたはオブジェクトに対するテンプレートを定義します。クラスヘッダ ファイル内では、そのクラス、クラスの 関数 および プロパティ が宣言されます。クラスには、関連プロパティの整理と操作をしやすくするデータ構造である 構造体 も含まれます。構造体はそれ自体でも定義することができます。 インターフェース は追加のゲームプレイの挙動を異なるクラスで実装できるようにします。

アンリアル エンジンでプログラミングする場合、標準の C++ クラス、関数、変数をもつことが可能です。これらは、標準の C++ 記法で定義することができます。ただし、アンリアル エンジンに新規のクラス、関数、変数を認識させるように UCLASS() 、 UFUNCTION() 、 UPROPERTY() マクロを使用することができます。例えば、 UPROPERTY() マクロで始まる宣言のある変数はエンジンによるガーベジ コレクションの対象となることができ、 アンリアル エディタ内での表示と編集が可能です。UINTERFACE() マクロと USTRUCT() マクロ、および各マクロのキーワードを使って クラス関数プロパティ 、 インターフェース、構造体 のアンリアル エンジンとアンリアル エディタ内での挙動を指定することができます。

上記のマクロに加えて、UPARAM() マクロがあります。このマクロは主に C++ コードをブループリントに公開する場合に使用します。UPARAM() の使用例は、ゲームプレイ要素をブループリントに公開する のドキュメントをご覧ください。

ゲームプレイ プログラミングのリファレンス ディレクトリ