Update8でゲームエンジンをこれまでのUnrealEngine4からUnrealEngine5へアップグレードすることと、それに伴う改善や変更も説明する動画が公開されました。
2023/3/27 動画の要約に間違いがあったため変更し、内容も加筆しました
動画
ピックアップ
※動画内にあった技術的な用語(Nanite、Lumenなど)の基本的な説明は省いているので、気になる場合はググってください。
※かなり専門的な説明が多い40分程度の動画を、記事では大幅にかいつまんでいるので正確ではありません。
はじめに
- Update8でゲームエンジンをUnreal Engine 4(UE4)からUnreal Engine 5(UE5)にアップグレードする
- これによりUpdate8のExperimentalブランチはとてもExperimental(実験的)な状態になる(※バグが多くなると予想される)
- フィードバックをQ&Aサイトに送って欲しい
セーブデータをバックアップすること
- セーブデータをバックアップしておいて欲しい
- バグでセーブデータに影響するような問題が起こる可能性がある
- 新しいバージョンで上書きしたセーブデータは前のバージョンでサポートされない
UE5の新機能で何を使うのか
- 仮想シャドウ マップ(VSM)はまだベータ版なので使用しない
- あまり興味深くないため優先度も低い
Nanite
- Update8の岩や崖にNaniteを使用する
- 工場の建築物などにも使用するかどうかはまだ分からない
Lumen
- Lumenを使用できるようにするが、公式なサポートはしない
- Lumenを使えるハードウェアを持っていて試したい人にはオプションで選択できるようにする
- 公式にサポートしないのはマップ全体をLumenで適切に照らせるよう洗い出しする時間がないため
- 従来方式と合わせて両方のライトで望んでいるような見た目に照らせるよう作成すると開発のボトルネックになる
World Partition システム
- UE4だとマップは7×6のタイル状に分割して扱っていたが、UE5のWorld Partitionだと柔軟に扱えるようになる
- マップを移動していて時々カクつくのがタイルの読み込み
- とても大きなタイルで管理しているためプレイヤーに見えていない部分までロードしてしまい非効率だった
- 開発者がマップの編集をしているとき、複数人で同時に編集する際の大きな制限が解消される
- これまでマップを移動して読み込まれるデータは決まったサイズのタイル単位だったが、より適切なサイズへ柔軟に変えることでデータ量を減らせる
- 例えばタイルの境界に工場を建築していた場合に発生していたロードによる引っ掛かりなどが解消するかもしれない
アンチエイリアス – Temporal Super Resolution(TSR)
- TSRは低解像度で描画したものを高解像度に見せる技術で、NvidiaのDLSSに近い
- 良いGPUを使っているならCPUの負荷をGPUに肩代わり出来るためこの機能を使ったほうが良い
- CPUの負荷が高いゲームであるため
- GPUが充分でないならTSRは使用しない方が良い
- 低スペックなGPUのためのオプションとしてFXAAも追加する
- 高スペックならTSR、低スペックならFXAAを試してパフォーマンスが向上することを願っている
車両の物理エンジンの変更
- 車両の物理エンジンをChaos Physicsに変更する
- 車両の操作感が変わり、おそらく良くなると思う
- 以前の操作感が良いなどの意見があればQ&Aサイトへ
- 既存の自動運転への影響
- 遠くにいる場合、物理演算はオフなので影響しない
- 近くにいる場合、特定の場所を踏破できず非効率になる可能性があるため、パスを再記録する必要がある場合がある
- 報告の多かった土台で車両が飛び跳ねる問題が解消してスムーズに走れるようになる
- まだ土台の組み合わせ方によってギクシャクした動きになる場合もあるが、車両でなく土台の問題
- 各車両の変化
- トラック : 以前より重たく感じる
- エクスプローラ : 速度が上がりオーバーステア気味のため操作が難しくなる
- トラクター : 安定し、少し速くなる
- ファクトリーカート : ひっくり返る可能性が低くなる
- 以前はスペースキーのハンドブレーキは力を加えて無理やり再現したものだったが、ちゃんとシミュレートするようになる
- それにともなってスペースキーで空中制御してバックフリップしたりなどの操作ができなくなるため、戻してほしいというような意見があればQ&Aサイトに送って欲しい
- 自動車のサウンドが変更されてホイールの状況によって音が再現される
- 自分が乗っていない場合は最適化のため再現しない
- 列車には影響しない
入力システムの改善
- キーを何かの操作で使っている最中に他の操作で使えるようになる
- 例えば、ジェットパックで上昇しながらアイテムメニューを開くと上昇の入力が持続するようになってしまう問題が改善すると思われる
オーディオ
- UE5の新機能でなく、以前から使用しているWwiseをそのまま使う
アップグレードでFPSは改善する?
- 画質が良くなる要素とFPSが上がる要素があるため比較が難しい
- NaniteはCPUの負荷を削減する
- オクルージョン処理を部分的にGPUで行うようになるため
- 今のところ以前と同等か、悪くなる
- 今のところ最適化が進んでいないため
- ExperimentalブランチからEarlyAccessブランチに移行するまでの間に改善されるかもしれない
- 人によって状況が違うので、Q&Aサイトで教えて欲しい
安定する?
- 今のところは安定することを期待してる
- UE5に変更したことにより発生しているバグでまだ発見できていないものがある可能性はある
- 問題が予想されるのは車両などの作り直された部分
- うまく動作せずプレイできない場合はExperimentalブランチからEarlyAccessブランチに切り替えて、バックアップからセーブをもどすこと
ハードウェア要件
- ハードウェア要件を変更する
- メーカーがドライバをサポートしていなかった
- GTX770はオフィスにたまたまあったので採用していたが、あまりにもスペックが低すぎた
- 最小要件
- GTX 1650
- 4 Core CPU
- 8GB RAM
- SSD
- Naniteは書き込み速度に依存し、EpicGamesにも推奨されているため
DirectX 11はサポートする?
- DirectX 11を引き続きサポートするが、これを使用する場合Naniteは使用できない
- 最小要件のGPUでもDirectX 12に対応しており、DirectX 11より安定していると考えられるためデフォルトは12にしている
- うまく動作しなければVulkan、DirectX 11の順番に試した方が良い
- 間違えてレンダリングエンジンをGPUが対応していないものに変更するとゲームが起動しなくなってしまうため注意
- 動画の説明欄に解決方法のリンクあり
建築上限
- UObjectの上限数により建築できる量に限りがある問題はUE5でも変わらない
- ただ、この問題に影響されるプレイヤーはとても少ない
- これまで話していなかったが、Update7で抽象化インスタンス?(Abstract Instances?)を使用してオブジェクトの数を大幅に削減している
- 例えば、これまで土台は3つのオブジェクトで構成されていたが、抽象化インスタンスで一つのオブジェクトになった
- メモリの削減にもつながっている
Modは動く?
- Update8のメジャーアップデートかつゲームエンジンもアップグレードしているのでそのままでは動かなくなる
- Modを使っている状態で異常があれば公式ではサポートできないのでModのコミュニティで確認して欲しい
専用サーバ
- 元々が実験的な状態だったのが、今回のアップデートでさらに実験的な状態になる
Unreal Engineのバージョンは?
- Unreal Engine 5.1.1
なぜアップグレードするのか
- 先を見越して、これらを行う必要があると考えたため
- 各機能にはとても大きな利点がある
- アップグレードには4~5ヶ月かかった
- スタッフによってはアップグレードに苦労させられており、思わぬところでは先週のティザー動画が遅れる原因になりSnuttが苦労していた
- ティザー動画用にゲーム内の映像を撮ろうとして影の描画に問題があったので修正したらクラッシュするようになった
- 長期的には意味のあることをしたと信じている
まとめ
- UE5の機能により専用サーバも含め長期的には様々なことが大幅に改善する
- 自動車の物理エンジンが改善する
- マップ読み込みの効率が良くなる
- Lumenを使用できるようになる(ハードウェアが対応している人のみ)
- キー入力が改善する
- Naniteで描画がリアルになる
- 人によってはExperimentalブランチの時点でパフォーマンスの低下があるかもしれない
- フィードバックを受けて調整し、長期的にはパフォーマンスが向上すると考えている
- NaniteやTSR、FXAAを利用できるようになって高性能なハードウェアに見合ったパフォーマンスが出るようになる
- Modはアップデートで確実に動かなくなるため、Modコミュニティで最新情報を入手した方が良い
コメント