イベント

2019.08.14

【イベントレポ&インタビュー】GDMエンジニア向け勉強会Vol.34~今だからこそ「Unreal Engine」を学ぼう (初級編)~

  • Facebookでシェア
  • Twitterでツイート
  • はてなブックマークでブクマする!
  • LINEで送る
  • follow us in feedly
  • Facebookでシェア
  • Twitterでツイート
  • はてなブックマークでブクマする!
  • LINEで送る
  • follow us in feedly

毎回様々なゲストをお招きして、最新の技術や情報をシェアするDeNA主催のゲームクリエイター向け勉強会の【Game Developers Meeting】(以下、GDM)。

2019年7月26日に開催された「vol.34 エンジニア向け勉強会~今だからこそ「Unreal Engine」を学ぼう (初級編)~」では、Epic Games Japan サポートエンジニア 岡田和也氏を招いて、これからUnreal Engineを触ろうと考えている初心者に向けて、Unreal Engine 4の強みや、各種機能の紹介がされました。

本記事では当日のイベントレポートに加え、GDM運営を務めるDeNA藤村と岡田氏とのちょっとした対談の様子もお届けします。

岡田 和也(おかだ かずや)|Epic Games Japan
関西の大手ゲーム会社にてゲームエンジン開発をした後に、2016年にEpic Games Japanにサポートエンジニアとして入社。ライセンシ向けのQ&AサイトであるUDNでの回答、 直接会社に訪問してのサポート、 そして各地での勉強会などでの講演が主なお仕事。

Unreal Engine 4について

Unreal Engineは比較的歴史は古く、20年前にEpic Gamesが開発したFPSゲーム『Unreal』で実装されたMODエディターが元になっているエンジンで、現在では「Unreal Engine 4」(以下、UE4)まで進化しています。

UE4は2014年には一般公開、2015年には無料化をしており、Epic Gamesアカウントを無料登録して取得すれば、誰でもダウンロードして利用することが可能です。GitHubからエンジンコード(プラットフォーム以外)を閲覧することも可能なので、学生でもプロでも同じ環境で開発や学習をすることができます。

国内でのUE4採用プロジェクトについて、現在ではコンソールだけでなくモバイルゲームやVR・ARなどのタイトルも増加しています。

Unreal Engine 4の強み

UE4の大きな特長として「高品質なリアルタイムグラフィック」が挙げられますが、UE4が目指すこと、大事にしていることは「大規模開発に耐えられるほどに高い開発効率」です。

Epic Games Japan 岡田和也氏Epic Games Japan サポートエンジニア 岡田和也氏

昨今のゲーム開発現場では、求められるクオリティは上がる一方、開発期間や予算はなかなか上がらないのが現状になっています。その中で、採用するツールに求められているのは、同じ時間、同じ人数でよりクオリティが高いものを、早く作れることになります。

従来の開発環境では、プランナーが企画を思いついてアーティストに依頼しても、エンジニアが不在だと「試す」「実装する」ことができず、チーム全体の開発スピードや、イテレーション速度の低下を招きます。

その状況を打開するために、UE4を利用して、非エンジニアが自身のアイデアを自分で実装できる環境を提供します。プランナーやアーティストが実装している時間に、エンジニアがより複雑な作業や、根本の作業効率をアップする業務に専念することができます。

このような理念を実現するための機能や取り組みとして、従来の言語を用いた開発に比べて「箱と箱を線でつなぐ」だけでアルゴリズムやシェーダーを組める「ノードベースエディタ」や、直感的でわかりやすい形式、プログラミングなどの複雑な作業を必要としないアーティストフレンドリーなUIも実装しています。

また、製品レベルの事例を参考にしながら学習が可能な機能別サンプルも豊富で、コストをかけずにプロトタイプを早く作成し「より早く遊びを研究し、早く失敗できること」が大きな魅力となっています。エディタ・ドキュメントなどの日本語化も進んでいます。

その他の強みとしては、ソースコードの公開をしており、ブラックボックス化の回避を実現しています。プロジェクトに応じたカスタマイズや最適化が可能になり、不具合による手詰まりの可能性を削減することも可能です。

