Search Unity

提供開始:Visual Effect Graph と HD レンダーパイプラインによる『Spaceship Demo』プロジェクト

, 8月 19, 2019

昨年の Unite LA では、Unity 2018.3 で作成した一人称視点ゲームのデモビデオにより、新機能「Visual Effect Graph」をお披露目しました。このデモは HD レンダーパイプライン(HDRP)でレンダリングされ、高解像度のアセットやライティング、エフェクトが使われていました。

今年、Unity 2019.3 にて、いよいよ Visual Effect Graph が正式にリリースされます。そこで、このプロジェクトの制作方法をご紹介するため、最新機能をフル活用したエフェクトにアップグレードしたうえで、『Spaceship Demo』プロジェクトをドキュメントと合わせて公開します。今すぐプロジェクトをダウンロードし、Unity 2019.2 で実際に体験してみてください。

『Spaceship Demo』のビデオはこちらです。

愛情(と Unity)から生まれた、最高級のゲーム VFX

『Spaceship Demo』のエフェクトは、シンプルな環境用 VFX から複雑な AR、ホログラフィック UI、HUD、ド派手なリアクターコアのエフェクトに至るまで、すべて Visual Effect Graph を使って作成されています。デモに登場する美麗な環境やエフェクトの一部を、以下にスクリーンショット形式でご紹介します。

制作環境を想定して作成

『Spaceship Demo』では、全編を通じて数多くのエフェクトが登場します。これらのエフェクトはすべて、PlayStation 4(スタンダードモデル)の 1080p、フレーム長 33.3 ミリ秒(30 fps)を想定し、パフォーマンスを重視してゲーム制作環境下で作成、最適化されました。また、Visual Effect GraphHDRP に大量の最適化設定が実装されており、全エフェクトでこの設定を活用しています。

半解像度半透明レンダリング:指定した透明パーティクルについて解像度を下げてレンダリングすることで、レンダリングパフォーマンスを 4 倍に強化します(まれに、多少のぼやけが生じることがあります)。この設定は主に、フォアグラウンドでライティングの影響を受ける大きなパーティクルに使用されています。その理由は、こうしたパーティクルはテクセル/ピクセル比がやや小さいので、解像度が低下してもまったく目立たないからです。

八角形パーティクル:クアッドパーティクルを最適化して、パーティクルからピクセルが透明であることの多い角部をトリミングしたものです(コストは極小)。多くの場合、パーティクルの角部は透明ですが、こうした透明な領域が重なり合うと不要な計算が行われてしまいます。オーバードローが大量に行われているような状況では、このような部分をトリミングすることでシーンを最大 25% 最適化できます。また、半透明な部分について、トリミングできない場合に解像度を抑えられるというメリットもあります。

簡易ライティングモデル:HDRP 用の Simple Lit を使用すれば、BRDF のプロパティ(拡散ライティング、スペキュラーライティング、シャドウ/クッキーレセプション、環境光ライティング)を無効化できます。表示するフィーチャーのみを選ぶことで、ライティングの計算コストをほぼゼロに抑えられます。たとえば、パーティクルのライティングにライトプローブのみを使用するには、「Simple Lit Translucent Model」を選択して環境光ライティング以外のプロパティを無効化します。この最適化は、高周波ライティングをあまり必要としない多くの環境エフェクトに採用されています。

プロジェクトをダウンロードする

このプロジェクトを利用するには、最新の Unity 2019.2 エディターが必要です。Unity 2019.2 は Unity Hub アプリを使用して簡単にインストールできます。「Installs」タブの「Add」ボタンをクリックし、Unity 2019.2.0f1(またはそれ以降のバージョン)を選択してください。

次に、GitHub 上の『Spaceship Demo』のページにアクセスして、プロジェクトファイルを入手します。ページに移動したら、「Clone or Download」ボタンをクリックしてプロジェクトをクローンします。GitHub Desktop アプリをインストールしている場合は「Open in Desktop」をクリックします。または、ボタン上部に表示されるアドレスを使用して、他の Git クライアントでクローンします。

Git を使用しない方法

Git を使用せずにプロジェクトをダウンロードしたい場合は、リリースページにアクセスして任意のリリースを選択し、そのリリースのタイトルにある「Download Project File HERE」から zip ファイルをダウンロードしてください。

