アンリアル エンジン 4.13 がリリースされました!
September 1, 2016

アンリアル エンジン 4.13 がリリースされました!

作成 Chance Ivey

今回のリリースでは、アンリアル エンジン 4 の数百のアップデートが含まれており、そのうちの 145 の改善点は GitHub のアンリアル エンジンのデベロッパーのコミュニティから寄せられたものです。アンリアル エンジン 4.13 に貢献をいただいた以下の皆様に謝意を表します (以下、敬称略)。

alk3ovation, Allegorithmic (Allegorithmic), Alwin Tom (alwintom), Andreas Axelsson (judgeaxl), Andrew Scheidecker (AndrewScheidecker), Andrian Nord (NightNord), ArnoB (ABeekhub), Artem (umerov1999), Artem V. Navrotskiy (bozaro), Błażej Szczygieł (zaps166), Brent Scriver (FineRedMist), Cedric Neukirchen (eXifreXi), Céleste (CelPlays), Chris Conway (Koderz), Chris528, Christoph Becher (chbecher), Christopher P. Yarger (cpyarger), DanielDylan, DaveC79, Derek van Vliet (derekvanvliet), DevVancouver, Eric-Ketchum, Eugene (grisevg), Franco Salas (SupremeNinjaMaster), gameDNA (gameDNAstudio), ghost, Joel McGinnis (joelmcginnis), Jonathan Johansson (DualCoder), Jørgen P. Tjernø (jorgenpt), Joshua Kaiser (JoshuaKaiser), korkuveren, Kory Postma (korypostma), Krish Munot (KrishMunot), Kuts Alexey (krunt), Lars Jørgen Solberg (larsjsol), Lectem, Lee Reilly (leereilly), Lukasz Baran (iniside), madsystem, Manny (Manny-MADE), Marat Radchenko (slonopotamus), Markus Breyer (pluranium), Martin Gerhardy (mgerhardy), Marvin Pohl (pampersrocker), massanoori, Mateusz Polewaczyk (matii1509), Matthias Huerbe (MatzeOGH), Matthijs Lavrijsen (Mattiwatti), MaximDC, mfortin-bhvr, Michael Allar (Allar), Michael Schoell (MichaelSchoell), mik14a, Miłosz Kosobucki (MiKom), mkirzinger, Moritz Wundke (moritz-wundke), Nachtmahr (NachtMahr87), Narendra Umate (ardneran), NaturalMotionTechnology, Oleksandr Kuznietsov (Teivaz), OWIAdmin, Patryk Stępniewski (kodomastro), Paul Evans (paulevans), pfranz, Piotr Bąk (Pierdek), PistonMiner, projectgheist, Rama (EverNewJoy), Ricardo Maes (kukiric), Rick Deist (dreckard), Robert Segal (robertfsegal), RobertTroughton, Rohan Liston (rohanliston), Saffron (SaffronCR), Sajid (sajidfarooq), salamanderrake, Samuel Maddock (samuelmaddock), Sébastien Rombauts (SRombauts), Tanner Mickelson (DarthCoder117), Thomas Mayer (tommybear), tmiv, Tyler Thompson (Bogustus), Victor Polevoy (vityafx), Webster Sheets (Web-eWorks), Wesley Hearn (wshearn), yehaike, Yohann Martel (ymartel06), Yong-Quan Chen (wingedrobin), Yu He (yuhe00), Zachary Burke (error454)

新機能

アンリアル エンジン 4.13 がリリースされました!今回のリリースでは広範囲にわたる改善が行われています。

メッシュ デカールといった数多くの新しい レンダリング機能、ターゲットをレンダリングするブループリント描画、GPU モーフ ターゲット、屈折機能の改善、高品質に最適化されたノイズ機能がマテリアルに利用できるようになりました。シャドウ マップ キャッシュで、かなり多くのシャドウ キャスティング 動的ライトがシーンに作成できるようになりました!

新しい非線形シネマティック エディタの シーケンサ がアップデートされて、ハイエンド シネマトグラフィの新しい機能が豊富に利用できるようになりました。ゲームプレイからの ライブ録画 が大幅に改善されました。さらに、ショットとアニメーションを外部アプリケーションへ転送したり戻したりすることができます。これらの機能は、SIGGRAPH Real-Time Live!2016 demonstration で紹介しています。

