101.9K Views
June 03, 23
スライド概要
講演アーカイブ:
https://youtu.be/1XmAvb_3mUk
本スライドでは多くの動画でわかりやすく解説いただいています。ぜひパワーポイントで御覧ください:
https://epicgames.box.com/s/6in4xh0dz5pnmhkzhpv1cd0rfsqfvohc
講演内容:
Unreal Engine を使ってCG映像制作している人が、UEFN(Unreal Editor for Fortnite)を使ったらどんな表現ができるのか。CG映像制作者目線で、オリジナルアセットを移行するためのポイントやシーンの作り方など、UEFNの押さえておくべきポイントや機能を紹介します。
講演者:
西脇 嗣人(WANIMATION.LLC)
WANIMATION.LLCについてはこちら:
https://www.wanimation2910.com/
UNREAL FEST 2023 TOKYO 公式サイト:
https://unrealengine.jp/unrealfest/2023/
Unreal Engineを開発・提供しているエピック ゲームズ ジャパンによる公式アカウントです。 勉強会や配信などで行った講演資料を公開しています。 公式サイトはこちら https://www.unrealengine.com/ja/
もしも、Unreal Engine CG映像クリエイターが「UEFN」を使ってみたら。 WANIMATION.LLC 西脇 嗣人
WANIMATION.LLC 代表 wanimation (西脇 嗣人) 建築CG屋さん 建築系の静止画・動画制作。 インタラクティブコンテンツ制作。 2
3
4
Code「2634-2601-9128」 5
はじめに… ● 本講演は、従来のFortniteクリエイティブでのMAP制作は得意だけど、UEFN全くわからん・・ そもそもUnreal Engine触ったことないし・・と、いう方向けの内容になっております。 ● 今回の内容は、4/28にリリースされた 24.20verを使用したものも含まれています。 ● 時間の関係で、操作方法ややり方については所々割愛してご説明させていただいています。 各スライドにドキュメントのURLを記載をしましたので、詳しい説明等はドキュメントをご覧ください。 ● 各所、公式 「Unreal Editor for Fortnite のドキュメント」を参照させていただいております。 https://dev.epicgames.com/documentation/ja-jp/uefn/unreal-editor-for-fortnite-documentation 6
● UEFNで何ができるのか。 ● UEFNでこういうことがしたいのだけど、UEFNの何の機能を使用したらいいのか。 ● 専門用語がわからなくて、webやYoutubeでとうやって調べたらいいかわからない。 と言った悩みをできるだけ手助けができるよう、各機能を深く細かくご説明せず、 できるだけ多くの機能や用語をお話させていただきます。 是非、今回の内容を元に詳しいやり方を勉強いただければと思います。 7
本日の内容 UEFNの 基礎知識 UEFNの 覚えておくべき機能 実際にMAP公開に向けて どういった作業をした か・・・ 8
UEFNの始め方は!? こちらは、公式ドキュメントの 「はじめに」をご覧ください! https://dev.epicgames.com/documentation/ja-jp/uefn/starting-outin-unreal-editor-for-fortnite 分かりやすく手順が書かれています! 9
UEFNで何ができるようになった!? ● オリジナルアセットの使用 ● アニメーションや特殊効果の作成。 ● オリジナルマテリアルやテクスチャの作成。 ● オリジナルサウンドの追加。 ● オリジナルのランドスケープ作成。 ● UEFN とFortniteクリエイティブにおいて、ライブ編集機能。 ● 今までクリエイティブになかった、UEFNでの新しい仕掛けの使用。 ● さらなる拡張を行うための新しいプログラミング言語「Varse」の使用 ※ その他、さまざまなことが可能になりました。 10
オリジナルアセットのインポート 「島テンプレート」 ⇩ 「Blank」テンプレートを使用します。 11
12
インポートデータの整理 まずはフォルダーを作って、 データの整理をします。 効率よく作業するには 整理整頓が大切です。 13
フィルター機能で整理整頓 もう、すでに手遅れだよ・・・・ という皆さん。ご安心を。 UEFNには「フィルター」機能があります! 14
15
フィルター機能で整理整頓 もう、すでに手遅れだよ・・・・ という皆さん。ご安心を。 UEFNには「フィルター」機能があります! 16
色別フォルダーでわかりやすく 作成したフォルダーは色を変更する ことが出来ます! 17
UEFNで押さえておくべきUE機能 ① ポストプロセスボリューム ②コリジョン(当たり判定) ② ブロッキングボリューム 18
ポストプロセスボリューム 画面上部のアクタを配置から 「ボリューム」 ⇩ 「ポストプロセスボリューム」 「ポストプロセスボリューム」 ドキュメント https://docs.unrealengine.com/5.1/ja/post-process-effects-in- unreal-engine/ 19
20
ポストプロセスボリューム 「Bloom」 発光現象を表現(光の広がり) Bloom 0.675(デフォルト) Bloom 21 10
ポストプロセスボリューム 「ポストプロセスマテリアル」 ポストプロセスマテリアルを使用すると、 セルシェーディングや線画など、見た目を 変化させることが出来ます。 22
ポストプロセスマテリアル 今回はこちらのアセットを使用させていただ きました。 「Cel Shading and Outline by Raio」 https://www.unrealengine.com/marketplace/ja/product/raio-cel-shading 23
マーケットプレイス マーケットプレイスという、Epic Games様 が運営している、公式のアセット(素材) 販売サイトがあります。 こちらで購入したものは、 ゲーム開発等で商用利用も可能です。 毎月更新される、無料アセットは、 必ずGETしてください!! 24
25
ポストプロセスマテリアル UEFNの中にアセットをインポートするには、 UE5で購入アセットを開いて、UEFNプロジェ クトへの「移行」が必要です。 詳しい移行手順については、 「アセットを Unreal Engine から移行する」ドキュメント https://dev.epicgames.com/documentation/ja-jp/uefn/migrating-assets-from-ue-tounreal-editor-for-fortnite 26
ポストプロセスマテリアル Presetsより、 「MI_RaioCelShader_OutlineOnly」 をドラッグ&ドロップ!! 27
28
比較すると・・・ ポストプロセスマテリアル適応前 ポストプロセスマテリアル適応後 29
ポストプロセスボリューム 「スカイライト漏れ」(Lumen使用時) Lumen Global illumination ⇩ 詳細設定 ⇩ スカイライト漏れ 外の光がなかなかバウンスせず、暗くなって しまう室内を明るく調整する機能 30
比較すると・・・ スカイライト漏れ 0.0 スカイライト漏れ 31 1.0
コリジョン(あたり判定) オリジナルアセットをインポートしたものの 床に当たり判定がなかったり、空いているは ずのところを抜けれなかったりしていません か? 32
コリジョン(あたり判定) そんな時はコリジョンを確認してみましょう! 33
コリジョン(あたり判定) 調整したいスタティックメッシュをダブルク リックして詳細パネルを開きます。 34
コリジョン(あたり判定) いくつか方法はありますが、一番わかりやす い方法として、Collision Complexity を、 「Use Complex Collision As Simple」 に変更します。 「スタティックメッシュでコリジョンをセットアップする」ドキュメント https://docs.unrealengine.com/5.0/ja/setting-up-collisions-with-static-meshes-in- unreal-engine/ 35
36
コリジョン(あたり判定) いくつか方法はありますが、一番わかりやす い方法として、Collision Complexity を、 「Use Complex Collision As Simple」 に変更します。 「スタティックメッシュでコリジョンをセットアップする」ドキュメント https://docs.unrealengine.com/5.0/ja/setting-up-collisions-with-static-meshes-in- unreal-engine/ 37
コリジョン(あたり判定) 38
コリジョン(あたり判定) 植栽など、ハマって身動きが取れなくなる可能性があったりするものは、全体にコリジョンは付け ず、木の幹だけに当たり判定を付けることも出来ます。 39
ブロッキングボリューム 簡単に言うと見えない壁です。 40
ブロッキングボリューム 立ち入り禁止エリアや透明な床を作るとき など便利かもしれません。 41
ブロッキングボリューム 詳細パネルより、コリジョンプリセットを 「FortCameraOnly」にすることで、 なんちゃって一人称視点にすることも可能です。 42
43
公開MAP制作について 実際にMAP制作でどのような作業をしていったかをご説明します! 44
建物のマテリアル作成 今後どのクリエイティブMAPでも使用するこ とができて、簡単にいつでも色調整や反射率 の調整ができるベースマテリアルを作成する ことにしました。 45
マテリアルの基本 ベースマテリアル(親) マテリアルインスタンス(子) 基本、マテリアルを作成・編集を一つずつ作 っていくととても大変。 なので、ベースマテリアルを一つ作成して 「マテリアルインスタンス」 という機能を使用します。 子は親の遺伝子(属性)を引き継ぐことが可 能です。 46
マテリアルインスタンス(子) マテリアルインスタンス(子) マテリアルインスタンス(子) ベースマテリアル(親) マテリアルインスタンス(子) 47
マテリアルの基本 ベースマテリアル(親) マテリアルインスタンス(子) 48
ベースマテリアル(親) 49
マテリアルインスタンス(子) 50
51
ベースマテリアル(親) 52
マテリアルのドキュメント 「Unreal Editor for Fortnite マテリアルドキュメント」 https://dev.epicgames.com/documentation/ja-jp/uefn/materials-in-unreal-editor-for-fortnite 「UnrealEngine5.1 マテリアルドキュメント」 https://docs.unrealengine.com/5.1/ja/unreal-engine-materials/ 53
使用Texture 今回使用したTextureはすべて、 「Quixel Megascans」 のTextureを使用しています。 54
Quixel Megascans Textureのダウンロードするには登録が必要 ですが、一番左の 「Unreal Unlimited plan」はなんと・・・ 無料!!!!! UEFN を含む Unreal Engine ベースの製品で のみ使用することが可能になります! 55
Texture使用時の注意点 UEFNでは制作において、MAPを公開するために守るべき3つの制限があります。 ① セッションを開始するためにアップロードサイズを2048M以下に落とす必要があります。 ② 公開するためには、プレーヤーのダウンロードサイズを400M以下にする必要があります。 ③ プレイ時に100,000 メモリユニットという数値を超えないようにする。 (セッションを開始したときの温度計) 56
Texture使用時の注意点 「Quixel Megascans」などの高解像度 Textureを使用するとあっという間に公開す るための制限の400Mを超えてしまうので注 意してください。 57
試しにティルテッドタワーでセッションを開始してみると… 58
Fortnite既存アセットはサイズに影響なし 「スタティックメッシュ」「テクスチャ」 のサイズが含まれていないことがわかります。 Fortniteクリエイティブで用意されているアセ ットはアップロードサイズ・ダウンロードサイ ズとも影響がないようです。 59
Textureサイズの最適化 次に4Kテクスチャを1枚使用してみます。 60
Textureサイズに変化が。 統計の項目部分に、 使用テクスチャの容量が追加された。 61
Textureサイズに変化が。 ダウンロードサイズも、 「4.887MB」➟「6.35MB」 62
塵も積もれば・・・サイズオーバー 厳密には、自動的に4Kサイズを2Kサイズに リサイズしてくれているので、4Kテクスチャ は使用できませんが、、、 1枚当たり約1.5~2.0MBのサイズ増加。 オリジナルの3Dモデルデータの使用も考える とサイズの調整は必要。 63
Textureサイズの最適化 任意のテクスチャを開いて、 「Maximum Texture Size」を1024に。 または、状況によってTexture Sizeを設定。 64
65
Textureサイズの減少 すると、、テクスチャのサイズが、 1.232MB➟0.31MBと約1/4に。 単純計算で、4倍の量のテクスチャを使用可 能になりました。 66
テクスチャインポートデータをサイズ変更 また、任意のテクスチャを右クリック。 「テクスチャインポートデータをサイズ変更」 を行うと、アップロードサイズの削減も可能 です。 67
Textureサイズの参考 木目 • 1024MB 薪 家具 • 1024MB 木炭 床 • 512MB • 512MB • 1024MB 68
ランドスケープモード-スカルプト ランドスケープモードを使用しま した。 スカルプトでは、今までクリエイ ティブでは難しかった山や川など、 オリジナルの地形を簡単に作成で きます! 69
ランドスケープモード-ペイント ペイントでは、好きなマテリアル を使用して、地形の見た目を変更 することも可能です! 70
作りたいイメージとちょっと違う・・・ ただ、そのまま使用すると、 ちょっと自分の作りたいシーンに 合わなそう・・・ Landscapeマテリアルと芝を カスタマイズすることにしました。 71
Landscapeマテリアル・芝アセット変更後 72
Landscape用 Textureの準備 ①MegascansよりTextureを選びます。 芝 (草を生やす部分) 土 芝+土 水辺の地面 73
水辺の 地面 74
Landscapeマテリアル ②Landscape専用のマテリアルを作成 手順さえ覚えれば簡単です! Landscapeマテリアル ドキュメント https://docs.unrealengine.com/5.0/ja/landscape-materiallayer-blending-in-unreal-engine/ ランドスケープのクイックスタート ガイド https://docs.unrealengine.com/5.0/ja/landscape-quick-start-guide-in-unrealengine/ 75
76
・Landscape Layer Blend ・Landscape Layer Coords ・Scalar Parameter ・Multiply ・Make Material Attributes ・Break Material Attributes ・任意のTexture 77
78
79
80
Landscape Layer Blend ノード Layer Blend ノードは、使用したい素材の数だ けレイヤーを追加する必要があります。 【+】マークを押してレイヤーを追加して、 分かりやすく名前を付けることをお勧めします。 81
Landscape作成 作成したLandscapeマテリアルを適応して、 Landscapeを新規作成。 82
ウェイトブレンドレイヤ(法線)作成 最後にウェイトブレンドレイヤを任意のフォル ダーに作成。 83
Landscapeペイント Landscapeのペイントモードで 自由に塗り絵するだけです。 Landscapeマテリアル ドキュメント https://docs.unrealengine.com/5.0/ja/landscape-materiallayer-blending-in-unreal-engine/ ランドスケープのクイックスタート ガイド https://docs.unrealengine.com/5.0/ja/landscape-quick-start-guide-in-unrealengine/ 84
Landscapeに草を生やしたい! UEFNでは、UE5の便利機能「Foliage」が 使用できません・・・ 85
ランドスケープグラスタイプ 代わりに「ランドスケープ グラスタイプ」を 使用します。 UnrealEngine ドキュメント 「Grass のクイックスタート」 https://docs.unrealengine.com/4.27/ja/BuildingWorlds/Ope nWorldTools/Grass/QuickStart/ 86
草アセットの準備 UE5から移行してきた、 Megascans アセット使用しました。 もちろん無料です!! 87
Megascans WILD GRASS https://quixel.com/megascans/home?category=3D%20plant&category=grass&assetId=vlkhcbxia 88
ランドスケープグラスタイプ ランドスケープグラスタイプを開いて、 使いたい草アセットをドラッグドロップ。 89
先程作成したLandscapeマテリアルに ノードを追加します。 90
Landscapeに芝を生やす 右:LandscapeGrassOutput 左:LandscapeLayerSample ・LandscapeLayerSample ・LandscapeGrassOutput 91
作成したランドスケープグラスタイプ 芝を生やしたいレイヤ名 92
レイヤ名:Wild_Grass レイヤ名:Forest_Floor01 93
レイヤ名:Wild_Grass レイヤ名:Forest_Floor01 94
レイヤ名:Wild_Grass レイヤ名:Forest_Floor01 95
レイヤ名:Wild_Grass レイヤ名:Forest_Floor01 96
ランドスケープグラスタイプ 説明不足で申し訳ありません・・・詳しくは・・・ 「Grass のクイックスタート」 Unreal Engine ドキュメント https://docs.unrealengine.com/4.27/ja/BuildingWorlds/OpenWorldTools/Grass/QuickStart/ 【参考にしたTips】 Historia様 ブログ [UE4] Landscape Grassを使ってみよう。 https://historia.co.jp/archives/33138/ 97
Megascans Tree の使用 木に関しては、高品質なMegascans Treeを 採用しました。 ※一度UE5に読み込んでからUEFNプロジェクト に移行しています。 Megascans Trees: ヨーロッパブナ https://www.unrealengine.com/marketplace/ja/product/megascans-treeseuropean-beech-early-access 98
Megascans Tree のマテリアル変更 マテリアルに関しては、そのままではUEFN では対応していない要素が含まれているため、 作り直しました。 99
100
101
Lighting UEFNには「Lumen」と呼ばれる動的なグローバルイルミネーション・および反射を表現する ライティングシステムが使用可能です。 すごーーーく簡単に言うと、今までよりも、リアリティーのある見た目を表現可能です。 UE5ドキュメント 「Lumenのグローバルイルミネーションおよび反射」 https://docs.unrealengine.com/5.0/ja/lumen-global-illumination-and-reflections-in-unreal-engine/ 102
環境照明リグ(Enviroment Light Rig) 今回はより高度なライティングが可能な 「環境照明リグ」を使用したライティングを 行いました。 103
ワールドセッティング [Disable All Time of Day Managers (すべて の時間帯マネージャーの無効化)] にチェック します。 これでデフォルトのライティングがオフにな ります。 104
105
環境照明リグの要素 ・Directional Light ・Sky Atmos sphere ・Sky Light ・Exponential Height Fog ・Lumen Exposure ・Basic Exposure ・Color Grading 106
環境照明リグの要素 ・Directional Light ・Sky Atmos sphere ・Sky Light ・Exponential Height Fog ・Lumen Exposure ・Basic Exposure ・Color Grading 「環境のライト リグの仕掛け ドキュメント」 https://dev.epicgames.com/documentation/ja-jp/uefn/environment-light-rig-device-inunreal-editor-for-fortnite 107
Directional Light ・回転 太陽の高度や方向。 ・Inteensity 強度 108
109
110
Sky Atmos sphere 空と大気を調整する項目です。 ・アトモススフィア-レイリー 空の色を調整 ・アトモスフィア-ミー 太陽光の入り方を調整 (光が遮られ、空がかすんで見えるようになる) 「 Sky Atmos sphere ドキュメント」 https://docs.unrealengine.com/4.27/ja/BuildingWorlds/FogEffects/SkyAtmosp here/ 111
アトモスフィア-レイリー 空の色を調整 112
アトモスフィア-ミー 太陽光の入り方を調整 (光が遮られ、空がかすんで見えるようになる) 113
アトモスフィア-ミー 「Mie Scattering Scale」 [0.003996]→ [1.0] 114
Lumen Exposure ポストプロセスボリュームと 同様の調整が可能。 115
Color Grading ・Temperture 色温度を調整する項目です。 116
117
118
焚火の炎 今回はブループリントクラスを 使用して、炎を再現しました。 119
ブループリントクラス ブループリントクラスはコンテンツブラ ウザ上で右クリックを押すと作成項目が 出てきます。 ブループリントクラスを使用すると、 複数のアクターを登録してまとめて扱う 右クリック ことが可能になります。 120
ブループリントクラス 建物の小道具を選択。 建物の小道具 ➟オリジナルアセットが小道具化されるので、従来のクリエ イティブ1.0のスマホでコピーなどが可能になる。 Building Static Mesh ➟オリジナルアセットをつるはしなどで破壊可能にできる 121
ブループリントクラス ●Plane01 (炎の板) ●Plane02 (炎の板) ●Point Light (炎から発せられる光用) 122
ブループリントクラス 炎のマテリアル適応後。 板を十字にすることによって、360°どこから 見ても、炎がペラペラに見えないようにして います。 123
炎のマテリアル 炎の揺らぎを表現するために、 「Flip Book」 というマテリアルファンクションを使用しま した。 こちらのMFはテクスチャアニメーションをす るためのものです。 124
マテリアルファンクションって!? 再利用可能なマテリアルの一部を抽出して、 独自のカスタムエフェクトや機能を追加する ための方法です。つまり、複数のマテリアル で同じエフェクトを再利用したい場合や、マ テリアル内で複雑な処理を行いたい場合に使 われます。 マテリアルファンクション UEFNでは様々な効果・機能を持たせたマテ リアルノードが用意されています。 ドキュメント https://docs.unrealengine.com/4.27/ja/RenderingAndGraphics/Materials /Functions/ 125
炎のテクスチャー こんな感じのテクスチャを用意します。 簡単に表現すると、左上からパラパラ漫画の ように、順番にテクスチャを表示してアニメ ーションを表現することが出来ます。 今回は8(行)×8(列)で用意しました。 126
炎のマテリアル参考 127
炎のONとOFFの仕掛け 「スイッチ」 ON/OFFを切り替えるための仕掛け 「ムービーシーケンスの仕掛け」 ON/OFFのアニメーションを作る仕掛け 「オーディオプレイヤー」 ONになったときに炎のサウンドを流す。 128
炎のONとOFFの仕掛け 「スイッチ」 ON/OFFを切り替えるための仕掛け 「ムービーシーケンスの仕掛け」 ON/OFFのアニメーションを作る仕掛け 「オーディオプレイヤー」 ONになったときに炎のサウンドを流す 129
炎のONとOFFの仕掛け 「スイッチ」 ON/OFFを切り替えるための仕掛け 「ムービーシーケンスの仕掛け」 ON/OFFのアニメーションを作る仕掛け 「オーディオプレイヤー」 ONになったときに炎のサウンドを流す 130
炎のONとOFFの仕掛け 「 「スイッチ」 ON/OFFを切り替えるための仕掛け 「ムービーシーケンスの仕掛け」 ON/OFFのアニメーションを作る仕掛け 「オーディオプレイヤー」 ONになったときに炎のサウンドを流す 131
オーディオプレイヤー オーディオ ドキュメント https://dev.epicgames.com/documentation/j a-jp/uefn/audio-in-unreal-editor-forfortnite 132
ムービーシーケンスの仕掛け (Cinematic Sequence Device) この中で、もっともUEFNで使用頻度が高い であろう「ムービーシーケンスの仕掛け」の 使い方を今回は紹介します。 「アニメーションとシネマティクス」ドキュメント https://dev.epicgames.com/documentation/ja-jp/uefn/animation-andcinematics-in-unreal-editor-for-fortnite 133
なにができる!?ムービーシーケンスの仕掛け ● プレイ中に流れるShotMovieの作成。 ● PLAY中のアセットの移動・回転・スケールアニメーション ● アセットの表示・非表示 ● 時間拡張(倍速・スローモーションPLAY) ● マテリアルの切り替え(変更) ● 時間帯(昼夜)の変更 などなど、UEFNならではのMAPを作成したい場合、必ず必要にな る仕掛けになります。 134
オリジナルアセットの移動 時間拡張により低重力感 135
ムービーシーケンスの仕掛け (Cinematic Sequence Device) シーケンス項目で「なし」をクリックすると、 「レベルシーケンス」 という項目が出てくるのでクリック。 136
シーケンサー 新規レベルシーケンスを作成したら、 開いてみます。 シーケンサーというパネルが出ます。 出てない場合は、上部タブより 「ウィンドウ」 ⇩ 「シネマティクス」 ⇩ 「シーケンサー」 137
138
トラックから「Actor Hidden in Game」を追加 139
可視性 ON 可視性 OFF 140
通常時は、炎の表示を消しておきたいので、 炎のブループリントクラスの詳細パネルから、 「Actor Hidden In Game」 にチェックを入れてゲーム中は非表示にしておきます。 141
142
143
144
・スイッチの仕掛けが、 145
・スイッチの仕掛けが、 ・ONに場合、 146
・スイッチの仕掛けが、 ・ONに場合、 ・レベルシーケンスを再生 147
・スイッチの仕掛けが、 ・ONに場合、 ・レベルシーケンスを再生 ・スイッチの仕掛けが、 148
・スイッチの仕掛けが、 ・ONに場合、 ・レベルシーケンスを再生 ・スイッチの仕掛けが、 ・OFFに場合、 149
・スイッチの仕掛けが、 ・ONに場合、 ・レベルシーケンスを再生 ・スイッチの仕掛けが、 ・OFFに場合、 ・レベルシーケンスを停止 150
151
152
ポストプロセスマテリアルで表現の幅を!! Unreal Engineの勉強会などでかなりの頻度 で登場する、ポストプロセスマテリアルが複 数入ったアセットがあります。 「Chameleon Post Process」 https://www.unrealengine.com/marketplace/ja/product/chameleon そのままでは使用できないポストプロセスマ テリアルもありますが、中には調整なしで使 用できるものも多くあります。 153
154
詳しくは・・・ 公式ドキュメント 「Unreal Editor for Fortnite のドキュメント」 https://dev.epicgames.com/documentation/ja-jp/uefn/unreal-editor-for-fortnite-documentation 公式フォーラム https://forums.unrealengine.com/categories?tag=fortnite 155
@wanimation2910 MAPコード「2634-2601-9128」 156
ありがとうございました__ 157
アンケートへのご協力をよろしくお願いします アンケートQRコード (後日ご支給いたします) 158