UDN
Search public documentation:

HUDTechnicalGuideJP
English Translation
中国翻译
한국어

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 ホーム > ユーザーインターフェースと HUD > HUD技術ガイド


HUD 技術ガイド


概要


HUD (Heads Up Display : ヘッド アップ ディスプレイ) は、ゲームのステート (状態) に関する情報を、ゲーム中のプレイヤーに素早く簡単に伝えるために使用されます。HUD にはたとえば次のような情報が含まれています。すなわち、プレイヤーの現在のヘルス値、プレイヤーが携行または使用している武器やアイテム、他のプレイヤーやアイテムの位置を教えるワールドマップ、プレイヤーの得点などです。これらの情報は、グラフィックスとテクストの描画によって、ワールドの上に表示されます。

中には、非常に複雑な HUD をともなったゲームもあります。大抵の FPS (First Person Shooting : 一人称シューティング) ゲームでは、かなりシンプルな HUD になっています。これは、プレイヤーがワールドを見るのを妨げることがないように、特定の少数の情報を一目で伝わるように作られています。通常の FPS ゲームでは、展開が速く、一瞬の違いで生死が決まることがあるからです。それに比べて RPG の場合は、HUD がかなり複雑になるでしょう。単純な HUD というよりも UI に近くなります。

実際は、この 2 つの境界がしばしば曖昧になるのですが、HUD には何が必要になるかという問題は、個人の分類によるとことが大きい。ただし、このような問題は本ドキュメントの範囲を超えています。本ドキュメントの目的は、HUD 作成のためのガイドを提供するとともに、HUD 作成のために使用できる「Unreal Engine 3」の機能について解説することにあります。

HUD のタイプ


「Unreal Engine 3」で使用できる HUD には 2 つの基本的なタイプがあります。その方法は次の通りです。

  • Canvas - Canvas クラスを使用して HUD グラフィックスを描画します。
  • Scaleform GFx - 「Scaleform Gfx」 統合を利用して HUD グラフィックスとメニューを表示します。

これら 2 つのタイプの HUD は、互いを排するものではありません。つまり、必要に応じて、両者をミックスさせて使用することが可能です。

Canvas HUD

Canvas クラスには、グラフィックスとテクストをスクリーンに描画するのに必要となる、あらゆるツールが揃っています。これまで「Unreal Engine」を使用して開発されてきた非常に多くのゲームに使用されています。ほとんどあらゆるゲームに有効なソリューションだからです。このメソッドは、調整不要の入力処理とかアニメーションを提供するものではありません。メニューや複雑な UI を作成するのには向かないからです。

Canvas クラスを使用して HUD を作成する際に必要となる情報の詳細については、 Canvas 技術ガイド を参照してください。

Scaleform GFx HUD

「Unreal Engine 3」における「Scaleform Gfx 」統合も同様に、インゲームの HUD ならびにメニュー、UI の作成に適しています。Flash でシーンをセットアップするには確かにオーバーヘッドがかかりますが、コードだけでいろいろなものを配置するのにプログラマーに頼るということもなく、設計者は、ひとりでインターフェースをセットアップすることができるようになります。

HUD クラス


HUD クラスは、スクリーンに描画するものを決定するとともに、表示する情報を取得および処理するために必要となるロジックをすべて決定します。各プレイヤーは、HUD クラス (あるいはそのサブクラス) のインスタンスを自分専用にもちます。これは、ゲームのビューポートが初期化されたときに作成されます。プレイヤーがもつ HUD インスタンスの正確な作成過程は次のようになります。

HUD_CreateFlow.jpg

更新ごとに、プレイヤーの HUD で PostRender() イベントが実行され、HUD のコンテンツをスクリーンへ再描画するプロセスが開始されます。 PostRender() イベントが、メインの描画関数の DrawHUD() を呼び出すことになります。各更新ごとに生じる一連の描画イベントは次のようになります。

HUD_DrawFlow.jpg

DrawHUD() 関数は、より機能が特化した他の描画関数を呼び出して、HUD の各種エレメントをスクリーンに描画していく場合があります。たとえば、 DrawMinimap() 関数によって、ワールドと必要な他プレイヤーおよび地点のマップだけを描画する場合が考えられます。

HUD のプロパティ

デバッグ

  • bShowDebugInfo - TRUE の場合は、現在の ViewTarget のデバッグ プロパティがスクリーン上に表示されます。
  • DebugDisplay - bShowDebugInfo がTRUE の場合に、現在の ViewTarget のアクタのために表示するデバッグ情報を指定する文字列の配列です。ベースエンジンがサポートしているタイプには、AI、physics (物理)、weapon (武器)、net、camera、collision (コリジョン / 衝突) が含まれています。

