Language:
Page Info
Engine Version:

ゲームプレイ フレームワークのクイック リファレンス

基本的なゲームプレイ クラスにはプレイヤー、味方、敵を表す機能に加えて、プレイヤー入力もしくは AI ロジックでこれらのアバターを制御する機能が含まれます。プレイヤー用のヘッドアップ ディスプレイや カメラを作成するクラスもあります。最後に、 GameModeGameState、および PlayerState などのゲームプレイ クラスは、ゲーム ルールを設定し、ゲームとプレイヤーの進行状況をトラックします。

これらのクラスはすべて、必要に応じてレベル内に配置したりスポーンすることが可能なアクタのタイプを作成します。

ワールドでプレイヤー、友達、敵を表現する

pawn_lander.png

Pawn

Pawn はワールドで「エージェント」となりうるアクタです。ポーンはコントローラで所有することが可能で、入力の受け取りを簡単に設定でき、他のプレイヤーのような様々なことが行えます。ポーンは人間の形を前提としていないことにご注意ください。

Character

Character は人間の形をしたポーンです。コリジョン用の CapsuleComponent と CharacterMovementComponent がデフォルトで付いています。人間の基本動作が可能で、ネットワーク全体でスムーズに動きをレプリケートでき、アニメーション関連機能も付いています。

プレイヤー入力や AI ロジックでポーンを制御する

controller_lander.png

Controller

Controller はポーンに指示を出す役目のアクタです。通常、 AIController と PlayerController の 2 タイプがあります。コントローラはポーンを「所有」して制御することができます。

PlayerController

PlayerController は、ポーンと、それをコントロールする人プレーヤーとの間のインターフェースです。PlayerController は、基本的に人プレイヤーの意思を表します。

AIController

AIController は、ポーンを制御することができるシミュレートされた「意思」のようなものです。

プレイヤーに情報を表示する

camera_lander.png

HUD

HUD はヘッドアップ ディスプレイです。多くのゲームで一般的な 2D オンスクリーン ディスプレイです。Health 、 ammo 、 gun reticle 等と思ってください。各 PlayerController には、これらのいずれかが通常あります。

Camera

PlayerCameraManager はプレイヤーの「眼球」で、挙動を管理します。各 PlayerController は、通常これらのいずれかを持ちます。詳細は、 camera workflow ページをご覧ください。

ゲームのルールを設定しトラックする

hud_lander.png

GameMode

「ゲーム」のコンセプトは 2 つのクラスに分割されます。Game Mode と Game State は、ゲーム ルールや勝敗条件など含めたゲームの定義です。サーバー上にのみ存在します。通常はプレイ中に変更されるデータがあまりあってはならず、クライアントが知る必要のある一時的なデータは絶対にあってはいけません。

GameState

GameState はゲームのステートを含みます。接続されたプレイヤーのリスト、スコア、チェス ゲームの駒の位置、オープンなワールドゲームで完了したミッションのリストなどが含まれます。GameState はサーバーとすべてのクライアント上に存在し、自由にレプリケートして全てのマシンを最新の状態に保つことができます。

PlayerState

PlayerState は、人プレーヤーやプレイヤーをシミュレートしているボットなどの、ゲームの参加者のステートです。ゲームの一部として存在する非プレイヤーの AI は PlayerState を持ちません。PlayerState として適切なデータの例には、プレイヤー名、スコア、MOBA などの場合のインマッチ レベル、CTF ゲームでプレイヤーが今フラグを持っているかどうか、などがあります。すべてのマシン上ですべてのプレイヤーに対して PlayerStates が存在し (PlayerControllers とは異なります) 、自由にレプリケートして同期することができます。

Framework クラスの関係

このフローチャートは、中核となるこれらのゲームプレイ クラスの関係性を表したものです。ゲームは GameMode と GameState で構成されています。ゲームに参加している人プレイヤーは PlayerControllers と関連付いています。 これらの PlayerControllers により、プレイヤーはゲームでポーンを所有することができ、レベルで物理的な実体を持つことが可能になります。PlayerControllers はまた、入力制御、ヘッドアップ ディスプレイ (HDD) 、 カメラ ビューに対応する PlayerCameraManager もプレイヤーに提供します。

GameFramework.png

Gameplay Framework クラスの詳細は、 ゲームプレイ フレームワーク を参照してください。