また、Github経由で一般のユーザーにもコードを公開しているので、リリース直後から世界中のユーザーを通じて一斉デバッグされ、改善案を参考にしながら、さらなる安定化、新規機能を随時追加することができます。ちなみに現時点で最新のUE4.22では、数百の追加・修正項目のうち174個がコミュニティから寄せられたものになります。

このようにEpic Gamesでは、個人開発者だけでなく、大規模プロジェクトに関わる開発者がノウハウをオープンにすることを推奨しており、大型勉強会「アンリアルフェス」やSlideshare、Youtubeなどで資料や動画を公開しています。

エンジンに標準装備されているゲーム開発に必要な機能は、外部アセットやプラグインによるコストやリスクを回避するために実装されています。自社開発の『Fortnite(フォートナイト)』をはじめとしたタイトルの運用実績、コンテンツ開発を経て必要とされる機能が組み込まれています。

さらに、1つのプロジェクトがさまざまなプラットフォームで動作するように、基本的に同じようなアセット・コードで動くような対応をしており、ここ1年ほどの『Fortnite』での運用フィードバックが大きく活用されています。

Unreal Engine 4の各機能

プログラミング

Blueprint

ノードベースだけではなく、コンポーネントの階層構造を含めたもので、各パラメータやノードによるアルゴリズムの集合体です。

Blueprintの長所は、従来のプログラミング言語よりもハードルが低く、非エンジニアでも組むことが可能なところです。線を伸ばした先で右クリックすれば、その時点で使用可能なノードだけを選択することが可能で、単純な関数の誤りなど、ヒューマンエラーを回避することが可能です。

コンパイル、イテレーションも高速化され、各パラメータをリアルタイムに編集・反映が可能です。ゲームを実装しなくても処理を走らせることができる「Construction Script」機能を使えば、メッシュの数やマテリアルを変更したり、プロシージャルなワークフローも構築できます。

Unreal C++

従来のC++をUE4向けに拡張したもので、C++11ベースのモダンな言語、Blueprintとの連携も可能、エンジンのコア部分へのアクセスもできます。

短所としては、非エンジニアにはハードルが高く、Blueprintと比較するとイテレーションの速度は落ちてしまいます。もちろんヒューマンエラーの可能性も高くなります。

両機能の戦略としては、Blueprintではイテレーションの速度を求められ、かつ非エンジニアが触る部分を、Unreal C++ではシステム寄りの複雑な部分、非エンジニアにとってブラックボックスでも構わない実装部分に使用することが推奨されます。

レンダリング

UE4のレンダリングは物理ベースレンダリング(PBR)を採用しており、DesktopではDeferred Render、Clusterd Forward Renderer for VR、MobileではMobile Forward Rendererだけでなく、iOS向けに、よりリッチなレンダリングが可能なDesktop Forward/Deferred Rendererも登場しています(開発中なので2019年7月時点ではバグ発生の可能性あり)。

UE4ではギラギラした金属のようなレンダリングが想像されると思いますが、それだけではなくフォトリアルからNPR表現まで多彩な表現が可能です。

Material Editor

Blueprintと同じく、ノードを線でつなぐだけで、簡単にシェーダーを作ることが可能です。マテリアルインスタンスを使用すれば、シェーダーをコンパイルしなくてもパラメータの変更をリアルタイムで反映できます。

TA(テクニカルアーティスト)がベースとなるマテリアルを作り、実際に絵作りをするアーティストがマテリアルインスタンスで待ち時間なしで調整していくのが、基本的な戦略になると考えられます。

Post Process

標準で数多くの機能を提供しており、Materialと同様にノードベースで組むことが可能です。NPR表現ではPost Processで加工を施すことも多いと思われます。

Realtime Ray Tracing

標準機能として実装しており、最新Ver.は4.22、ある程度のGeForceグラボがあればすぐに試用することが可能です。

アニメーション

Persona

Personaエディターでは、アニメーションの調整やアルゴリズムの組成などすべての作業を実行することが可能です。一般的なステートマシンなどリアルタイムでプレビューすることも可能です。Blueprintと同じくノードベースで作業できます。

