CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の...

70
~凄い作例のエッセンスを紐解いて自分のプロジェクトにも取り入れてみよう~ Rob Gray, Jun Shimoda // Epic Games Japan CEDEC 2015 ダウンロードしただけじゃ勿体ない! Unreal Engine 4凄い使い方をみんなでシェアしよう!

Transcript of CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の...

Page 1: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

~凄い作例のエッセンスを紐解いて自分のプロジェクトにも取り入れてみよう~

Rob Gray, Jun Shimoda // Epic Games Japan

CEDEC 2015

ダウンロードしただけじゃ勿体ない!

Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

Page 2: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

Topics

• CEDEC!開発知識の共有!

• Epic Game Launcherもノウハウの宝庫

• Learning from EPIC (Rob’s lecture)

• 効率的なレベルデザイン

• ブループリントマスターへの道

• ブループリントの新機能

Page 3: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

CEDECといえば、開発知識の共有!

• さらにUE4で

– エンジンソース共有

• Unreal Tournament

– ゲーム開発も共有(Unreal Tournament)

• ARK: Survival Evolved Dev Kit

– MOD開発環境を共有

Page 4: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

Unreal Tournament

• Epic Games Launcherから

– ダウンロードしてプレイできます。(もちろん無料です)

– 実はエディタもダウンロードできます!

– ソースもね!

ココ!

Page 5: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!
Page 6: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

様々なテストマップ

• 各機能テストマップ(Example_Map)

• キャラクタープレビューマップ(Player_Preview_Map_Vis)

• レベル制作基礎演習マップ(LevelTutorialMap)

• キービジュアルマップ(DM-Outpost23)

Page 7: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

キービジュアルマップ

• キービジュアルマップ(DM-Outpost23)

• WhiteBox版(Outpost23_Shell)

Page 8: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ARK: Survival Evolved Dev Kit

• Epic Games Launcherからインストール!

ココ!

Developed by

Studio Wildcard

Page 9: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

Play!

Steam アップロード

Page 10: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!
Page 11: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ラウンチャーもノウハウの宝庫

• 動作サンプル

– 無料のラーニングサンプルが沢山あります!

• 建築デザインサンプル

– 無料のサンプルもいくつかあります。

Page 12: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

動作サンプル

Page 13: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

少年とカイト(Kiteデモ)

• 見どころいっぱい

– HLOD (Hierarchical Level of Detail)

– RTDFS (Ray Traced Distance Field Shadow)

– DFAO (Distance Field Ambient Occlusion)

Page 14: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

HLOD(階層構造LOD)

Page 15: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

RTDFS(Raytraced Distance Field Shadow)

• 太陽からの直接光(日照変化に対応) – 広い視野範囲には3倍効果的

– 全ての距離でディテイルを保てる

Page 16: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

DFAO(Distance Field Ambient Occlusion)

• 2種類のAO

– Screen Space Ambient Occlusion (SSAO) 、凸凹や近距離

– Distance Field Ambient Occlusion (DFAO) 、中距離

SSAOのみ SSAO+DFAO DFAOの埋め込み情報

Page 17: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

マルチプレイヤーガンファイト

• ブループリントのみでネットワーク対戦

– MyGameInstance

• ネットワークプレイ対応

• ゲームの状態遷移

– Gunslinger_BP

• プレイヤーの挙動制御

Page 18: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

建築デザイン系

• Koolaさんの「Lightroom: Interior Day Light」

• Xoioさんの「Xoio Berlin Flat」

Page 19: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

Koolaさんの建築デザイン

• デザインもさることながら光の使い方が秀逸

Page 20: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!
Page 21: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

マーケットプレイスに公開されてます

• Lightroom: Interior Day Light

– どんなテクニックが?

• 開いて勉強してみましょう。

Page 22: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ライティング

• Directional Light

– (太陽的な)平行光源(Intensityがデフォの10から2へ)

• SkyLight

– シーンからキャプチャ(Intensityを0.25と抑えめ)

• SphereReflectionCapture

– シーン内に4つ、各部屋のサイズに合わせ1つづつ