ソースコードの zip ファイルと tar.gz ファイルはダウンロードしないでください。本プロジェクトでは Git LFS を使用しており、これらのアーカイブにはバイナリデータが含まれていません。このページからプロジェクトをダウンロードした場合は、忘れずに最新版のエディターも入手してください。

ダウンロードが完了したら、好きなフォルダーにプロジェクトファイルを解凍します。これで準備は完了です。

プレイ可能な Windows 用スタンドアロンビルドをダウンロードする

PC で実行したい方のために、実際にプレイできるデモのバイナリファイルもご用意しました。こちらのリンクからダウンロードできます。最新版のスタンドアロンビルドについては、GitHub プロジェクトのリリースページを参照してください。

以下の仕様を満たすミッドレンジのゲーミング PC であれば、スタンドアロン版のデモを 1080p 解像度でフレームレートを 30 fps 付近で維持した状態で実行することができます。

  • プロセッサー:Intel i5 8400 または AMD Ryzen 5 2600
  • グラフィックカード:NVIDIA GTX1050 または AMD RX 560
  • 8GB RAM

プロジェクトを開いて探索する

Unity Hub の「Projects」タブで「Add」ボタンをクリックし、プロジェクトのルートフォルダーを参照してプロジェクトを追加します。Unity のバージョンが選択されていない場合は、ドロップダウンメニューでバージョンを選択してください。その後、プロジェクト名をクリックしてプロジェクトを読み込みます。

プロジェクトの読み込みには 10 ~ 20 分かかります。この時間はコンピューターの性能に応じて変動します。読み込みが完了するとエディターが開き、「Discover Spaceship Demo」ウィンドウが表示されます。

「Discover」ウィンドウ

「Discover」ウィンドウは、このプロジェクトの全体像や、この 5 分間のデモを構成する重要な要素を説明するために作成したものです。ここで重点的に取り上げているのは、視覚効果とスクリプト化されたシーケンスです。

注:このウィンドウはいつでも閉じることができます。再び開く場合は、「Help」の「Discover Spaceship Demo」メニューを使用してください。

プロジェクトが開いたら、このウィンドウで『Spaceship Demo』のレベルと Main Menu シーンのどちらを開くかを選択します。対応するボタンをクリックすると、エディターに該当のシーンが自動で読み込まれます。「Discover」ウィンドウが Discovery モードになり、そのレベルにおけるさまざまな重要ポイントが表示されます。

ウィンドウ左側にある一覧で項目を選択できます。各項目を選択すると、対応する視点に Scene ビューが切り替わります。また、右側にはゲームオブジェクトを選択したりアセットを開いたりするための情報が表示されます。このウィンドウを使用して、各ゲームオブジェクトの動作を確認したり、Timeline をプレビューしたり、各シーケンスを構成する Visual Effect Graph を開いたりすることができます。

今後の展望

Visual Effect Graph は、Unity 2019.3 で正式にリリースされます。これに合わせ、正式リリース後、Unity 2019.3 で動作するように『Spaceship Demo』プロジェクトが更新されます。今秋にさらなるプロジェクトの更新も予定していますので、GitHub のリポジトリを定期的にチェックしてください(GitHub の Watch 機能や Star 機能を使うことをお勧めします)。

また、『Spaceship Demo』に対するご意見や感想などがありましたら、フォーラムからぜひお知らせください。

Visual Effect Graph についてもっと知りたい方は、Unite Copenhagen にご参加ください

次回に皆さんと直接お会いできるのは、9 月 23 ~ 26 日開催の Unite Copenhagen です。世界中から集まった何千人もの才能豊かなクリエイターや一流開発者と出会えるのは、このイベントだけです!

学ぶ、つながる、参加する

  • さまざまな技術セッションや交流の機会に参加したり、基調講演を聞いたりして、Unity の最新機能やテクニック、極秘情報を入手しましょう。
  • 楽しい交流イベントや「Unite at Night」を通じて、業界のリーダー達と交流したり、友人の輪を広げたりしましょう。
  • ワークショップ、Q&A セッション、コミュニティイベントに参加して、Unity のスキルを磨いたり、キャリアアップに役立つ関係を築きましょう。