足音やエフェクトをアニメーション側に仕込んだり、複数のアニメーションをブレンドすることも可能です。量産に向けたアニメーションの使い回し「アニメーションリターゲット」も使用可能で、対象と同じスケルトン構造をベースが持っていれば流用ができます。

LiveLink

Maya、MotionBuilderなどのDCCツールとリアルタイムに連携したり、iPhone Xのフェイシャルキャプチャー機能と通信することで、エディター上でアニメーション化することもでき、簡易モーションキャプチャーのような役割を果たすことも可能です。

UI

UMG(Unreal Motion Graphics)

インゲーム用のUIエディターであり、一般的な平面UI、3D空間に浮かぶようなUIも作成することが可能です。

UMGでは、タイムラインでアニメーションを付けるなど、さまざまな機能が揃っています。Blueprintで処理を組めるため、一度覚えてしまえば学習コストも少なくて済むのが特長です。

UIのパーツであるウィジェットを、ドラッグ&ドロップで簡単に配置することができ、エディタ拡張もUMGで可能です。Pythonを使った自動化もかなり進んでいます。

エフェクト

Cascade

UE3から導入されたシステムで、エミッタ(火・煙・火花など)と呼ばれる各パーツを組み合わせてエフェクトを作成します。マテリアルと連携することで、シンプル、複雑、トゥーン描画のようなエフェクトが自由自在に作れます。

Niagara

現在開発中の新たなエフェクトシステムで、Cascadeに比べて高速かつさまざまな表現が可能になっています。スケルタル制御のメッシュに沿ったエフェクト、カールノイズ、タイムライン制御などさまざまな機能が組み込まれています。現時点では、本システムの正式リリース時期は未定です。

カットシーン

Sequencer

シネマティックカットシーンツールで、SequencerからBlueprintで作ったアルゴリズムを呼び出せるので、ゲーム中のギミックの制御などにも活用できます。現在発売、公開されている製品にも多数使用されています。

その他

Landscape

地形の作成機能です。粘土をこねるように山や谷を作成することができ、マテリアルを併用すれば高い部分に雪を積もらせ、低い部分は海に加工することもできます。

また木や草、石などをオブジェクトを自動で配置する機能は、ただ置くだけでなくカリングなどもされるので、処理負荷軽減にも役立つ仕様になっています。

Behavior Tree

イベント駆動型のAIシステムを作成するシステムです。Blueprintとは少し違うUIですが、ノードベースでアルゴリズムを組むことができます。「敵が近くにいれば右の処理、いなければ左の処理」というような分岐を経て、最終的な処理を決定する仕組みです。実際にゲームを動かしながらデバッグをすることも可能です。

Chaos

NVIDIA製「PhysX」から自社製の物理エンジンに置き換え中の、新たなシステムです。PhysXは外部のライブラリであり、不具合時の最適化が不可能だったため、ライセンシーから指摘をもらっていたことが主な置き換えの理由となります。UE4.23にて非破壊メッシュ機能がリリースしています。

プロファイリング機能

レンダリングする上でさまざまなバッファを作りますが、それを可視化したり、実機上でプロファイリングのデータを表示することも可能です。UE4.23ではUnreal Insightという機能が実装されています。

特にゲーム開発において、プロファイリングは重要視してほしい分野です。なるべく完成度の高いゲームを世に出すため、日頃からプロファイリングの作業を心がけてもらいたいと考えています。

オススメの学習方法

UEはプランナーやアーティストだけでモノづくりができるように、ほぼすべての機能がコード不要で使用でき、グラフィカルでわかりやすいUIを使用、日本語にも対応しています。

また、学習用に公式ドキュメントやサンプルも用意されており、用語の説明だけでなくプロ向けのコアな解説も記載しています。Epic Games製のサンプルも多数収録、アセットは商用利用可能で、機能別のサンプルには、UE4を学ぶ上で非常に役立つものが数多く収録されています。

