見出し画像

超初心者のUE5学習メモ-14-:プロパティを読み解け!「レンダリング・コリジョン・レイトレ編」

バイオハザードRE4をお楽しみ中、恒石涼平です。リアルで思ってたより歯応えのある難易度だぜ……

はい、それは置いといて今日は #Unreal_Engine_5 の学習をしていきます。

プロパティに目を通していく続きで、「レンダリング」カテゴリからの再開になるんだけど……正直プロパティの量が多いのでぼちぼちプロパティ編は終わっておきたい所存。

なので頻出するカテゴリの中でも、10回以上出てきたものだけで終わろうかな。それでもあと9カテゴリ残ってるので、もうちょっとだけ続くのじゃ。

《今日学習する範囲》

UEのデフォルトの画面でいう右下にあるプロパティを学んでいます。

その中の「レンダリング」「コリジョン」「レイトレーシング」という3つのカテゴリをパパッと見ていくよ!


《カテゴリ:レンダリング》

まずは「レンダリング」からスタート。こちら基本の「アクタ」アクタ(ややこしい)の中ではこんな感じなんですが……

「キャラクター」アクタだとこんなに増えまして、更に詳細設定を開くと……

地獄が生まれます。しっかり見ていくと1日じゃ足りないので、軽く目を通すのは詳細設定前の項目だけにします。詳細はまたいつか……やれたらいいなあ……


◆Actor Hidden In Game

直訳で「アクタをゲームで隠す」かな。そのままの意味で、チェックを入れるとエディタ上では表示されるけどゲーム中には表示されないようにできるっぽい。

でもアクタそのものは存在するか、機能はできる……って感じかな。


◆Editor Billboard Scale

ビルボードとはいえども音楽の売上ランキングとかではない。

じゃあ何やねんと思って数値を動かしてみたら分かりました。こちらをご覧ください。

エディター上でのこのアイコン的なやつ、この表示を拡縮できるみたいです。

ビルボードってものが何かはよく分からんかったが、多分こういうアイコンの付いたアクタのことだと思われる。知らんけど。


◆Custom Primitive Data Defaults

プリミティブって何だろうと思って調べたら「原始の」とか「基本の、根本の」って意味らしいね。今回だと後者の意味合いかな?

んでこの「カスタム プリミティブ データ」は調べたけどイマイチ分からなかったので飛ばします。何かオブジェクトごとに一部の設定を変更できるっぽいけど、うん、この説明もよく分からんのでパス。


◆Visible

最初の項目とは違って、これは前項の「プリミティブ」の表示するか否かを選ぶみたい。

……ということはプリミティブって目に見えるものなのか。一体どういうことだってばよ。


半分ほど分からなかったけれど、まとめると「レンダリング」カテゴリは「エディタ・ゲームにおいての【表示】に関する設定をする」ようです。


《カテゴリ:コリジョン》

お次は「コリジョン」というカテゴリ。これは知ってます。いわゆる「当たり判定」ってやつだよね。多分。

ただこちらもアクタによっては……

再び地獄が形成されています。なお「コリジョンプリセット」「詳細設定」のどちらも開くといっぱい項目が出てくるので、そこら辺は割愛しよう。

とりあえず分かりやすい項目だけ目を通していきます!


◆Generate Overlap Events

直訳で「オーバーラップイベントを作る」というもの。いやそもそも「オーバーラップイベント」って何じゃ?

調べてみた所、どうやら「オーバーラップ」は「すり抜け・重なり」という意味だそうです。

そして「オーバーラップイベント」とは、アクタ同士が「すり抜け・重なった場合に何かイベントを行う」という感じっぽい。重なったら片方のアクタが消える、とかができる。

これを使わずにすり抜けさせることも出来るけど、その場合は「無視(Ignore)」というすり抜け・重なっているかの判断がない状態になるみたい。よく分からんがそういうことだ。


◆Generate Overlap Events During Level Streaming

 エディタ上とは順序が変わるけど、前項と似たものなので先にやっておきます。

こちらは最後に「During Level Streaming」と付いていて、解説を見る限り「レベル(マップ)をロードする際に、オーバーラップイベントが作られるようにするか」という感じっぽい。

ゲーム開始後ではなく、ロード中からオブジェクトが重なっていないか判断していく……って意味かな。多分。メイビー。


◆Update Overlaps Method During Level Streaming

◆Default Update Overlaps Method During Level Streaming

こちら2つのプロパティは……うん、名前が長い時点でもう脳が理解したくないって泣いてる。

解説を読んでもほぼ分からんのだけど、「レベル(マップ)をロードした際に、オーバーラップの状態を初期化する」という関係の項目っぽい。

理解が難しいのでパスする。


◆Can Character Step Up On

分かりやすい単語ばかりで助かる。解説を見ると「キャラクターがこのアクタの上を歩けるか」というプロパティらしい。

キャラとぶつかった際に止まるのではなくその上を歩こうとするかどうか……とかも決められるようで、奥が深そうな項目である。


