見出し画像

超初心者のUE5学習メモ-8-:アクタの種類を知ろう(後の先)

東京とか行ってました、恒石涼平です。打ち合わせも色々とできたので楽しかったー!

さて今週は「Unreal Engine 5」の勉強です。前回の続きということで「アクタの種類を知ろう」のラスト……と行きたいところですが、量が多かったので後編を2つに分けるよ!

《今日学ぶところ》

今日の学習範囲は「アクタを配置」の項目にある最後のカテゴリ。

  • 基本

  • ライト

  • 形状

  • シネマティック

  • ビジュアルエフェクト

  • ボリューム

「ボリューム」の中にある22種のアクタ、今回はその半分である11種を見ていきます。相変わらず分からない部分とか出てくると思いますが、まずは軽く触れてみることを主軸において勉強していきましょう。


《ボリュームのアクタ》

そもそもボリュームって何やねん、というのが私のまず思ったこと。

単語自体は音量ボリュームとかで聞いたことありますが、恐らくゲーム制作上では違う捉え方をしてる気がします。なのでまずはそちらを調べてみて……

ボリューム (範囲) は、3D アクタ で、レベル内のエリアの挙動を変更するために使用します。ボリュームは以下のような用途に使用することができます。
・ボリューム内のプレイヤー、または他のアクタにダメージを与える。
・コリジョン サーフェスとして機能し、アクタがボリューム内へ立ち入らないようにブロックする。
・アクタがボリュームに入るときにドアを開く。
・レベルがライティングや可視性を計算する方法を変更する。

引用:UE5ドキュメント
https://docs.unrealengine.com/5.0/ja/volume-actors-in-unreal-engine/

いつも通り難解な文章が出てきました。何とか噛み砕いて考えてみると、恐らく以下の意味かなと思います。

「ボリューム」とは、「範囲・エリア」のこと。

ボリュームアクタは「定められた範囲内で挙動・変化を起こす」もので、毒沼のようなダメージエリアや見えない壁などに用いられる。

範囲を設定して、その中で何を起こすかを設定するのが「ボリューム」という捉え方……だと思います。相も変わらず確証はありません。

ともあれ概要は理解しましたので、早速22個のボリュームをさらりと見ていきましょう!


◆NavMeshBoundsVolume

えー、調べた結果恐らく「NavMesh」とは「ナビゲーション メッシュ」のことだそうです。この略して「ナビメッシュ」さんは、AIなどでキャラを動かす時に使う「地図」のようなもの……よく分からんがそういうことだ。

その地図の「Bounds」、つまりは「境界・範囲」を設定するボリュームです。訳をまとめると……

AIの「行動範囲」を定める「地図」を作るボリューム。

だと思われます。勝手にAIさんがどっか行かないようにするってことだな。とりあえず現状の理解はそんなもんにしといて次行きましょう。


◆NavModifierVolume

はい、お次はナビゲーションの「Modifier」ですね。いやモディファイアーって何やねん。

単語の意味でいうと「変更・修正」「装飾」といったものだそうで。今回の場合はどちらかというと「装飾」のような感じでしょうか。

この「NavModifier」は先ほど挙げた「NavMeshBounds」の範囲の中で、一部のエリアだけに装飾を施すことができます。例えば一部のエリアだけ通らないように設定したり、可能であればそこを避けて通るようにできたり……

まあ「行動範囲の一部を装飾するもの」と捉えればよさそうかな。


※ここまで画像貼ってたんですけど、どうにもボリュームアクタどれも似たような見た目なので省略していきます。あと文量ヤバくなりそうなのでもっと簡略に行くぞ!


◆HierarchicalLODVolume

ヒエラルキー、つまりは「階層を作ること」

LOD、正式名称「Level of Detail」とは「距離に応じて描画の細かさを変えること」でだそうです。近いと精巧な3Dモデルが表示されて、遠い時には簡略化した3Dモデルを表示する……みたいなシステム。

そんなLODのシステムを更に効率化するのがこのボリューム、略して「HLOD」だそうです。内容としては、複数のオブジェクトをまとめて取り扱うらしい。


◆AudioVolume

音量を上げ下げする……だけでなく、なんや色々と音の設定ができるボリューム。