Alembic がサポートされたため、複雑で面白い頂点アニメーションのインポートが可能になりました。モーター経由でスケルタル アニメーションを操作することで、キャラクターをリアルに物理フォースに反応させることが可能な 物理アニメーション コンポーネント が新登場です。

モバイル デベロッパー のために、動的シャドウが最適化され、完全精度のマテリアルがサポートされ、カスタム仕様のポスト プロセスが可能になりました。OpenGL ES 3.1 が Android で使用可能になり、バイナリ シェーダー キャッシュでイタレーション時間が改善されます。

VR ゲーム でカプセル シャドウが使用可能になり、ステレオ インスタンスが最適化されました。VR Template Project もチェックしてみてくださいね!VR ゲームでモーション コントローラを使ってインタラクトおよびナビゲートする方法がよく分かります。

VR 中でレベルをビルドしたい場合は、アンリアルの VR エディタ が改善され、メッシュとフォリッジのペイント、新たなトランスフォーム ギズモ、VR カラー選択をがサポートされました。VR から直接ゲームをすぐにプレイできるようになりました。[Editor Preferences (エディタ環境設定)] の [Experimental (実験的)] セクションの [Enable VR Editing (VR 編集を有効にする)] をオンにすることができます。

主要機能

新規:シーケンサーのライブ録画

シーケンサーに Siggraph Real-Time Live!2016 で紹介した新しいライブ記録機能がつきました。

image alt text

シーケンス レコーダーは、すべてのアニメーション、オーディオ、エフェクトをシーケンサーで編集可能なスタンドアローン アセットにインクルードしながら、ゲームプレイのライブ キャプチャを可能にします。今回のリリースで追加された新機能は以下のとおりです。

  • 選択したアクタをすぐに機能し、カメラが記録されている場合はカメラ カットのトラックを自動作成する機能

  • 任意のコンポーネントとプロパティを記録するように指定する機能

  • データをレベルで所有するアクタへ記録するオプション機能

  • アクタが記録されないがアタッチされている場合、ワールド空間へトランスフォームを記憶する機能

新規:Movable Light (可動ライト) のシャドウ マップ キャッシュ

移動しないポイント ライトまたはスポット ライトに対して、シャドウ マップを格納して次のフレームに再利用することができます。この機能は自動処理で、背景が通常は動かないゲームでは、シャドウ キャスティング ムーバブル ポイントライトとスポットライトの効率を上げます。

image alt text

上の画像は 33 個の動的シャドウ キャスティング ポイントライトが最小限のオーバーヘッドで表示されています。

970 GTX で 1920x1200 の場合のパフォーマンスは以下の通りです。

  • キャッシュなしの 33 個のシャドウ キャスティング ポイント ライト:シャドウ デプスのレンダリング時間は 14.89ms

  • キャッシュされたシャドウ マップを使用: .9ms (16 倍の速さ!)

  • 33 個のポイント ライトの寄与のレンダリングにあと 2ms 必要であることに留意してください。別の方法でも最適化できますが、この変更は反映されません。

  • キャッシュで使用するメモリは ‘Stat ShadowRendering’ で表示されます。このシーンの場合は 25.6 Mb でした。

  • キャッシュで使用できる最大メモリは ‘r.Shadow.WholeSceneShadowCacheMb’ で制御できます。

制限事項

  • デフォルトでは、以下の場合のみキャッシュされます。

    • プリミティブの可動性が [Static (静的)] または [Stationary (固定)] に設定されている場合

    • 使用しているマテリアルが World Position Offset を使わない場合

    • ライトの種類がポイントまたはスポットで、シャドウ キャスティングあり、可動性の設定は [Movable] で動いていない場合

  • アニメートしているテセレーションまたはピクセル深度オフセットを使用しているマテリアルは、シャドウ深度がキャッシュされるとアーティファクトを生じ得ることがあります。

新規:Voronoi (ボロノイ) ノイズ マテリアル

ノイズ マテリアル ノードで利用できる Voronoi ノイズ オプションを追加しました。Voronoi ノイズは Worley または Cellular ノイズとも呼ばれ、プロシージャルなマテリアル生成に便利な場合があります。

image alt text

Voronoi ノイズは、以下の像で分かるように、大理石などお馴染みの物理マテリアルにパターンを生成するために使用します。

image alt text