ディスプレイ

  • Canvas - HUD を描画する Canvas オブジェクトです。 注意 : 毎フレームごとに新たな Canvas がもたらされます。HUD::PostRender() イベントからその上に描画するにすぎません。Canvas クラスの使用法の詳細については、 Canvas HUD 技術ガイド? を参照してください。
  • PlayerOwner - HUD を所有している PlayerController (例 : ローカルの PlayerController ) を参照します。
  • PostRenderedActors - HUD オーバーレイを描画するために呼び出される NativePostRenderFor() および PostRenderFor() 関数を必要とするアクタの配列です。
  • WhiteColor/GreenColor/RedColor - 白、緑、赤のカラー変数をプリセットします。
  • bShowHUD - TRUE の場合は、HUD が可視化します。
  • bShowScores - TRUE の場合は、スコアボードが可視化します。
  • bShowBadConnectionAlert - TRUE の場合は、不良な接続が HUD 上に表示されます。ラグとパケットロスに基づいて、ネーティブコードで設定されます。
  • RenderDelta - 前回の更新から経過した時間です。単位は秒です。
  • LastHUDRenderTime - RenderDelta を計算する際に必要となる前回レンダリングの時間を保持します。

メッセージ

  • ConsoleMessages - 表示するメッセージの配列です。
  • ConsoleColor - コンソールメッセージを表示する際に使用するカラーです。
  • ConsoleMessageCount - ConsoleMessages 配列に保持するコンソールメッセージの最大数です。
  • ConsoleFontSize -
  • MessageFontOffset - 使用するフォントを決定する際に、LocalMessages の FontSize に適用するオフセットです。
  • MaxHUDAreaMessageCount - 表示する LocalMessages の最大量です。
  • LocalMessages - 表示する LocalMessages の配列です。
  • ConsoleMessagePos[X/Y] - コンソールメッセージを表示する際の、スクリーン上の水平位置および垂直位置です。
  • KismetTextInfo - 表示する Kismet DrawText の配列です。
  • bMessageBeep - TRUE の場合は、新たなコンソールメッセージが表示されるとビープ音が鳴ります。

ビューポート

  • HUDCanvasScale - (Tvのために) 使用するスクリーン空間の量です。[0,1] の範囲で表します。
  • Size[X/Y] - 水平方向および垂直方向で表したビューポートのサイズです。単位はピクセルです。
  • Center[X/Y] - ビューポートの中心の水平位置と垂直位置です。
  • Ratio[X/Y] - ネイティブの解像度である 1024 × 768 に対する、現在のビューポートのサイズの比です。水平方向および垂直方向で表します。

HUD の関数

デバッグ

  • ShowDebug [DebugType] - プレイヤーの現在の ViewTarget がもつプロパティについて、その表示 / 非表示を切り替えます。
    • DebugType - 表示 / 非表示にするプロパティです。ベースエンジンによってサポートされている値には、AI、physics (物理)、weapon (武器)、net、camera、collision (コリジョン / 衝突) が含まれています。
  • ShowDisplayDebug [DebugType] - 指定されたデバッグ情報が現在表示されるように設定されているかどうかを決定します。例 : DebugDisplay 配列の中で設定されているかどうか。
    • DebugType - チェックするプロパティです。ベースエンジンによってサポートされている値には、AI、physics (物理)、weapon (武器)、net、camera、collision (コリジョン / 衝突) が含まれています。
  • ShowDebugInfo [out_YL] [out_YPos] - HUD 上の基本的なデバッグ レンダリングのためのエントリーポイントです。showdebug コンソールコマンドによって、アクティベートされるとともに制御されます。オーバーライドすることによって、ゲーム単位でカスタムのデバッグを表示することが可能です。
    • out_YL - 現在のフォントの高さです。
    • out_YPos - Canvas 上の垂直位置です。 out_YPos + out_YL= によって、次のデバッグラインのためのテキストを描画する位置が出されます。
  • DrawRoute [Target] - 現在のルートに関して、ボットである ViewTargets のためにデバッグ情報を描画します。
    • Target - ルート情報を描画するポーン (ボット) を参照します。

