ゲームがプレイヤーとどのようにコミュニケーションし、相互作用するかという問題は極めて重要です。ユーザー インターフェース (UI) と ヘッドアップ ディスプレイ (HUD) は、ゲームについての情報をプレイヤーに与えたり、場合によってはプレイヤーがゲームと相互に作用できるようにします。
アンリアル エンジン 4 (UE4) には、UI と HUD を作成するためのいくつかの方法があります。Canvas
クラスを使用すると、ローレベルでスクリーンに直接描画が可能になり、ワールド上にオーバーレイできます。
ゲームのインターフェースは、プレイヤーに情報を伝達し、指示された入力に対してユーザーを促す手段を提供します。 ゲームのインターフェースは一般的に HUD およびメニューや UI の2 つの主要要素で構成されます。
HUD とは、ゲームプレイ中にスクリーン上でオーバーレイ表示されるステータスと情報のことです。HUD の目的は、 現在のゲームの状態、すなわちスコア、ヘルス値、残り時間などを プレイヤーに知らせることです。HUD は通常、インタラクティブではありません。したがって、プレイヤーが HUD 上の要素をクリックすることはありません。 ただし、ある種のゲームでは、HUD とユーザー インターフェースの区別が難しいことがあります。
ユーザーインターフェース (UI) は、メニューや他のインタラクティブな要素のことを指します。こうした要素はたいてい HUD と同じようにスクリーン上にオーバーレイ表示されます。 ある状況下では、ゲームのワールドそのものとしてゲーム内のサーフェスに レンダリングされることがあります。UI の典型的な例としては、ゲーム起動時に表示されるメインメニューや、 プレイヤーがゲームを一時停止したときに表示される一時停止メニューがあります。ただし、他の UI はゲームプレイ中に表示されることがあります。これらは、 ゲーム内のキャラクター同士の会話を表示するために使用されます。また、RTS や RPG などのさらに複雑な状況では、 プレイヤーが武器や防具、構築する部隊を選択できるようにし、ゲームに不可欠なものになります。
HUD
HUD は、スクリーン上にオーバーレイされる要素を表示するための基本クラスです。ゲーム内でユーザーがコントロールするすべてのプレイヤーは、各自で
AHUD
クラスのインスタンスを持ち、それらは個々のビューポートに描画されます。分割スクリーンのマルチプレイヤー ゲームの場合、
複数のビューポートが同じスクリーンを共有しますが、各 HUD は各自のビューポートに描画します。使用する HUD のタイプやクラスは、
使用しているゲームタイプによって指定されます。
Canvas
Canvas は、HUD のレンダリング ループ中にテキスト、テクスチャ、マテリアル タイル、任意のトライアングル、単純なプリミティブな形状などのエレメントを スクリーンに描画するために使用できるオブジェクトです。何らかの特殊な代替方法を使用しない限りは、 アンリアル エンジンで制作するゲーム内で HUD と UI を作成するためには Canvas を使用して描画します。
スレート
スレート は完全にカスタマイズ可能でプラットフォームに依存しない UI フレームワークで、例えば Unreal Editor やインゲーム UI の独自の楽しみや効率性など、ツールやアプリケーションのユーザーインターフェースの構築にあわせた設計となっています。スレートは宣言記法を簡単にデザイン、レイアウト、及びスタイル コンポーネントを作成する機能と組み合わせることによって、 UI の作成や UI 上でのイタレーションが簡単にできます。