この例では、「グラディエント マッピング」という技術と Voronoi ノイズを併用して、大理石のような外見を実現しました。

image alt text

左から右の順に

1) 標準的な Voronoi ノイズ、1 オクターブ

2) "Gradient" ノイズのある Voronoi を入力位置に追加して 0.05 に設定

3) Gradient ノイズに 0.3 を乗算してから Voronoi 入力位置へ追加

4) ランダムなタイリング テクスチャのテクスチャ座標としてステップ 3 の結果を使用

Voronoi ノイズは 4 段階の品質レベルがあります。レベルが高いほどグリッド アーティファクトは減少しますが、シェーディング時間が大幅に増加します。

さらに、いくつかのマテリアル ノード機能でパフォーマンスが改善されました。機能選択ツールチップでパフォーマンスのトレードオフについて詳細を紹介しています。これらはランタイムが遅い場合が多いので、結果をテクスチャへ焼き付けることをお勧めします。

新規:レンダー ターゲットへのブループリント描画

ブループリント機能で、レンダリング ターゲットにマテリアルを描画できるようになりました。ゲーム特有の多彩なレンダリング エフェクトを、ソースコードを修正せずに実装することができます。

image alt text

これは、ブループリントとマテリアル グラフに完全に実装した流体サーフェイス シミュレーションです。キャラクターと発射物は水面を押すことができます。

image alt text

これは、発射物の衝撃時の高度値を累積して、ブループリントだけで作成したシンプルな高度フィールド ペインターです。

新機能の Draw Material to Render Target は、マテリアルの Emissive Color 入力でレンダー ターゲット先を塗りつぶすクワッドを描画します。

image alt text

ゲームを開始すると、Begin Play が呼び出され、レンダー ターゲットが青で塗りつぶされます。レンダー ターゲットを右クリックして、圧縮できるように静的テクスチャとして保存します。

image alt text

レンダー ターゲットをさらに細かく描画する場合は、 Begin Draw Canvas to Render Target End Draw Canvas to Render Target を使用します。これらを使うと、キャンバス オブジェクトフォント描画メソッドだけでなく、レンダー ターゲットの複数のサブセットを効率的に描画することができます。

image alt text

ブループリントからオフスクリーンのレンダリングが可能になったので、グラフィック プログラマーの助けを借りずに多くのレンダリング機能をすぐに実行することができます。ピクセル シェーダー処理で大きいレンダー ターゲットへのたくさんのパスを使って、GPU も保管しやすくなりました。これらの描画コールは、(WorldTick イベント配下の) デバッグ コンソールに 'ProfileGPU' と入力すると表示されます

制限事項

  • 指定したマテリアルでテクスチャとしてサンプルにしているレンダー ターゲットへの描画はできません。アルファ ブレンディングを使用してレンダー ターゲットをインプレースで修正する、あるいは異なる 2 つのレンダー ターゲット間を行き来します。

  • マテリアルの Emissive Color 出力と Opacity 出力のみ有効です。レンダー ターゲットへ描画する際、ライティングはサポートされず、WorldPosition のようなノードは期待しない値になる場合があります。

  • Emissive Color はデフォルトで正の値にクランプされていますが、マテリアル プロパティ ‘AllowNegativeEmissiveColor’ を有効にすれば負の値を出力することができます。

コンテンツ サンプル プロジェクトの BlueprintRenderToTarget マップで実際の作業の様子を見ることができます!

新規:頂点アニメーションの Alembic インポータ(実験的)

Alembic アニメーションのインポート機能がサポートされます!Alembic Importer を使うと複雑なアニメーションをオフラインでオーサリングして、UE4 内でリアルタイムでレンダリングすることができます。この機能はまだ実験的ですが、ぜひ試してみてください。フィードバックをお待ちしています。

image alt text

Alembic キャッシュをいくつかの方法でインポートできます。

  • スタティック メッシュAlembic アニメーションの単一のフレームを Static Mesh アセットとしてインポートします(アニメーションは何も適用されません)。

  • ジオメトリ キャッシュ新しいタイプのアニメーション アセットで、頂点が変化するシーケンスの再生を可能にします。インポートされた Alembic アニメーションは、フレームのフリップブックとして再生されます。パフォーマンスはメッシュの複雑度に応じて変わるので、最適にならないケースもあります。

  • スケルタル メッシュ