ディスプレイ

  • ToggleHud - bShowHUD 変数によって、HUD の可視 / 非可視を切り替える実行関数です。
  • ShowHUD - ToggleHUD() 関数を呼び出すことによって、HUD の可視 / 非可視を切り替える実行関数です。
  • ShowScores - SetShowScores() 関数を呼び出すことによって、インゲームのスコアボードの可視 / 非可視を切り替える実行関数です。
  • SetShowScores [bNewValue] - bShowScores 変数によって、インゲームのスコアボードの可視性を設定する実行関数です。
    • bNewValue - bShowScores 変数のための新しい値です。
  • DisplayBadConnectionAlert - 不正な接続の警告メッセージを描画する関数スタブです。サブクラスによってオーバーライドされる必要があります。

描画

  • PreCalcValues - Size[X/Y]、Center[X/Y]、Ratio[X/Y] の値を計算して設定します。
  • PostRender - HUD のためのメインの描画関数です。エンジンによってフレームごとに呼び出されます。
  • DrawHUD - メインとなるゲーム HUD の描画関数です。メッセージを出す前に呼び出されます。ゲーム別の HUD 描画を扱うには、この関数をオーバーライドします。
  • Draw2DLine [X1] [Y1] [X2] [Y2] [LineColor] - 2D 空間にある線をスクリーンに描画します。
    • [X/Y]1 - 線の始点を水平位置と垂直位置で表したものです。単位はピクセルです。
    • [X/Y]2 - 線の終点を水平位置と垂直位置で表したものです。単位はピクセルです。
    • LineColor - 線を描画する際に使用するカラーです。
  • Draw3DLine [Start] [End] [LineColor] - 3D 空間にある線をスクリーンに描画します。
    • Start - ワールド空間での線の始点を指定するベクターです。
    • End - ワールド空間での線の終点を指定するベクターです。
    • LineColor - 線を描画する際に使用するカラーです。
  • DrawText [Text] [Position] [TextFont] [FontScale] [TextColor] - テキストの文字列をスクリーンに描画します。
    • Text - スクリーンに描画する文字列です。
    • Position - スクリーン上にテキストを描画する水平 (X) 位置と垂直 (Y) 位置を指定する Vector2D です。単位はピクセルです。
    • TextFont - テクストを描画するのに使用するフォントです。
    • FontScale - テクストの水平 (X) 方向の スケールと垂直 (Y) 方向のスケールを指定する Vector2D です。
    • TextColor - テクストを描画するのに使用するカラーです。
  • DrawActorOverlays [Viewpoint] [ViewRotation] - ネイティブの関数です。今回のティックでレンダリングされて自身を PostRenderedActors 配列に加えたアクタのためのオーバーレイを描画します。
    • Viewpoint - プレイヤー カメラの現在の位置です。
    • ViewRotation - プレイヤー カメラの現在の回転です。
  • AddPostRenderedActor [A] - アクタを PostRenderedActors のリストに追加します。
    • A - この配列に追加するアクタを参照します。
  • RemovePostRenderedActor [A] - アクタを PostRenderedActors のリストから削除します。
    • A - この配列から削除するアクタを参照します。
  • GetFontSizeIndex [FontSize] - 指定されたフォントのサイズに対応するフォントを返します。
    • FontSize - フォントを得るためのサイズです。

全般

  • PlayerOwnerDied - HUD の PlayerOwner が停止したときに呼び出される関数スタブです。サブクラスによってオーバーライドされる必要があります。
  • OnLostFocusPause [bEnable] - メイン ウインドウのフォーカスが消失することによって、ゲームを停止 / 停止解除します。
    • bEnable - TRUE の場合は、停止ステートを有効にします。そうでない場合は、停止ステートは無効になります。