ボリューム(範囲)の中にいる時に何かを流したり、外に出ると少しずつフェードアウトしたり、そんな風に音のアレコレを作ることができるそうです。


◆BlockingVolume

ブロッキング、つまりは「通行止め」だ。

設定した範囲に入れなくしたり、他のオブジェクトが入らないようにと設定できるらしい。いわゆる見えない壁である。


◆CameraBlockingVolume

さっきのカメラ版。ゲームでよくあるキャラの背後から見る視点(3人称視点)とかで、壁にカメラが入らないようにとか設定できそう。


◆CullDistanceVolume

「Cull」とは「Culling(カリング)」の略だそうです。略す前のやつも知らねえや。

こいつは「距離に応じたアクタの表示・非表示」を設定できるらしい。遠くに行ったらオブジェクトを非表示にして動作を軽くする、という感じで使うっぽい。


◆PhysicsVolume

「Physics」、読みは「フィシクス」。日本語では「物理」のことを指す。

いわゆる「物理演算」を設定するもの。通常はレベル(マップ)全体である程度物理演算の具合を決められるはず(多分)だけど、範囲内にだけ別の物理演算を決める感じだと思われる。


◆KillZVolume

キルゾーン。FPSゲームの方じゃないよ。

これは範囲内に入ったキャラをキルしちゃうとっても怖いボリューム。マップ外に落下した時に、これがあると勝手にやられてリスポーン(復活)できる。こいつがないと永遠に落下し続けるのだ……


◆LevelStreamingVolume

「レベル ストリーミング」。簡単に言えば「マップを分割して読み込み・読み込んだデータの消去を行うことで、大きなマップでもスムーズに動作させられるシステム」のこと。

Minecraftとかでいう「チャンク」の処理だね。分からなかったらごめんよ。

んでこのボリュームでは、恐らく「この範囲に入ったら、分割したマップの読み込み・読み込んだデータの消去する」とかの設定ができるっぽい。多分だけど、何かそういうやつだ。うん。


◆LightmassCharacterIndirectDetailVolume

いや、名前が長え。なろう小説かお前は。

本日最後の項目なんだけども、ここにきて一切の情報が分からないボリュームが出てきました。なのでそれぞれの単語を和訳する程度に留めておきます。

  • 「ライトマス」は光源や影、反射などの複雑な光の情報を計算するもの……らしい。

  • 「キャラクター」はキャラクターだ。プレイヤーが動かすキャラ

  • 「インダイレクト」は……日本語だと「間接的な」とからしい。

  • 「ディテール」は「詳細」

これらをまとめると……

「キャラによる間接的な光の情報、その詳細」

いや何言ってるか分からないよ。この項目は分からんのでパスということにしておこう。


《今日の学習まとめ》

  • AIの行動範囲のことを「ナビゲーションメッシュ」と言う

  • NavMeshBoundsは、その行動範囲を設定するボリューム

  • NavModifierは、その範囲内の一部に装飾を与えるボリューム

  • HierarchicalLODは、距離によってモデルが変化する(LOD)ものを複数まとめることができる

  • Audioは、範囲内外での音の設定ができる

  • Blockingは、キャラなどの入れない範囲を設定する

  • CameraBlockingは、カメラの入れない範囲を設定する

  • CullDistanceは、距離に応じたアクタの表示・非表示に関して設定できる

  • Physicsは、範囲内の物理演算を設定・変更できる

  • KillZは、入ればキルされる範囲を設定する。落下死に有効

  • LevelStreamingは、分割されたマップの読み込みなどを設定できる

  • LightmassCharacterIndirectDetailは、ほんまに分からん


はい、本日もお疲れ様でした。毎回の如くよく分からない部分がいっぱいでしたね。

ただゲームでも見たことのある効果(落下死とか、見えない壁とか)を持つボリュームがいくつかあったので、そこら辺はイメージしやすかったかも。いやはや早くゲーム作ってみたいね!

では、今日はここまで。また次回お会いしましょう。


いいなと思ったら応援しよう!

恒石涼平@ゲームシナリオライター
もしも記事が参考になったら、スキやフォローよろしくね! 気が向いた時はサポートで支援していただけると嬉しいです。