Marketplaceでは、無料アセットやコミュニティが販売している高品質なアセットが多数登場しています。販売アセットは商用利用・改変可能でライセンス明記不要、再配布はNGです。別ゲームエンジン・ツールでも利用可能です。

公式動画チュートリアルサイトでは、エディターの基本操作やリッチなレンダリングについてなど、段階を分けてチュートリアルが収録されています。日本語字幕もあります。

参考書については、「Unreal Engine 4で極めるゲーム開発:サンプルデータと動画で学ぶUE4ゲーム制作プロジェクト」「作れる!学べる!Unreal Engine 4 ゲーム開発入門 第2版」「Unreal Engine 4 マテリアルデザイン入門[第2版] 」の3冊をオススメします。非公式の動画チュートリアルサイト「Udemy」では、初心者向けの動画も販売されています。

学習する上で一番大事なのは「はじめからすべての機能を理解しようとしない」ことです。UE4はハードルが低いとはいえ、初心者向けだけでなくプロ向けのツールでもあるので、ドキュメントを参照した後に、標準のテンプレートをベースに小規模なコンテンツを作ってみましょう。オススメはTPSテンプレートです。

困ったときは、公式Q&Aサイト「UE4 Answerhub」を活用してください。ここではコミュニティ同士が質問や回答している場所なので、初心者がつまづく内容については、ここで検索すると簡単に解決することが多いです。

さらに、より高度なことを学びたくなったら、SlideshareYoutube公式チャンネルで公開されている国内の勉強会における講演資料やアーカイブ動画などを参考にしてください。

また、エンジンコードを見ながら、実際に手を動かして、触ってみることが成長の秘訣です。

また、最後にお金に関わる説明ですが、ゲームの場合(一般ユーザー)、4半期(3ヶ月)毎の総売上が3,000ドルを超えた場合、その超えた分に関して5%のロイヤリティが発生します。

Epic Gamesからの有償のサポートを受ける場合はカスタムライセンスを結ぶ必要があります。なお、映像・建築などのノンゲームの場合は、ロイヤリティはありません。

GDM運営の藤村と対談

イベント直前に、今回登壇いただいたEpic Games Japan 岡田和也氏と、GDM運営を仕切るDeNA 藤村幹雄にいろいろと聞いてみました。

――今回のGDM登壇のきっかけ、経緯を教えてください。

藤村:きっかけは、20年くらいお付き合いのある、Epic Gamesの杉山明さんに相談したことです。杉山さんは、ゲーム業界や映画などエンタメの分野において「Softimage3D」を日本で広めた有名な方なんですよ。

岡田氏:それで杉山さんから直接オファーをもらったんです。もともと自分はセミナーなどに登壇する機会も多く、すぐに了承させていただきました。現在、杉山さんは映像や建築などのノンゲーム周りの業務を担当しており、ゲーム関連は自分が登壇することが多いです。

――岡田さんの普段のお仕事内容を教えてください。

岡田氏:サポートエンジニアとして、ライセンスを結んでいる方のみログインできるクローズドなQ&Aサイト「UDN(Unreal Developers Network)」で質問をいただいて回答する、会社などに直接お伺いしてパフォーマンスの計測や不具合の調査する、そして講演に登壇する、という3つの業務が主な担当になります。

――今回の勉強会の内容を初心者向けにしたのはなぜですか?

岡田氏:関東圏で実施しているEpic Games主催の勉強会は、初心者向けの内容はあまり求められておらず、すでに仕事でバリバリ使っている人向けの内容が多くなっています。今後、未経験者や初心者に向けてどのような展開にするか悩んでいたときに、今回のお誘いを受けたので、さっそくこのお題に決めました。

藤村:DeNA社内のゲーム開発現場にとっても、このようなUE初心者向けの勉強会をきっかけに新しいチャレンジや、今後の開発タイトルへのエンジン採用についても役立つとと考えました。

昨今のモバイルゲーム開発では、UEの採用も選択肢の一つとなりつつあるので、「これからUEを勉強したい」と感じている社内のゲームクリエイターが、一歩踏み出して興味を持って実際に触れるような機会になればと思っています。