Page 23: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

フォグ

• Exponential Height Fog

– デフォルトより控えめ

• Atmospheric Fog

– 太陽(Directional Light)と同じ方向

• この2つで真っ白な外光

Page 24: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

特徴的なのがコレ

• 窓の外にある

– 板ポリとスポットライト

Page 25: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

何コレ?

• エリアライト(面ライト) – 広角のスポットライトとレフ板によるバウンスライトで表現

Page 26: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

エリアライト用SpotLight

• 特殊な用途なので結構デフォルトと違います – Intensity 6.0

– Light Color ほぼ白

– Inner Cone Angle 80.0

– Outer Cone Angle 80.0

– Attenuation Radius 500.0

– Cast Shadows OFF

– Use Inverse Squared Falloff OFF

– Light Falloff Exponent 0.0001

• 特に照射角が広い

Page 27: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

エリアライト用レフ板

• なんの変哲もない1枚板

– Color 1.0

– Auto Hidden In Game ON

実は、ゲーム中に消えてます

ライトベイク用エリアライト

Page 28: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

さっきからドヤ顔でエリアライト?

• 自然に見せたいのに、エリアライトを置くって人造的過ぎない?

• ドラマのセットか何かですか?

• いえ、確かにエリアライトなんですが、何をしているのかというと、ライトの空気中での散乱に近い表現を生み出しています。

Page 29: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ライトの空気中の散乱?

• (夕焼けや青空の)レイリー散乱とは別・・・

• 右図のような

ボリュームライトは

空気中の塵に

反射した光の表現

• これがもう少し淡くシーンに拡散された表現

Page 30: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

違いがわかりますでしょうか?

ブループリントオフィス Koolaさん https://forums.unrealengine.com/showthread.php?28163-ArchViz-Lighting

Page 31: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

4.8でエリアライト簡単になりました

• 作り方

– Emissiveで光るマテリアルを作成

– スタティックなスタティックメッシュアクターに貼る

– スタティックメッシュアクターの

「エミッシブをスタティックライトに」

Page 32: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

高速レベル制作

• モジュラーパーツ

– 使いまわしやすいパーツ化して、それらを配置

• evilmrfrankさんの高速レベル制作シリーズ

– https://www.youtube.com/user/evilmrfrank

Page 33: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

Learning from EPIC

Page 34: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

エディターをうまく使おう

• レベルデザイン

• ブループリント

Page 35: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

効率的なレベルデザイン

Page 36: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

レベルデザインのワークフロー

• Gears of War、Infinity Bladeなどのシーリズや、現在製作中のFortnite、Unreal Tournamentなどで使用されているプロセス

• Epicワークフローの目的 – 短時間でプレイ可能なプロトタイプを作る

– イテレーションをしやすくする

– 無駄な作業とアセットの作り直しを抑える

– 見た目ではなく、楽しさに集中する

Page 37: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ステップ1:プロトタイプ

BSPのプリミティブや仮メッシュで大雑把にレベルのレイアウトを作る

(基本的なライティングのみ)

機能別サンプル: Leveldesign_Workflow.umap

Page 38: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ステップ2:メッシュ

最終段階に近いメッシュに置き換え、基本的なマテリアルを適用

機能別サンプル: Leveldesign_Workflow.umap

Page 39: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ステップ3:ライティング

ライティングとマテリアルの改善、ポストプロセスのエフェクトを追加する

機能別サンプル: Leveldesign_Workflow.umap

Page 40: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ステップ4:見た目の微調整

エフェクト、オーディオ、ボリュームをさらに追加し、最終アセットと詳細を微調整する

機能別サンプル: Leveldesign_Workflow.umap

Page 41: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

レベルデザインのワークフロー

Page 42: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

レベルデザインのワークフロー

Page 43: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

レベルデザインのワークフロー

– ヒント:BSPをBlocking Volumeに変換

• プロトタイプ段階のコリジョンをそのまま使用

Page 44: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

レベルデザインのワークフロー

• UE4のレベルタブ

• 作業を専門毎に分ける

– 背景、エフェクト、サウンド、など

