【Matrixの街】Unreal Engine 5のCity Sampleを動かす手順
次世代ゲーム開発に使われる「Unreal Engine 5(以下UE5)」を触ってみよう。無料のサンプルプロジェクトを通じて、UE5の実力をあなたのPCで体験することができる。
今回試すサンプルプロジェクトは「City Sampels」だ。PS5/Xboxで配信された「The Matrix Awakens : An Unreal Engine 5 Experience」の舞台だと書くと、俄然興味が湧いてくる人もいるのではないだろうか。
The Matrix Awakens : An Unreal Engine 5 Experienceは、UE5が表現できる技術を体験できるゲームとして表現したもので、期間限定で配信された。家庭用ゲーム機のスペックで、これほどのクオリティのゲームが動くのは驚きである。それは当然、UE5が優れているからだ。
Contents
City Sampelsの見どころ
- 街の中を歩き回ることができる
- 「Nanite」による実写のようなハイポリオブジェクトを大量に描くことができる様子を体感できる
- 「Lumen」の環境光表現を体感できる
Unreal Engine 5でCity Sampleを試す手順
PCスペック
まずは動作に必要なPCスペックの確認だ。City Sampleは以下のスペックが推奨されている。
- 12コアCPU@3.4GHz
- 64GBメモリ
- GeForce RTX 2080 またはAMD Radeon 6000以上
- 8GB以上のVRAM
- (200GBくらいのSSD空き領域)
とりあえず、一般的なゲーマーのPCでキツイのは「64GBのメモリ」だと思われる。
City SampleにはBig CityとSmall Cityの2つのサイズの街が収録されており、Big Cityでは64GBが必要な感じがした。
16GBのメモリで「Small City」をギリギリ動かすことができ、32GBで安定した。
全体の流れ
- Epic Games Launcherのインストール
- Unreal Engine 5のインストール
- 「City Sample」プロジェクトのダウンロード
- Unreal Engine 5の起動
- Big_City_LVLまたはSmall_City_LVLの読み込み
- WorldPartitionから領域をロード ←ここまででエディタ上に画面が見えるように
- プロジェクト設定からNaniteやLumenをオン・オフして、違いを感じる
- Alt+Pで歩き回ってみる
Epic Games Launcherのインストール
Unreal Engine 5を使うためには、Epic Games Launcherが必要なのでインストールする。Epic Gamesのアカウントも必要だ。
Unreal Engine 5のインストール
Epic Games Launcherを起動し、左端のメニューから「Unreal Engine」を選び、右上の「エンジンのインストール」ボタンからUnreal Engine 5をインストールする。執筆時点では5.2.0が最新だったのでそれをインストールした。
City Sampleのインストール
Epic Games LaucherのUnreal Engine項目内に、「サンプル」というタブがあるので選択する。「City Sample」を選択する。
コンテンツ詳細内の「プロジェクトを作成する」という黄色いボタンを押す。
保存場所を求められるので任意の場所を指定し、クリエイトする。容量を90GB近く食うので注意。名前などはデフォルトで良い。
インストールと検証でしばらく処理がかかる。右上のUnreal Engine 5の黄色いボタンが「起動」になれば終わり。
Unreal Engine 5の起動
Epic Games Launcher、あるいはデスクトップのUnreal Engineアイコンなどから、Unreal Engine 5を起動する。
プロジェクトブラウザが立ち上がるので、City Sampleを選択する。
起動すると、The World Partition tab can~といった黒背景に白文字の画面が表示される。
これ以降については、「City サンプルプロジェクト」について書かれた公式のドキュメントもあるので、そちらと併せてご覧いただくのが良いと思う。
Big_City_LVLまたはSmall_City_LVLの読み込み
画面左下のコンテンツドロワーを開き、コンテンツ > Map 内にBig_City_LVLやSmall_City_LVLがあることを確認する。とりあえずは負荷の低いSmall_City_LVLを開いてみよう。
ロードが終わると、何もない海のような画面が見える。このゲーム画面のような場所を「エディタービューポート」と呼ぶ。
WorldPartitionから領域をロード
画面上部の「ウインドウ」メニューからWorld Partition > World Partitionエディタを選択する
画面右側に「World Partition」タブが出現する。うっすらとマップが格子状になっているのがわかると思う。
この上でマウスでドラッグすると、エディタービューポートに表示したいセル領域を選択できる。とりあえず今回は島全体を囲った。
そのまま、右クリックから「選択した領域をロード」を選ぶ。
これで街の風景がエディタービューポートに出てくればOKだ。
エディタービューポート上で移動してみる
エディタービューポートでは、マウスの右ドラッグでカメラ方向を指定し、矢印キーで移動ができる。
また、World Partition(マップ)の上で、任意の場所を右クリックし、「ここにカメラを移動」を選択して瞬時にワープもできる。
プレイボタンかAlt+Pでレベルをプレイ
画面上部のプレイボタンを押すか、Alt+Pを押すことで、プレイヤーキャラでマップ内を移動することができる。これは、エリアを全部読み込むので結構重い。PC環境によっては厳しいかもしれない。
以下のようにキャラクターが出てきたら、エディタービューポートをクリックすることで、キャラクターコントロールが可能となる。
WASD+マウスか、ゲームパッドを繋いでいればゲームパッドでも操作可能だ。F11キーで表示を拡大できる。なお、マウスカーソルを出すにはShift+F1を押す。インゲームメニューは、[ および ] キーと矢印キーを使ってコントロールする。プレイをやめたくなったら、ESCキーを押す。
F1キーを押すとワイヤーフレームで描画するのだが、対象との距離に応じて段々オブジェクトが細かくなっていく様子がわかる。これがNaniteのすごいところだ。F3キーで元に戻せる。
プロジェクト設定からLumenをオン・オフしてみる
次に、Lumenがどのような効果を与えているかを感じてみよう。
「編集」メニューから「プロジェクト設定」を開く。
ここでは、Unreal Engine 5のNaniteやLumenなどを始めとした様々なレンダリングの設定が行える。
Lumenの設定
プロジェクト設定の検索窓に「Lumen」と入力すると、Lumenに関する内容がフィルタされる。
「可能な場合ハードウェアレイトレーシングを使用」
チェックが入っていると、グラフィックボードが利用される。また、Ray Lightingモードを選択できる。チェックがないとおそらくソフトウェア処理になる。
ソフトウェアレイトレーシングモードの設定
高速な「グローバルトレーシング」と、高品質な「詳細トレース」が選択できる。
高品質透過性反射
チェックを入れると、ガラスなどの反射をシミュレートする。
グローバルイルミネーションの設定
検索窓に「Global Illumination」と入力すると、レンダリング設定のGloball Illuminationがフィルタされる。
ダイナミックグローバルイルミネーションメソッド
デフォルトでは「ルーメン」が設定されているはずだ。これを「スクリーンスペースAO」や「無効」に変えてみよう。即座に設定が変わり、ライティングの変化が感じられるだろう。
デフォルトのルーメンでは、光源から遠い所は自動的に段々暗くなっているが、スクリーンスペースAO(SSAO)ではそうはならない。こういった処理をエンジン側で自動的にやってくれるので、ゲームの作り手は手間がだいぶ省けるわけだ。
反射の設定
検索窓に「reflection」と入力すると、反射関連の項目がフィルタされる。
「反射」項目
反射メソッドに「ルーメン」が指定されているはずだ。「スクリーンスペースAO」や「無効」に変えてみよう。即座に設定が変わり、反射表現の変化が感じられるだろう。
Naniteを切ってみる
なお、Naniteを切ることもできる。Naniteオンオフの切り替えには、Unreal Engine 5の再起動が必要だ。
Naniteを切った状態でSmall_City_LVLを読み込むと、CPUが全コア全開になり、ロードがなかなか終わらない。結局、全部読み込むまでに15分もかかってしまった。
その後、Naniteをオンにして再度開くと、一瞬で開くことができた。
これだけでもNaniteの力を感じることができる。これまではオブジェクトのポリゴン数などの制約がある中、なるべくリアルなグラフィックスを作ってきたわけだけど、Naniteによってそこを無視できるようになったため、ゴリゴリのハイポリオブジェクトやリアルな人間などを、メモリの制約などを心配することなしに利用することが可能になったのだそうだ。
感想
UE5は優れたツールだった。3Dゲームの開発経験がない人でも、触りながらなんとなく構造を理解していける。そして、City Sampleのような、ハイクオリティなサンプルが提供されていることも大変ありがたい。
例えば、先日話題になったUnrecordのような「実写に見えるゲーム」において、「詳細なモデルはNaniteのおかげ、リアルな光と影はLumenのおかげ」ということを理解できたのも良かった。
ゲーム動作の仕組みに興味がある人には是非試して欲しい。
PCスペックについて
今回はRTX 4070搭載のraytrek XF(レビュー記事)と、自前のRTX 4090機を利用した。
raytrek XF | 自前 | |
CPU | i7-13700F | i9-13900KF |
メモリ | 16GB | 32GB |
GPU | RTX 4070 12GB | RTX 4090 24GB |
やはりメモリが必要だ。Small Cityでもマシントータルで25GBほど使っていた。16GBメモリのraytrek XFでも何とか動いたが、遠方のオブジェクトが消えることがあったりと不安定さがあった。最低でも32GB、できれば推奨の64GBのメモリが良さそうだ。
VRAMについては10GB以内で済んでおり、12GBのRTX 4070で十分行けそうだった。
記事の内容は執筆、更新日時時点の情報であり、現在は異なっている場合があります。 記載されている会社名・製品名・システム名などは、各社の商標、または登録商標です。
【今日のおすすめ】
【auひかり】最大10Gbpsの超高速通信!最大126,000円還元キャンペーンキャッシュバックで初期工事費も実質無料!