◆Simulation Generates Hit Events

UEには「物理シミュレーション」というものが備わってます。重力や衝撃などを計算して、現実のように物を動かしたりする機能なんだけど……

このプロパティでは「物理シミュレーション上で、何かとぶつかった際に【ヒットイベント】を作るか」を決めるそうで。

この「ヒットイベント」とは、さっきやったオーバーラップイベントと同じような意味合い。「物と当たった際に何かイベントを起こす」という感じ。

これにチェックが入ってないとぶつかった時に衝撃でキャラが倒れたり、弾んで飛んでいったりとかできなくなるっぽい。


◆Phys Material Override

Physは「Physics(物理)」の略。つまりは「物理のマテリアル(物の形状)を上書きする」という機能。

これは何に使うかと言うと……リアルなオブジェクトは非常に細かい形状をしてるよね。例えば球のモデリングでも細かさが違うとこうなる。

この3つの球を転がす場合、物理シミュレーションでは「細かい形状の方がリアルだけれど、その分動作が重くなる」という特性が出ます。

単純に計算しなければならないことが増えるので、球が多くなればなるほどに動作は重くなり、最終的にはまともに動かなくなってしまう。なのでこの「Phys Material Override」機能を使って「当たり判定だけをシンプルな形状で上書きして、動作を軽くする」というのが必要になるわけだ。

偶にゲームとかで見る「キャラが物を掴んでるけど、手に触れてなくて浮いてる」という現象はこういう機能によって生まれてる……はず。

自信満々に解説したけど正解かどうかは分からん。何故なら試してないからね!


まとめると「コリジョン」カテゴリでは、「当たり判定の設定や、衝突・重なりの判定の有無などを設定できる」ということが分かった。


《カテゴリ:レイトレーシング》

ここ数年で聞くようになった「レイトレーシング」という機能。簡単に言えば「光の動きをシミュレートして、よりリアルな映像を作る機能」だ。

目へと入ってくる光そのものを計算することで、鏡や水溜まりなどの反射をより忠実に再現したりできるんだよね。とんでもなく重いが、とんでもなくリアルを追求できるやつである。

そんな機能をUEでも使用することができ、その場合の設定をこのカテゴリで行う……っぽい。どのプロパティもよく分からないが一応目を通しておこう。


◆Evaluate World Position Offset

解説を見てみよう。

有効にすると、このアクタはワールド ポジション オフセットを使用する割り当てられたマテリアルに対するレイトレース エフェクトに対して評価されます。

引用:UE5ドキュメント

うん、日本語でおk。ガチで分からんからパスしよう。


◆Ray Tracing Group ID

これもよく分からんのだけど、「実行時に複数の部品を組み立てることができる」と書いてあるので、レイトレーシングで読み込む際にまとめて読み込むグループを作成できる……という感じだろうか。


◆Ray Tracing Group Culling Priority

こっちのグループは「カリング(距離が遠くなったり他オブジェクトで隠れた際に非表示にして軽くするやつ)の優先度」を設定するっぽい。

優先度を高くすると早くすぐにカリングされる。小さいオブジェクトは高くして、建物とか大きいやつは急にパッと消えないように低く設定する……という感じらしい。

私は一体記事の中で何回「多分」「みたい」「らしい」を使えばいいのだろうか……


◆Shadow Source angle Factor

光が届く角度を設定して、影のでき方を変える……らしい。

角度が大きいと影が柔らかく、小さいとシャープになるみたいだけど原理はよく分からぬ。


◆Samples Per Pixel

ピクセル(長さの単位)1つに対してどれだけ細かく計算をするか、という設定。

数値を大きくするとリアルに表現されるが、その分クソ重くなる。当たり前だわね。


全てのプロパティはよく分からん状態で終わったけどまとめよう。

「レイトレーシング」カテゴリでは、「レイトレーシングを使用した際の、表現の細かさや動作の重さを変えられる」という感じだと思われる。恐らく、きっと、多分、願わくば。


《今日の学習まとめ》


  • 「レンダリング」カテゴリでは、「エディタ・ゲームにおいての【表示】に関する設定」ができる

  • 「コリジョン」カテゴリでは、「当たり判定の設定や、衝突・重なりの判定の有無などの設定」ができる

  • 「レイトレーシング」カテゴリでは、「レイトレーシングを使用した際の、表現の細かさや動作の重さを変える設定」ができる


プロパティ項目が多いため、それぞれの中身についてのまとめはやめておきました。もう4000文字を超えておるのじゃ……

これでプロパティ編は残り6カテゴリ。個人的には早く「ブループリント」機能とかを学びたいんだけど、まあ焦らずやっていきましょう。

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


【短編ビジュアルノベルの制作中です↓】

【メンバーシップも募集中です】


もしも記事が参考になったら、スキやフォローよろしくね! 気が向いた時はサポートで支援していただけると嬉しいです。