Unite Copenhagen の詳細についてはこちらのウェブサイトをご覧ください。また、TwitterFacebook で最新情報を公開していますので、忘れずにチェックしてください。

23 コメント

コメントの配信登録

コメント受付を終了しました。

  1. Matt Ostgard

    9月 19, 2019 9:39 pm

    It took me awhile to check this out. But holy crap this is an amazing learning resource. The walk-through window is especially useful!

  2. MYKHAYLO KOTYS

    8月 23, 2019 5:19 pm

    Hey,

    I’ve launched the editor exactly as suggested in the description, but I have this error running all the time and I can’t see anything but vfx cubes:

    http://i.piccy.info/i9/f18dd3f54ee396e7d908a2efa59c696a/1566573415/51302/1315075/1.jpg

    http://i.piccy.info/i9/f54c4076847c8f6f59e43c6b4f78b65f/1566573481/87343/1315075/2.jpg

    aaand there is no sound.

    I tried launching the level both from the “Discover” window and from loading the “Main menu” scene and playing it to choose “Start”

    1. Thomas Iché

      8月 29, 2019 8:04 am

      As shown in your screenshots, all textures seem to have reverted to null’s. I noticed it once when the git LFS files were not pulled correctly, and It could match the fact that you don’t have textures or sound. Did you clone the project or downloaded the zip file we provided?

  3. any chance for the heretic ?

  4. Seyed Morteza Kamali

    8月 23, 2019 4:37 am

    Awesome! I love VFX Graph

  5. is that volumetric cloud on the hologram device?

    1. Thomas ICHË

      8月 23, 2019 9:46 am

      No, these are just flipbook’ed sprites using simplified lighting and rendered as half resolution.

  6. Unfortunately, I have not been able to get this working properly on Ubuntu. : (

  7. Will this demo be abandoned as quickly as FPS Sample demo?

    1. Isaac Surfraz

      8月 21, 2019 4:39 pm

      Unfortunately anything based on SRP, ECS/DOTS, and new networking or new physics will have a high likliness to be abandoned until all the APIs are stable. Which unfortunately seems to be a very long way off.

      Hopefully all these demos will get updated to function with the final APIs, otherwise they quite literally are pointless.

  8. Are you seriously suggesting that this DEMO running at 30 FPS on GTX1050 is not enough? Come on guys…
    This is absolutely brutal!

  9. Cool.

    When are we going to get proper documentation for the SRP? How about even just documented API changes between 2018 and 2019? HDRP and LWRP are great and all, but if SRP is the system going forth, it’s pretty important that we know how to use it.

  10. Isaac Surfraz

    8月 20, 2019 9:19 am

    I must admit I am quite sad to see this is only at 30fps with such hardware. Thats really not optimised enough for a sample, surely you can get some more out of it?

    1. I have a GTX970 and it is always above 60 FPS.

      1. The 970 is a much faster card than a 1050.

        1. Just made a run on my XPS15 with a 1050ti maxQ (which is roughly a desktop 1050), and it actually runs between 33 and 50 fps, averaged at 43, nothing to be ashamed of IMO

  11. Great project, I found the “gameplay ingredients” package really interesting.
    It’s what I’ve been looking for Unity to do for a while (a basic framework for most of the common actions used in game development), instead of “starter projects” that are left depending on what Unity is caring about that month.
    Even though 2017 to 2018 has been a bumpy road, it seems that the future is promising.
    Keep the good work.

  12. sorry unity but this is so boring and synthetic experiment for me.
    doom (2016) run 140fps~ on my pc at chaos scene.

  13. FX look great. Let down by the camera movement, looked very clunky and artificial not FPP enough?

  14. Justin Palmer

    8月 19, 2019 6:50 pm

    Thank you, Unity team!

  15. THIS
    IS
    AWESOME

  16. I think 30 fps is not enough. Please tweak it to 60 fps.

    1. Isaac Surfraz

      8月 20, 2019 4:56 pm

      Actually after playing with this extensively, I think its good performance for such high quality graphics. I think on a 1050 to get such decent visuals at solid 30 is really good.

      In a normal game users would dumb down various settings to get it to 60 on their hardware.

      I imagine on something like a 1060 or even 1070 60fps is achieveable.

      After all a 1050 is a trash tier card XD