メッセージ

  • ClearMessage [M] - 指定された LocalMessage を解除します。
    • M - 解除する HudLocalizedMessage を参照します。
  • Message [PRI[ [Msg] [MsgType] [LifeTime] - 新たなコンソールメッセージを追加するラッパー関数です。 AddConsoleMessage() を呼び出します。
    • PRI - メッセージを送っているプレイヤーの PlayerReplicationInfo を参照します。
    • Msg - メッセージのテクストです。
    • MsgType - メッセージのタイプです。たとえば、Say (話す)、TeamSay (チームで話す) などのことです。
    • LifeTime - オプション引数です。メッセージを表示する秒数です。
  • AddConsoleMessage [M] [InMessageClass] [PRI] [LifeTime] - 新たに表示する ConsoleMessage を追加します。
    • M - メッセージのテクストです。
    • InMessageClass - 新たなメッセージのクラス (LocalMessage またはサブクラス) です。
    • PRI - このメッセージに関連するプレイヤーの PlayerReplicationInfo を参照します。
    • LifeTime - オプション引数です。メッセージを表示する秒数です。
  • DisplayConsoleMessages - ペンディングしている ConsoleMessages をスクリーンに描画します。
  • LocalizedMessage [InMessageClass] [RelatedPRI_1] [RelatedPRI_2] [CriticalString] [Switch] [Position] [LifeTime] [FontSize] [DrawColor] [OptionalObject] - 新たに表示する LocalMessage を追加するラッパー関数です。 AddLocalizedMessage() を呼び出します。また、メッセージクラスの bIsSpecial プロパティが FALSE の場合は、コンソールメッセージとしてメッセージを追加します。
    • InMessageClass - 新たなメッセージのクラス (LocalMessage またはサブクラス) です。
    • RelatedPRI_1 - メッセージに関係するプレイヤーの第 1 PlayerReplicationInfo を参照します。メッセージのクラスによって、PRI (PlayerReplicationInfo) の使用方法が定義されます。
    • RelatedPRI_2 - メッセージに関係するプレイヤーの第 2 PlayerReplicationInfo を参照します。メッセージのクラスによって、PRI (PlayerReplicationInfo) の使用方法が定義されます。
    • CriticalString - メッセージのテクストです。
    • Switch - メッセージのスイッチです。メッセージのクラスによって、スイッチの使用方法が定義されます。
    • Position - スクリーン上におけるメッセージの垂直位置です。
    • LifeTime - メッセージが表示される秒数です。
    • FontSize - メッセージを表示するために使用するフォントのサイズです。 MessageFontOffset 分だけオフセットされるとともに、 GetFontSizeIndex() に渡されることによって、メッセージを表示するために使用するフォントを得ます。
    • DrawColor - メッセージを表示する際に使用するカラーです。
    • OptionalObject - オプション引数です。メッセージに関係するオブジェクトへの参照です。メッセージのクラスによって、オブジェクトの使用方法が定義されます。
  • AddLocalizedMessage [Index] [InMessageClass] [CriticalString] [Switch] [Position] [LifeTime] [FontSize] [DrawColor] [MessageCount] [OptionalObject] - 実際のメッセージを LocalMessages 配列に追加します。
    • Index - 新しいメッセージを配置する LocalMessages のインデックスです。
    • InMessageClass - 新たなメッセージのクラス (LocalMessage またはサブクラス) です。
    • CriticalString - メッセージのテクストです。
    • Switch - メッセージのスイッチです。メッセージのクラスによって、スイッチの使用方法が定義されます。
    • Position - スクリーン上におけるメッセージの垂直位置です。
    • LifeTime - メッセージが表示される秒数です。
    • FontSize - メッセージを表示するために使用するフォントのサイズです。 MessageFontOffset 分だけオフセットされるとともに、 GetFontSizeIndex() に渡されることによって、メッセージを表示するために使用するフォントを得ます。
    • DrawColor - メッセージを表示する際に使用するカラーです。
    • MessageCount - オプション引数です。現在 LocalMessages 配列の中にあるメッセージの数です。
    • OptionalObject - オプション引数です。メッセージに関係するオブジェクトへの参照です。メッセージのクラスによって、オブジェクトの使用方法が定義されます。
  • GetScreenCoords [PosY] [ScreenX] [ScreenY] [InMessage] - LocalMessage を描画するために、スクリーン上の位置を計算します。
    • PosY - メッセージの垂直位置です。
    • ScreenX - 出力引数です。水平位置を出力します。単位はピクセルです。
    • ScreenY - 出力引数です。垂直位置を出力します。単位はピクセルです。
    • InMessage - 出力引数です。スクリーン上の位置を得るメッセージです。
  • DrawMessage [i] [PosY] [DX] [DY] - LocalMessage を表示するためのセットアップを行うとともに、 DrawMessageText() を呼び出すことによってメッセージを表示します。
    • i - 表示するメッセージが入っている LocalMessages 配列のインデックスです。
    • PosY - メッセージの、スクリーン上の垂直位置です。
    • DX - 出力引数です。メッセージのテクストがもつ幅を出力します。
    • DY - 出力引数です。メッセージのテクストがもつ高さを出力します。
  • DrawMessageText [LocalMessage] [ScreenX] [ScreenY] - LocalMessage に入っているテクストをスクリーンに表示します。
    • LocalMessage - テクストを表示する LocalMessage です。
    • ScreenX - メッセージ テクストを描画するための、スクリーン上の水平位置です。単位はピクセルです。
    • ScreenY - メッセージ テクストを描画するための、スクリーン上の垂直位置です。単位はピクセルです。
  • DisplayLocalMessages - LocalMessages のレイアウトを実施してから表示します。
  • DisplayKismetMessages - ペンディングしている Kismet DrawText メッセージをすべて表示します。

MobileHUD


MobileHUD クラスは、基本 HUD クラスの派生クラスです。このクラスには、モバイルデバイス上で HUD を表示するために必要となる 付加的なHUD の機能 (例 : タッチ制御) が追加されています。作成するゲームがモバイルデバイス向けである場合は、HUD を MobileHUD クラス かそのサブクラスから派生させる必要があります。

MobileHUD プロパティ

操作

  • JoystickBackground - ジョイスティック構成要素のバックグラウンド部分に使うグラフィックスを含むテクスチャです。
  • JoystickBackgroundUVs - JoystickBackground テクスチャに含まれるグラフィックスの座標を指定する TextureUVs です。
  • JoystickBackgroundUVs - 実際のジョイスティックの構成要素に使用されるグラフィックスを含むテクスチャです。
  • JoystickHatUVs - JoystickHat テクスチャに含まれているグラフィックスの座標を指定する TextureUVs です。
  • ButtonImages - オンスクリーン ボタンに使われるグラフィックスを含んでいるテクスチャの配列です。
  • ButtonUVs - ButtonImages テクスチャに含まれているグラフィックスの座標を指定する TextureUVs 配列です。
  • ButtonFont - オンスクリーン ボタンのラベルを描画するために使用するフォントです。
  • ButtonCaptionColor - オンスクリーン ボタンのラベルを描画する際に使用するカラーです。
  • TrackballBackground - トラックボール構成要素のバックグラウンド部分に使うグラフィックスを含むテクスチャです。
  • TrackballBackgroundUVs - TrackballBackground テクスチャに含まれているグラフィックスの座標を指定する TextureUVs です。
  • TrackballTouchIndicator - トラックボールのタッチインジケータのバックグラウンド部分に使用するグラフィックスを含んでいるテクスチャです。
  • TrackballTouchIndicatorUVs - TrackballTouchIndicator テクスチャに含まれているグラフィックスの座標を指定する TextureUVs 配列です。
  • SliderImages - オンスクリーン スライダーに使われるグラフィックスを含むテクスチャの配列です。
  • SliderUVs - SliderImages テクスチャに含まれているグラフィックスの座標を指定する TextureUVs 配列です。

デバッグ

  • bDebugTouches - TRUE の場合は、タッチに関するデバッグ情報を表示します。
  • bDebugZones - TRUE の場合は、各種モバイルの入力ゾーンについてのデバッグ情報を表示します。
  • bDebugZonePresses - TRUE の場合は、押下したときに限り、各種モバイルの入力ゾーンについてのデバッグ情報を表示します。

全般

  • bShowGameHud - TRUE の場合は、標準的なゲーム HUD を表示します。これは、ShowHud コマンドをサポートしながらも、HUD を完全に非表示する機能をサポートするのに必要となります。
  • bShowMobileHud - TRUE の場合は、モバイル HUD (例 : 入力ゾーンなど) を表示します。
  • bForceMobileHUD - TRUE の場合は、非モバイル プラットフォーム上であっても、モバイル HUD を表示します。

傾き (ティルト)

  • bShowMobileTilt - TRUE の場合は、デバイスの傾きを表示します。
  • MobileTilt[X/Y] - デバイスの傾きを表示する水平位置と垂直位置です。
  • MobileTiltSize - デバイスの傾きを表示する際のサイズです。

MobileHUD の関数

描画

  • ShowMobileHud - モバイル HUD を表示するか否かを返します。
  • RenderMobileMenu - モバイル HUD のメニューのための描画関数です。モバイル HUD の描画が完了すると、 PostRender() が呼び出されます。

ゾーン

  • DrawInputZoneOverlays - メインのモバイル HUD のための描画関数です。入力ゾーンを最上位にオーバーレイ表示します。メインの HUD の描画が完了すると、 PostRender() が呼び出されます。
  • DrawMobileZone_Button [Zone] - 指定された入力ゾーンのためのボタンを描画します。
    • Zone - ボタンを描画する MobileINputZone です。
  • DrawMobileZone_Joystick [Zone] - 指定された入力ゾーンのためのジョイスティックを描画します。
    • Zone - ジョイスティックを描画する MobileINputZone です。
  • DrawMobileZone_Trackball [Zone] - 指定された入力ゾーンのためのトラックボールを描画します。
    • Zone - トラックボールを描画する MobileINputZone です。
  • DrawMobileZone_Slider [Zone] - 指定された入力ゾーンのためのスライダーを描画します。
    • Zone - スライダーを描画する MobileINputZone です。
  • DrawMobileTilt [MobileInput] - 指定された MobilePlayerInput がもっている傾きに関する情報を使用して、デバイスの傾きを描画します。
    • MobileInput - 表示すべき傾きの情報を提供する MobilePlayerInput です。

UDKHUD

UDKHUD クラスは、ネイティブの機能をもっている HUD から、多くを継承しています。

UDKHUD のプロパティ

  • GlowFonts - 発光エフェクトまたはブルーム エフェクトを使用してパルス (脈動) するテクストを描画するために使用するフォントです。配列の [0] 要素は、発光のために使用するフォントを保持します。[1] 要素は、通常のテクストを描画するために使用するフォントを保持します。
  • PulseDuration - テクストのパルスにかかる時間の長さです。
  • PulseSplit - パルスがアウトからインに切り替わる時間です。
  • PulseMultiplier - テクストがパルスする量です。注意 : この値は、1.0 に加えられます。したがって、 PulseMultipler が 0.5 の場合は、1.5 となります。
  • TextRenderInfo - フォントのレンダリングで使用される情報を保持する FontRenderInfo 構造体です。この構造体は、デフォルトのプロパティでセットアップされるとともに、この構造体を必要とするあらゆる Canvas.DrawText() に渡されなければなりません。
  • ConsoleIconFont - 指定されたコンソールのために使用するフォントです。
  • BindTextFont - ConsoleIconFont のアイコンで入力バインドが表されていない場合に、入力バインドを表示するために使用するフォントです。

UDKHUD の関数

  • DrawGlowText [Text] [X] [Y] [MaxHeightInPixels] [PulseTime] [bRightJustified] - 発光エフェクトまたはブルーム エフェクトを使用してパルスするテクストを描画します。
    • Text - 表示するテクストの文字列です。
    • [X/Y] - テクストを描画するための、スクリーン上の水平位置と垂直位置です。
    • MaxHeightInPixels - オプション引数です。テクストがとるべき最大の高さです。
    • PulseTime - オプション引数です。1 回のパルスに要する時間の長さです。
    • bRightJustified - オプション引数です。TRUE の場合は、テクストが、Canvas に含まれている現在のクリッピング領域の右端にそろえて並べられます (横書きテキストの各行の最後が右揃えになる)。
  • TranslateBindToFont [InBindStr] [DrawFont] [OutBindStr] - 潜在的にエスケープ シーケンスとなりうるデータを含んでいる文字列を、本来表示されるべきフォントと文字列に変換します。
    • InBindStr - エスケープ データを含む文字列です。
    • DrawFont - 出力引数です。文字列を描画するために使用するフォントを出力します。ConsoleIconFont または BindTextFont のどちらかになります。
    • OutBindStr - 出力引数です。エスケープ データがストリップされた文字列を出力します。
  • DisplayHit [HitDir] [Damage] [damageType] - ダメージ発生源の方向を示すヒット エフェクトを表示します。
    • HitDir - ダメージ発生源の位置を指定するベクターです。
    • Damage - 与えられたダメージの量です。
    • damageType - 当該ダメージの DamageType です。

テクスチャ アトラスのアイコンの座標


HUD で使用されるグラフィックス (アイコン、イメージなど) は、通常、テクスチャ アトラスの一部として保存されます。したがって、複数のアイコンやイメージが単一のテクスチャに保存され、そのテクスチャの特定の部分が描画されることによって、特定のアイコンが表示されることになります。

texture_atlas.jpg

テクスチャ アトラス内の各アイコンは、座標を使用してアクセスします。「Unreal Engine 3」で使用される標準的な方法は、テクスチャのサンプリングを開始する位置である左上角のピクセルの水平位置と垂直位置 (通常、 UL で示される)、および、サンプリングする幅と高さ (通常、 ULVL で示される) を指定するというものです。これらの座標は、通常、構造体 (MobileHUD.TextureUVs または UIRoot.TextureCoordinates) に保存されます。

atlas_coords.jpg