ゲームフレームワークでは様々なピースがどのように連結するのかを、わかりやすい例で考えてみましょう。ウサギとカタツムリが競争するという、シンプルなコンセプトのゲームをイメージしましょう。ゲームフレームワークのベースは GameMode です。GameMode は、ゴールラインを先に横切ったプレーヤーが勝者となるルールを設定します。また、プレイヤーのスポーンもします。
プレイヤーは PlayerController で設定され、ポーンを所有できます。コントローラーはポーンを所有し動作のルールを設定でき、ポーン はゲームでプレイヤーを物理的に表現します。この例では、ポーンの数は、カタツムリ 1 つとウサギ 1 つで合計 2 つとなります。ウサギは実際は キャラクター で、走行やジャンプなどのビルトインされている動作機能をもつポーンの特別なサブクラスです。一方カタツムリは異なる動作のスタイルを持っており、 Pawn クラスから直接拡張することができます。
ポーンは動作と他のゲームロジックに対するルールを持ちますが、機能はコントローラーに含むこともできます。コントローラーは、人間のプレイヤーからの入力を受け取る PlayerController か、コンピューターに自動制御された AIController のいずれかです。この例では、プレイヤーはカタツムリを制御するので、カタツムリのポーンは PlayerController に所有されます。ウサギは、ウサギの キャラクター を所有する AIController にすべて設定されている、止まる、ダッシュする、油断すべきタイミングのルールに従って AI に制御されます。人間のプレイヤーだけがカメラが提供するビューに気をつけるので、カタツムリのポーンの中のたった 1 つの CameraComponent だけが PlayerCamera によって使用されます。
ゲームプレイの間、プレイヤーの入力によりカタツムリはマップの周りを動き、HUD はカメラが提供するビューの上に、現在の首位およびレースの経過時間に関する情報を重ねて表示します。
基本的なフレームワーク エレメントおよび組み合わせ方の表については、ゲームプレイ フレームワーク クイックリファレンス を参照してください。また、各クラスの概要およびブループリントや C++ での設定方法に関する情報が記載されたページに直接ジャンプすることができます。