• 同時作業が可能

Page 45: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

レベルデザインのワークフロー

• レベルをインターアクティブにするには・・・

• ブループリント

Page 46: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントのマスターへの道

Page 47: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントのマスターへの道

3年前のロブ・・・ 現在のロブ・・・

Page 48: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントのマスターになる

• 基本的にイベントがアクションを起こす

Page 49: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントのマスターになる

• 簡単なことから始まる

– トリガーのOverlapライトをオンにしたり、色を変更したり

Page 50: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントのマスターになる

• 少しずつ難しいものを作ってみる

– 例えばアイテムを作ってみる

Page 51: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントのマスターになる

• ブループリントのインタラクション

– BP1: 的にヒットダメージを与える

BP2: ダメージを受けてヘルスを減らす

BP1(バレット) BP2(敵キャラ)

Page 52: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントのマスターになる

• テンプレートからスタート – First Person

– Third Person

– Flying

– Puzzle

– Rolling

– Side Scroller

– 2D Side Scroller

– Top Down

– Twin Stick Shooter

– Vehicle

Page 53: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントのマスターになる

• アドバイス – ロジックの流れをよく考えて

• イベント発生がアクションを起こす

– 各システムに分けて作る

– 途中でテストする

• “Test early, test often”

– 分かりやすいコメントを入れる

– C++と比べてパフォーマンスが高くない

• Tickの使いすぎにご注意

Page 54: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントのマスターになる

• 好きなゲームを再現してみる

– Simon

– Puzzle Bobble

– Endless Runner

– Mario

Page 55: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントのマスターになる

• Epicやコミュニティーのサンプル

– Blueprintsのプロジェクト

– Endless Runnerのビデオ • https://www.youtube.com/watch?v=qFZgs3e_1d4

– Alweiさんのブログとチュートリアル • http://unrealengine/hatenablog.com/

Page 56: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントはうまく機能しないとき

ブレイクポイント

ブレイクポイントを入れて、

イベントや関数がちゃんと

呼ばれているかどうかを

確認する

Page 57: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントはうまく機能しないとき

ロジックのフロー表示

ブループリントを別ウィンドウで開いて、ロジックの流れを確認する

Page 58: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントはうまく機能しないとき

出力ログ

参照などを確認するためにPrint Stringでログに出す

Page 59: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントの新機能

さらによくなっていく!

Page 60: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントの新機能

– ブループリントのコンポーネント

• 機能を持つコンポーネントを作って・・・

• 色々なアクターに機能を使い回せる

ブループリントでロジックを作って

アクターにドラッグ&ドロップ

Page 61: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントの新機能

関数に複数なReturnノード 関数の状況によって異なる結果を返す

Page 62: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントの新機能

アセットIDの参照 アセットをロードしないで参照できるからメモリ管理に便利

Page 63: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントの新機能

計算のノード 計算をを一つの処理速いノードにまとめる

Page 64: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントの新機能

レベル ブループリントのコミュニケーション 他のレベルを参照することが可能

Page 65: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントの新機能

ブループリント内でオブジェクト作成 Actorの機能が必要ない場合によりシンプルなObjectクラスが作れる

Page 66: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントの新機能

ブループリントのデフォルト値 のブループリントのデフォルト値をアクセスすることが可能

Page 67: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

ブループリントのマスターになる

• ブループリントでゲームを楽しく作りましょう!

Page 68: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

告知

Page 69: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

UNREAL DEV GRANTS

• Unreal Dev Grants

「UE4で未来を創ろう」 – $5,000,000の開発ファンドを設立

– UE4を利用し弊社が開発を後押ししたいと認めたプロジェクトに

$5,000~$50,000の開発資金を援助

• 知的財産はもちろん開発者のみなさんのもの

– 既に20件程のプロジェクトを支援

• 第一弾からゲーム以外のプロジェクトでも獲得

Page 70: CEDEC2015: ダウンロードしただけじゃ勿体ない! Unreal Engine 4の 凄い使い方をみんなでシェアしよう!

Q&A

– Any questions?