GDMを立ち上げた時期は、ゲーム業界の中にプランナーの勉強会が少なく、若手向けの勉強会もあまり実施されていなかったため、あえてプランナー向けのお題を中心に実施してきました。

約1年ほど開催を続けたときに、さらにいろいろな職種を扱いたいと考え、デザイナーやエンジニア向け勉強会を実施しました。最近では内容の幅も広がってきたので、今回のような初級、中級とレベル別のお題にすることにしたんです。

――初心者向けの勉強会用の資料を作る上での工夫はありますか?

岡田氏:自分自身、前職のゲーム会社でもUEを使用していたので、当時を思い出しながら実際につまづいたところや、まとまっていたら便利かもしれないトピックスを、まずは広く紹介しようと考えて作りました。

――今後、GDMでUE中級、上級編なども実施の予定はありますか?

藤村:もし、やっていただけるのであれば!

岡田氏:ぜひ、お声がけいただければ!

――ちなみに『Fortnite』マルチプラットフォーム化の際のノウハウはかなり蓄積していますか?

岡田氏:ええ、そのノウハウがUE側に続々とフィードバックされています。モバイル最適化のシステムや、チェックの自動テストなど、より効率を上げるような機能の導入も始まっています。やはり自社開発しているゲームタイトルがあることは、大きなメリットになっていますね。

――最近ではモバイルゲームにUEが導入されることが多くなってきていますが、業界でも技術的な広がりを感じていますか?

岡田氏:先ほど話したようなQ&Aサイトでの他社・他人同士の助け合いも盛んですし、最近では質問の質が高くなってきたのを感じます。ガッツリ業務で使用した上で「技術をもっと深堀りしたい!」と思うモバイルゲームのクリエイターが増えてきたのかもしれませんね。

――使う側もかなり慣れてきたようですね。

岡田氏:確かにそう感じています。自分たちも「その問題は認識していないので、これからすぐ調べます!」と、焦ることも多くなりました

――今後UEはどのように進化していくと考えていますか?

岡田氏:ここ1年ほどで思うのは、ゲームだけじゃなく映像やバーチャルカメラ、モーションキャプチャーとエンジンの連携が強くなってきて、何でも実現できるツールに進化したと実感しています。

弊社のティム・スウィーニーも「Epic Gamesは今後もゲーム会社としてゲームを生み出していく」と強く話していますし、ゲーム開発を大きな軸にしながらも、他分野のテクノロジーの進歩にも深く関わっていきたいと考えています。

また、『Fortnite』のトレンドの勢いがすごくて、ゲームプレイだけじゃないコミュニティツールとして楽しまれている部分も含め、来年はもっとおもしろいことが起きる気がしています。

――さらなる進化が楽しみですね! 本日はありがとうございました。

アンケートに寄せられたコメントを紹介

今回のGDMに参加した方から頂いたコメントを一部抜粋して紹介します。内容はすべて運営チームが目を通しており、今後の運用に活用していきます。

岡田さんの説明がわかりやすく、面白かったです。(ディレクター)
Unreal Engineおよびwiseを使用したサウンド実装の初心者向け講習会や、ワークショップ的なものがあれば是非参加したいです。(サウンド開発)
関西でもたまにやっていただけると、大変ありがたいです。(プログラマー)
岡田さんの講演はよく聞きに行くのですが、このような初心者向けのものはレアで良かったです。缶バッジも嬉しかったです!(経営者)

岡田氏のご厚意により、来場者全員に配られたUEのステッカーと缶バッジ

取材・文・撮影:細谷亮介

GeNOM(ゲノム)とは

DeNAのゲームクリエイターを様々な切り口で紹介するメディア(運営:株式会社ディー・エヌ・エー)です。ゲーム開発の現場で生まれる様々なエピソードや、クリエイター紹介、イベント紹介などを通して、DeNAで働くメンバーの”ありのまま”をお伝えしていきます。

GeNOMの最新情報は、公式Twitterアカウントにて確認いただけます。ぜひフォローをお願いします!

JOIN US!
DeNAゲーム事業部の採用情報はこちら