新機能
アンリアル エンジン 4.20 はデベロッパーの成功に必要なスケーラブルなツールを提供します。未来を見据えたモバイルゲームを制作し、ナイアガラで可能となるエフェクトの世界を探索し、魅力的で本物と思ってしまうようなデジタルヒューマンに息を吹き込み、すべてのプラットフォームでのワークフロー最適化を活用しましょう。
これまでにないリアルさを実現した命を持ったように見えるデジタルキャラクタや、説得力のある世界を実現できます。アンリアル エンジンの新しいナイアガラ パーティクル エディタで次世代のビジュアルエフェクトを作成し、プロジェクトのすべての部分に目を見張るようなディティールを追加できます。『Meet Mike』や『Siren』といったデモで使用されたデジタルヒューマン技術を使って、リアリズムの標準を引き上げましょう。新しいシネマティック被写界深度では、映画レベルのカメラエフェクトをリアルタイムで実現できます。
アンリアル エンジンは、制作プロセスを好きなスタイルやワークフローに合わせてカスタマイズできるツールを提供するため、あなた自身の方法での制作に力を与えます。新しいエディタスクリプト機能と自動化ライブラリを使うことで、完全にカスタム化したツールとワークフローを作り上げることができます。アクタやアセットに適用できる新しいアクションを追加して、デザイナーやアーティストの仕事を楽にしてあげましょう。アクタやコンテントブラウザのコンテキストメニューにスクリプト機能が拡張されました。
モバイルとコンソールのサポートは実戦でテストされています。つまり、一度作成したものはどのデバイスでもプレイ可能で、ユーザが望むどの場所でもプレイ体験を実現できます。エピック ゲームズはフォートナイトのモバイル版リリースのために力を集結し、モバイルゲーム開発に向けたアンリアル エンジンの最適化を行いました。ハードウェアのタスクを制限するために、オクルージョン クエリをハードウェアとソフトウェア両方で実装することなど、無数のパフォーマンス改善策を実装しました。プロキシ LOD はプロダクションで使用可能な状態になりました。レンダリングされる必要があるジオメトリの複雑性をさらに下げることを可能にする方法です。
これらのエピック ゲームズによるアップデートに加えて、このリリースには GitHub のアンリアル エンジンのデベロッパーのコミュニティから寄せられた165の改善点も含まれています!アンリアル エンジン 4.20 に貢献をいただいた以下の皆様に謝意を表します (以下、敬称略)。
Adam Moss (adamnv), Akihiro Kayama (kayama-shift), Alan Edwardes (alanedwardes), Alan Liu (PicaroonX), Andrew (XenonicDev), Andrew Haselgrove (Dimpl), Anton Rassadin (Antonrr), arkiruthis, Begounet, Brandon Wilson (Brandon-Wilson), c4tnt, Changmin (cmheo), Christian Loock (Brainshack), Clinton Freeman (freemancw), Daniel Assuncao (dani9bma), David Payne (dwrpayne), Deep Silver Dambuster Studios (DSDambuster), Derek van Vliet (derekvanvliet), Eduard Gelbling (NachtMahr87), frankie-dipietro-epic, Gautier Boëda (Goutye), George Erfesoglou (nonlin), Giovanny Gutiérrez (bakjos), Gregor Gullwi (ggsharkmob), Hannah Gamiel (hgamiel), Hyuk Kim (Hybrid0), Ibraheem Alhashim (ialhashim), Ilya (ill), Jacob Nelson (JacobNelsonGames), Jaden Evanger (cyberblaststudios), Jared Taylor (Vaei), Jesse Yeh (jesseyeh), Jia Li (shrimpy56), Jørgen P. Tjernø (jorgenpt), June Rhodes (hach-que), Junichi Kimura (junkimu), Kalle Hämäläinen (kallehamalainen), kinolaev, Kory Postma (korypostma), krill-o-tron, Kryofenix, Lallapallooza, Layla (aylaylay), Lee Berger (IntegralLee), Leon Rosengarten (lion03), Lirrec, malavon, Marat Radchenko (slonopotamus), Marat Yakupov (moadib), Mathias L. Baumann (Marenz), Matt Hoffman (LordNed), Matthew Davey (reapazor), Maxime Turmel (maxtunel), Michael Allar (Allar), Michael Kösel (TheCodez), Michael Puskas (Mmpuskas), Mikayla Hutchinson (mhutch), mimattr, Mitsuhiro Koga (shiena), Muhammad A.Moniem (mamoniem), nakapon, Nicolas Lebedenco (nlebedenco), Paul Eremeeff (PaulEremeeff), Phillip Baxter (PhilBax), projectgheist, Rama (EverNewJoy), redfeatherplusplus, Rei-halycon, Robert Khalikov (nbjk667), Roman Chehowski (RChehowski), S-Marais, Sam Bonifacio (Acren), Satheesh (ryanjon2040), Scott Freeman (gsfreema), SculptrVR, Sebastian Aaltonen, Sébastien Rombauts (SRombauts), Seokmin Hong (SeokminHong), Sertaç Ogan (SertacOgan), stephenwhittle, Temaran, Thomas Miller (tmiv), Trond Abusdal (trond), TWIDan, Tyler (tstaples), Usagi Ito (usagi), yama2akira, Yang Xiangyun (pdlogingithub), yehaike, Zachary Burke (error454)主要機能
新規:モバイルプラットフォームでのリリースに向けた最適化と改善
アンリアル エンジン 4.20 には iOS 版と Android 版のフォートナイトのために開発された100以上のモバイル向け最適化が含まれています。ゲームリリースをより簡単に、そして複数プラットフォームでのゲームプレイをシームレスに調整する上で、デベロッパーにとって大きな改善が行われています。主要な改善点には、 Android デバッグの改善、モバイルランドスケープの改善、モバイルでのオクルージョンクエリがあります。
モバイルでのハードウェア、ソフトウェアのオクルージョンクエリ
ハイエンドのモバイルデバイスでハードウェア オクルージョンクエリがサポートされました。 iOS、もしくはES 3.1かGPUを使用したVulkanを使用する Android でサポートされます。サポートするデバイスではデフォルトで有効になります。
ソフトウェア オクルージョンクエリはCPUを使用してシーンのプリミティブ コンポーネントのカリングを行う実験的機能です。慎重なアプローチをしているので、どのモバイルデバイスでも使用可能です。
左 - r.Mobile.AllowSoftwareOcclusion 1, r.SO.VisualizeBuffer 1; 右 - オクルージョンされた部分を示したフローズンレンダー
ソフトウェア オクルージョンクエリを有効にするためには以下のステップに従います。
- 有効化方法 r.Mobile.AllowSoftwareOcclusion 1
- 無効化方法 r.AllowOcclusionQueries 0
- プリミティブをオクルーダとして有効にするには、スタティック メッシュ エディタで [LOD for Occluder Mesh] の設定値を有効にします。
Mobile Previewer でHigh-End Mobile を使用し r.SO.VisualizeBuffer 1 を有効にすることで結果のビジュアライズを行えます。
プラットフォームマテリアル統計
マテリアル エディタ内の新しい [Platform Stats(プラットフォーム統計)] ウィンドウを使用して、マテリアルを簡単にプロファイルして最適化しましょう!複数のシェーダープラットフォームと品質レベルに対する統計を確認できるようになりました。モバイルプラットフォームでは、オフラインシェーダーコンパイラを使って、より正確なインストラクションとテクスチャ使用状況の情報を取得しています。
Android デバッグの改善
UE4 プロジェクトの再パッケージ化なしにAndroidでのイテレーションとデバッグを実行できます!Android 向けにコンパイルする際に、Android Studio で開くことが可能な Gradle プロジェクトファイルを生成できるようになりました。C++ と Java コードにブレークポイントを追加して、Android Studioからデバッグセッションを開始できます。C++ ソースコードへの変更を加えて再コンパイルすることも可能です。新しいデバッグセッションを開始すると、Android Studioは変更を検知して、新しい共有ライブラリをデバイスに素早くアップロードします。
モバイルランドスケープの改善
モバイルでのテレインをもっとおもしろいものにしましょう。モバイルデバイスでもランドスケープのマテリアルレイヤーの数が無制限になりました!3 レイヤーが最適であることには変わりはありませんが、十分なテクスチャ サンプラーが利用可能であれば任意数のランドスケープ レイヤーを使用できます。
ランドスケープマテリアルでマテリアルノードの Feature Level Switch を使ってすべてのプラットフォーム向けの単一のランドスケープマテリアルを作成できるようになりました。
1- モバイルランドスケープ; 2 - PC ランドスケープ
その他のモバイルの改善
モバイル版のフォートナイトをリリースするために行った以下の改善点が、すべてのデベロッパーが使用できるようにアンリアル エンジン 4.20 に追加されました。
- プラットフォーム別の最小スタティックメッシュ LOD 設定
- プラットフォーム別の最小スケルタルメッシュ LOD 設定
- ハードウェアオクルージョンの改善
- HLOD ツールとワークフローの改善
- オーディオ品質ノード
- オーディオバリエーションカリング
- プラットフォーム別のオーディオ ダウンサンプリング
- プラットフォーム別のオーディオ圧縮品質
- PCにより一致させるシェーディングモデルの調整
- リフレクションキャプチャの輝度の修正
- 4レイヤーのランドスケープサポート
- ランドスケープテッセレーションの改善
- 未使用の LOD によるメモリコストをゼロになるように改善。以下を含みます。
- スタティックメッシュ
- スケルタル (骨格) メッシュ
- マテリアル品質レベル
- グラスとフォリッジ
- 高詳細コンポーネントとメッシュ
- カスケードでの高詳細エミッター
- デバイスメモリに基づいた設定
- マテリアルメモリの削減
- アセット一括変更のためのエディタスクリプト機能
- パーティクルコンポーネントのプーリング
- マテリアル パラメータ コレクションの更新コスト
新規:Nintendo Switchでのリリースに向けた最適化と改善
Nintendo Switch向けフォートナイトの開発で行った無数のパフォーマンスとメモリに関する改善をすべてのアンリアル エンジン デベロッパーにリリースしました。Nintendo Switch向けの開発を大幅に改善しました!
以下の改善点が含まれます。- 動的解像度と Temporal アップサンプリングのサポート
- コントローラ入力のフレーム同期でのレイテンシー低減
- 大幅なCPUレンダリング最適化
- マルチスレッドの改善
- テクスチャ圧縮の改善
- メモリプロファイリングのサポート
- TVモードでの 1080P バックバッファサポート
- その他多数の修正が含まれます!
新規:プロキシ LOD の改善
新しい プロキシ LOD ツールが実験的段階から卒業して実制作で使用可能な段階になりました!このツールはポリゴン数、ドローコール数、マテリアル複雑度によるレンダリングコストを削減することを可能にします。 モバイルとコンソール開発で大きな利点があります。このツールはサードパーティーパッケージのSimplygonに対する代替ソリューションを提供し、アンリアル エンジンの Level of Detail (LOD) と連携して使用することが可能です。
プロキシ LOD ツールは、ソースとなる複雑なジオメトリモデル群に対して、パラメータで制御された単一のローポリゴンメッシュと大体の見た目を再現したテクスチャから構成されるプロキシを生成することで、単純化したモデルを生成します。 モデルの品質を下げることが許される場合に、このプロキシがランタイムで表示されることになります。例えば、ジオメトリが画面においては小さいピクセルサイズのみを占める場合などです。
注意:プロキシLODツールは、現在 Windows 版のアンリアル エディタでのみ使用可能です。
上の画像は Gap-Filling と Hard-Edge Splitting の両方の設定を使用し、プロキシ LOD tool が構築した Fortnite Battle Royale での建物と駐車場のプロキシモデルです
4.19 に含まれていた実験段階の プロキシ LODツールに比べて、今回実制作に対応したバージョンには複数の機能強化が追加されています。特に、プロキシジオメトリの法線をコントロールする機能の強化と、自動的にドアや窓といった隙間を埋めてさらに単純なプロキシモデルを生成する機能が含まれています。
法線コントロールの改善ハードエッジ法線の分割
フォートナイトでの極端なメモリ使用の制限によって、LODを非常に効率よくする必要が出てきました。大部分のプロキシでは、生成されるベースカラーのテクスチャは非常に小さく、法線マップは使用されません。このアプローチでは、プロキシメッシュ自身ができる限り品質の高い法線を持つ必要があります。
1 - ハードエッジ角度 = 80; 2 - ハードエッジ角度 =0
上のgif画像は、頂点法線に対するハードエッジ分割の効果を示しています。画像 2 はスムーズ頂点法線です。4.19 の実験的段階のプラグインで計算されたもので、家の下側近くの暗い領域で、欠点があることがわかります。これを画像 1 と比べてみましょう。ハードエッジ頂点法線の分割を、ユーザーが指定したハードエッジ カットオフ角度で行ったものです。
ハードエッジ カットオフ角度の追加に加え、ユーザーは頂点法線の計算で使われる方法を指定できるようになりました。 Angle Weighted、 Area Weighted、Equal Weighted から選択できます。
隙間のフィル(Gap Filling)
隙間のない完全に閉じたジオメトリの場合、プロキシシステムは自動的に内側のアクセスできない構造(例えば、閉じた家の中の壁や家具など)を破棄します。理想的には、ソースとなるジオメトリはこのことを考慮して制作するか調整されるべきですが、ゲーム制作での制限の中では常に実現可能なことではありません。ほぼ隙間がないソースジオメトリから効率のいいプロキシ LODを生成するために、プロキシ LODツールでは強度を設定して拡張(dilation)や浸食(erosion)といった手法で隙間を閉じるオプションが利用できます。主に想定されている使用ケースは、離れた場所にある建物でのドアや窓です。
1 - 元のメッシュ; 2 - 隙間のフィル無し; 3 - 隙間のフィル
上の gif 画像は隙間のフィルの効果を示したものです。すべての画像は固定した小さなテクスチャ空間のみを使用するよう制限しています。画像 2 は隙間のフィルを使用しないプロキシ LODの結果です。この場合、 LOD 建物の内部を含んでいます。(見えていない部分でポリゴンとテクスチャのコストがかかっています)画像 3 は同じ建物で隙間のフィルを使用して自動的に建物のドアと窓を閉じたものになります。全体の三角ポリゴン数が減り、限られたテクスチャリソースをより有効に活用しています。
新規:シネマティック被写界深度
新しいシネマティック被写界深度 (Cinematic DoF) を使用することで、映画クオリティのシーンをリアルタイム環境でレンダリングしたいというビジョンを実現することができます。この新しい手法は、すでに存在する Circle DoF より品質が高い手法としてデザインされました。一方で、Bokeh といった他のほとんどの DoF 手法より高速です。シネマティック被写界深度を使うと、被写界深度のエフェクトはよりクリーンになり、プロシージャルな Bokeh シミュレーションで映画的な見た目を実現できます。この新しい DoF 実装はさらにアルファチャンネルをサポートし、動的解像度でも安定し、コンソール向けプロジェクト用にスケールダウンするための設定も含んでいます。
1 - シネマティック被写界深度を有効; 2 - 被写界深度を無効
シネマティック被写界深度はデフォルトで有効になります。これまでのカメラとポストエフェクト設定で Circle DoF を選択していた場合の選択もシネマティック被写界深度に置き換えられます。
- シネマティック被写界深度は現在、以下のプラットフォームをサポートしています。
- D3D11 SM5、D3D12 SM5、Vulkan SM5、PlayStation 4、Xbox One と Mac です。
- プロシージャル Bokeh シミュレーションでは現在、以下の機能をサポートしています。
- 絞りの羽根枚数の設定。
- レンズの最大開口部(最小 F-stop)に合わせて直接羽根の曲率を設定。
- 設定可能なコントロールはポストプロセスボリューム、カメラアクタ、Cine Camera アクタの Camera(カメラ)設定に用意されています。
- 一連の r.DOF.* コンソール変数で、ハードウェアリソースが限られたプロジェクトでのスケーラブル設定のカスタマイズが可能です。
詳細についてはDOF (Depth of field:被写界深度)ドキュメントを参照してください
新規:ナイアガラ ビジュアルエフェクト エディタ(ベータ)
ナイアガラ ビジュアルエフェクト(VFX)エディタがベータプラグインとして利用可能になりました!将来的にアンリアル カスケードを置き換えることになるまったく新しいビジュアルエフェクトツールのベータ版をお試しください。 ナイアガラのビジョンに関する詳細についてはGDC での講演 を参照してください。
注意:ベータ機能は、カスタマーの皆様とシェアしたいと考える程度には開発が進んでいるものの、UE4の標準機能とする前にできる限りのフィードバックを受けたりたい、という位置づけです。一方で、ベータなのでナイアガラは実際の制作で使用できる段階ではありません。これから実制作で使用できるように、パフォーマンス最適化やバグ修正をさらに行っていく必要があります。こうした制限はありますが、エフェクト開発者がナイアガラについての学習をはじめて、ナイアガラを最高のVFXエディタにするために協力してくださることを願っています。
ナイアガラの概要についてはGDC 2018のプレゼンテーション Programmable VFX with Unreal Engine’s Niagara をご覧ください。また、 ナイアガラ のドキュメンテーションも参照してください。エフェクトデザインと作成の改善
左 - Dynamic input モジュールを使用したパーティクル システム 右- Dynamic input モジュール
- スケルタルメッシュはエフェクトを発生させる自身の表面を指定できるようになりました。マテリアル名、もしくは、指定したボーンの影響範囲で指定できます。
- モジュールでの初期値指定方法が改善され、関数を呼ぶことから、動的入力のデフォルトを使用することまで、さまざまな挙動を使用できるようになりました。
- メッシュパーティクルが角速度をサポートするようになりました。
- リボンレンダラーにビームサポートが追加されました。対応するモジュールを使用します。
- モジュール間の依存関係を定義できるようになりました。スタックの構成がおかしくなった場合にユーザにその情報を知らせることができます。また、自動修正(auto-fix)を使用することもできるようになりました。
- システムエミッターとベースエミッターのマージへの改善が複数行われました。安定性が全般的に向上しました。
- スタック内でモジュールをドラッグアンドドロップで上下に移動することができるようになりました。継承したモジュールは移動することができません。移動できるようにするとマージが複雑になるからです。
- スタック内のモジュールの有効、無効を切り替えることができるようになりました。これは継承でも使用できます。
- シーケンサーとブループリントでのナイアガラユーザーネームスペース変数の設定サポートが追加されました。
- パラメータをカスタムの HLSL エクスプレッション、ダイナミックインプット(グラフスニペット)、他の変数へのリンク、値指定で駆動することができます。
- オプションとして、パーティクルは Persistent ID を持つことができます。このIDはエミッター内でユニークであることが保証されます。
- 各タイプの複数のレンダラーをエミッターに適用することが可能です。各インスタンスで、特定のパラメータがどこから値を取得するかを調整することが可能です。例えば、エミッターに2個のスプライト レンダラーを持たせて、1つのスプライトレンダラーはパーティクルの位置から自身の位置を決定し、もう一つはパーティクルのオフセット位置から自身の位置を決定する、ということも実現できます。
- Niagara Extras プラグインは各パーティクルの様々なパラメータをダイアログ状の画面に表示できるデバッグマテリアルも含んでいます。
- Houdini はナイアガラへのシンプルな CSV インポーターを提供しました。GDC 2018 のデモコンテンツを実現したものです。
- 自動化テストシステムにナイアガラの多様な機能テストが追加されました。
ユーザーインターフェースの更新
複雑なエフェクトも直感的に作成できるようにナイアガラのインターフェースはデザインされています。全体的にはスタックという形でスクリプトのロジックをまとめています。スタックの内部には、エフェクトの時間経過による変化をコントロールする Timeline、エフェクトで使用している変数に簡単にアクセスできる Parameters Panel、そしてエフェクト実行中に情報を確認して反応することを可能にする Attribute Spreadsheet があります。
新しいモジュール
すべてのナイアガラのモジュールは、ゲームでのエフェクト制作で一般的に使用される挙動をサポートするために一貫性のあるコーディング標準に従って更新されたもの、もしくは書き直されたものです。 C++ での UProperty でのオプションを模倣するように、新しい UI 機能がナイアガラスタックにも追加されています。他の変数の状態によって、変数表示の有効/無効の切り替えが可能です。
GPU シミュレーション
ナイアガラは現在のところ、DX11、PS4、Xbox One、OpenGL (ES3.1)、Metal プラットフォームでGPU シミュレーションをサポートしています。Vulkan と Switch プラットフォームでも将来のリリースにおいてGPUシミュレーションをサポートする計画があります。GPU シミュレーションの現在の制限事項と既知の問題は以下になります。
- ナイアガラを完全にサポートするには GPU からのデータ読み戻し機能が必要です。現時点では DX11 と PS4 のレンダリングインターフェースのみがこの機能をサポートしています。OpenGL と Metal では開発中です。
- コリジョン、カーブ、Curl ノイズフィールドが GPU でサポートされています。メッシュ、スキン メッシュ、スプラインコンポーネント、さらに特化したデータインターフェースはまだサポートされていません。UNiagaraDataInterfaces とインタラクトする GPU シェーダー向け API も再デザインされました。
- パーティクルからのスプライトとインスタンス化スタティックメッシュレンダリングが GPU シミュレーションでサポートされています。現在のところ、パーティクルからのライト生成とリボン生成は GPU では機能しません。
- イベントは CPU のみで機能し、アンリアル エンジン 4.20 以降に大幅な変更が行われる見込みです。
CPU シミュレーション&コンパイル
ナイアガラは現在のところ、PC、PS4、Xbox One、OpenGL (ES3.1)、Metal プラットフォームでCPU シミュレーションをサポートしています。現時点では Vulkan と Switch はサポートされていません。
- CPU バーチャルマシン(VM) は コンテンツ の コンパイル を バックグラウンドスレッド で DDC に対して行います。これによって コンパイルスピード と チーム の効率性が大幅に向上しました。最終で大幅な VM 最適化にはまだ スレッドセーフ ではない ライブラリ に依存している ShaderCompileWorker での開発が必要です。コンパイル依存関係については モジュール間で正しくトラッキングされています。スタックで再コンパイルが必要な部分がどこかを明確に判定します。
- CPU での物理シミュレーションは正しく摩擦と反発(弾力性)に対して物理マテリアルの値をモデルとして使用するようになったはずです。
- エミッターは ワーカースレッドで並行してシミュレートされるようになりました。
新規:デジタルヒューマンの改善
エピック ゲームズでのデジタルヒューマンを開発しようというキャラクタ技術の研究は、 Photorealistic Character の胸像からはじまりました。それ以来、リアルで実在するような説得力を持つキャラクタを実現するために数多くのレンダリングの改善が行われてきました。
キャラクタを開発する間に、以下の肌、目、ライティング、サブサーフェス スキャタリングのレンダリング改善が行われました。- Double Beckman Dual Lobe メソッドを使用した新しいスペキュラモデルの追加。
- サブサーフェスプロファイルでの Backscatter を使用した Light Transmission。
- Boundary Bleed 色を使用して改善したサブサーフェススキャタリングのコンタクトシャドウ。
- ポストプロセス マテリアルによる、短距離の動的グローバルイルミネーション。
- 虹彩に分離したノーマル マップを適用することによるディティールの増加。
詳細については、Digital Humans のページをご覧ください。
新規:長方形型エリアライト
長方形型エリアライトによって、頭上の蛍光灯、テレビ画面、照明つきサインなどの大きさのある光源を含んだリアルなライティング設定を実現することができます。長方形型エリアライトは[モード]パネルに他のライト種類と共に存在しています。
- 現時点ではディファード レンダラのみでサポートされています。
- 光源のエリアをコントロールするソースの幅と高さ設定がある以外は、ほぼポイントライトと同様に振舞います。
- 静的、固定の可動性のシャドウイングは、可動動的シャドウイングに設定したエリアライトソースと同様に機能します。現在のところ、大きさを持たないポイントライトと同様の挙動です。
パフォーマンスの考慮事項。
- 全般的にポイントライト、スポットライトより負荷が高いです。特に可動でシャドウをキャストする時のコストが主要なものになります。シャドウイングのコストは一般的に同程度です。
- Stationary light (固定ライト)可動性、またはシャドウキャストをしないライトは、使用プラットフォームによっては、コストスケーリングでコストが2倍になります。静的ライトの場合は、この負荷はありません。
新規:Mixed Reality キャプチャ (ベータ)
現実世界のプレイヤーをバーチャルゲーム空間にコンポジットすることを簡単にするMixed Reality キャプチャ機能を使って、Mixed Reality アプリケーションで魅力的な観戦体験を作り上げましょう!
ベータのMixed Reality Captureサポートには主要コンポーネントが3個あります。ビデオ入力、キャリブレーション、そしてゲーム内コンポジットです。現実世界のグリーンスクリーンで撮影したビデオをアンリアル エンジンに取り込むことを可能にする、サポートされているウェブカメラとHDMIキャプチャデバイスのリストを用意しています。Viveトラッカーなどのトラッキングデバイスがあれば、現実のカメラの位置とゲーム内のカメラの位置を一致させて、よりダイナミックで面白いショットを作成できます。セットアップとキャリブレーションはスタンドアロンで存在するツールで行うため、様々なアンリアル エンジン 4 タイトル間で設定を再利用できます。一度撮影場所のセットアップができれば、すべてのアプリケーションで使うことができます。
ベータの間に、システムを改善していく上でフィードバックをいただきたいと考えています。Mixed Reality Captureのセットアップに関する詳細は Mixed Reality Development ドキュメント をご覧ください。
新規: nDisplay 柔軟なマルチディスプレイレンダリング
新しい nDisplay システムを使って、巨大なビジュアライゼーションインスタレーションのビデオウォールを苦労せずに制作しましょう!好きな数のアンリアル エンジンインスタンスを自動で起動することができます。それぞれのインスタンスは、結果が同じに決定されるコンテンツ及びフレームも正確な時間同期で堅固に結びついています。インスタンスは任意数のホストコンピュータにに分散させることが可能で、各インスタンスがプロジェクタ、もしくはモニタを駆動します。アクティブ、パッシブステレオスコピックレンダリングを使って3Dシーンへのビューワーの没入感を増強し、ビルトインの VRPN サポートでモバイル VR コントローラーからシステムを動かしましょう。
詳細についてはドキュメントをご覧ください。
新規:Submixオーディオ録音
新しいオーディオエンジンに、エンジンアウトプット、もしくは個々のSubmixアウトプットを *.wavファイル、もしくはサウンドウェーブアセットとして録音する機能を追加しました。
Submix アウトプットをサウンドウェーブアセットに出力
Submix アウトプットを *.wav に出力
新規:スケルタル メッシュ LOD 設定の共有
新しい LOD Settings アセットを使用して、一度設定したLOD設定を複数のスケルタルメッシュアセットで共有しましょう!スケルタルメッシュの [アセットの詳細] パネルの [LOD Settings] で、使用する LOD Settings アセットを選択することができるようになりました。現在の設定から新しいアセットを生成することも可能です。
詳細は、スケルタルメッシュ アセットの詳細 のSharing LOD Settings セクションをご覧ください。
Blutility を 使ってブループリントからも LOD Setting の割り当て、生成が可能です。
新規:GeomCache のストリーミングと Alembic インポーターの改善(実験的機能)
ジオメトリキャッシュシステムに、安定性とパフォーマンスの改善を続けています。
- 個々の頂点アニメーションフレームが、Huffman エンコードに基づく intra-frame コーデックで圧縮されるようになりました。圧縮データはディスクからストリーミングされます。低いメモリオーバーヘッドでより長いシーケンスの再生が可能になります。新しい実装はまだ実験的機能で実制作での使用には適していません
- Alembic インポーターはすべてのフレームを一括で読み込むのではなく、各フレームを反復して読み込むように変更されました。 これによってPCAパイプライン及び全般的な安定性とスピードが向上したはずです。
新規:アクタとコンテンツ ブラウザコンテキスト メニューのスクリプト拡張
コードを一行も書かずに簡単にコンテキストツールやワークフローを助けるツールを作りましょう。ブループリントユーティリティ(Blutilities) を使ってアクタやブラウザのコンテントアセットのコンテキスト メニューを拡張できるようになりました。
- Create a new Blutility using one of the new parent classes - AssetActionUtility (コンテンツブラウザの拡張の場合)もしくは ActorActionUtility (アクタの拡張の場合) を親クラスにした新しい Blutility を作成します。
- GetSupportedClass 関数で、このアクションが適用できるアクタ種類やアセット種類を指定できます。
- 返り値のないイベント(もしくは関数)に実行したいロジックを追加して、[Call In Editor] に設定すると、コンテキストメニューに表示されます。またイベントがトリガーされた際にパラメータを入力するためのポップアップダイアログが表示されるように定義が可能です。
新規:アニメーション リターゲット マネージャーの改善
アニメーション リターゲット マネージャーでマッピングデータの保存と読み込みがサポートされ、複数メッシュでマッピングデータの保存と再利用が可能になりました。さらにこの機能によって、異なるアニメーション向けに複数のリグデータを簡単に保存して、使いまわすことも可能になりました。
詳細はRetarget Managerのページをご覧ください。
新規:RigidBody Anim Node の改善
シミュレーションをより安定させる [Local Space] シミュレーションを使用している場合にも、スケルタルメッシュコンポーネントをワールド内で移動した際にシミュレーションされたボディが動くようになりました。コンポーネントのワールド空間でのリニア速度と加速度を見てその内容を(スケーリングとクランプを適用して)ローカル空間のシミュレーションに適用するいくつかのオプションを追加しました。
また指定した好きなジョイントをシミュレーションのベースにするオプションと、物理を簡単にリセットする方法の追加を行いました。
新規:クロスの改善
クロスシミュレーションで物理アセットの先細りしたカプセル(Tapered Capsule)のサポートが追加されました。
注意: これは剛体シミュレーションのコリジョンではサポートされていません。
また、スケルタルメッシュの頂点カラーを選択したクロスパラメータマスクにコピーできるようになりました。
新規:ガーベジ コレクションの改善
ガーベジ コレクションのパフォーマンスに最適化を行いました。13倍高速化した処理もあります!特に、以下の改善を行いました。
- Mark フェーズを最適化し、マルチスレッド化しました。複数コアを持つマシンにおいて、到達できないオブジェクトをマーキングする処理は約 500,000 オブジェクトのケースで 8 ms から 0.6 ms に処理時間が削減されました。
- BeginDestroy フェーズ (オブジェクトの unhash 化) は複数フレームに渡って実行されるようになり、1フレームで 2 ms 使用するということはなくなりました。オブジェクトの unhash 化のコストは Mark フェーズと到達性分析と同じフレームに含まれなくなりました。
- 開発ビルドで実行するガーベジ コレクション 予測検証は、リファレンス収集と同じマルチスレッドコードを使用するようになりました。結果として、開発ビルドのガーベジ コレクションの実行時間が改善しているはずです。エピック内のテストでは約 500,000 オブジェクトのサンプルでのタイミング計測で、320 ms から 80 ms 以下に削減されました。
新規:Visual Studio 2017
UE4 は Visual Stduio 2017 コンパイラを使用するようになりました。エンジンはデフォルトで Visual Studio 2017 向けのプロジェクトファイルを生成します。Visual Studio 2015 も引き続きサポートしていますが、いくつかの設定が必要になります。追加して、Windows 10 SDKのサポートを追加しました。
注意:Visual Studio 2017 は複数コンパイラバージョンのサイドバイサイドのインストールをサポートしています。
ハードウェアとソフトウェアの仕様をご覧ください.
新規:GitHubでの開発ストリームの公開
アンリアル エンジンの開発ストリームの内容がGitHubでライブ更新されるようになりました。最新の開発用のコードが必要な場合は、これらのストリームを直接Pullすることも可能です。これまでのように開発チームがMainブランチへ変更のマージを行うまで待つ必要がなくなりました。注意してください。これらのストリームは更新され続けています。ランチャーでのリリースやMainブランチとは違い、QAチームによる確認は行われていません。
詳しくはブログ記事を参照してください。
新規:UMGセーフゾーンの改善
UMGやプレイインエディタ(PIE)で設定した画面サイズは、デバイスプロファイルとリンクするようになりました。モバイル コンテンツ スケール係数(Mobile Content Scale Factor)も考慮されるため、選択したデバイス画面サイズに基づいて最終的な解像度とDPIスケールが決定されます。
UMGのセーフゾーンワークフローで以下の改善が行われました。
- 1 以下の値を設定してテレビやモニタの画面サイズをテストする際にタイトルセーフゾーンのデバッグのためにセーフゾーンのプレビューが自動的に有効になるようになりました。
- r.MobileContentScaleFactor コマンドを使用することで、UMG プレビューと PIE モードで携帯電話やタブレットの解像度にスケールが行えます。
- 画面スクリーンの一部分にアクセスができないiPhoneXのようなデバイスで、不均等なセーフゾーンがサポートされるようになりました。
- セーフゾーン、スケールボックス、コモンボーダーウィジェットは、不均等なセーフゾーンとUMGデザイナーサイズに正しく反応します。
- UMGは、選択されたデバイス、画面サイズ、均一スケール係数を表示するようになり、 デザイナーグラフから簡単に参考にできます。
- r.MobileContentScaleFactor を使用して、UMGとPIEモードの携帯電話とタブレット解像度のスケーリングが可能。
詳細については、UMG Safe Zones のページをご覧ください。
新規:マテリアルのカーブアトラス
マテリアルはカーブアトラスアセットにリニアカラーカーブを保存しアクセスできるようになりました。追加のサポートがブループリントで提供されています。カーブアトラスは以前と同じリニアカーブカラーを使用していますが、アトラスで指定した数だけリニアカラーカーブを持つことができるということが違います。
新しいカーブアトラスを追加するには、コンテンツブラウザから [新規追加] > [その他] で Curve Atlas を選択します。
カーブアセットエディタを開くと、色相、彩度、輝度、Vibrance、アルファクランプの個々のカーブを調整できます。さらに、コンテンツブラウザのプレビューサムネイルにはカーブによって作られたグラデーションが表示されます。
詳細については Curve Atlases in Materials のページをご覧ください。
新規:メッシュデスクリプションメッシュフォーマット
UE4の高レベル中間フォーマットをエンジン内のすべてのメッシュアセットタイプを表現可能な新しいものに更新しようとしています。これは段階的なプロセスで、ワークフローを改善し、素晴らしい新機能の提供を可能にしていくものです。
新しいメッシュフォーマットへの移行で目指している内容は以下になります:
- すべてのメッシュ(スタティック、スケルタル、そしてテレインやBSPといったメッシュ類似オブジェクトも含む可能性あり)が同一の内部表現と、相互交換性をある程度保持すること
- ほとんどの UE4 ジオメトリツールが、このジオメトリフォーマットをもとにしているすべての種類のメッシュで機能すること
- この新しいフォーマットを使用しているメッシュの情報の確認や変更をスタンダートな APIで行えること。ランタイム、ネイティブ、スクリプトでの変更を可能にし、プロシージャル生成コンテントの豊富な可能性への扉を開きます。
- 四角ポリゴンやエッジのハードネス情報といった高レベルのメッシュ表現情報を保持しながら直接メッシュをこのフォーマットにインポートできること。現在のところ、こうした情報はスタティック、スケルタルメッシュのインポート時に失われています。
- 新しいメッシュフォーマットは内部的に構造を持ち、非常に複雑なメッシュであっても変更操作をリアルタイムで行えるようにしています。これが開発中のメッシュ編集機能の土台になっています。スクリプト機能も将来のリリースで開発される見込みです。
このリリースでは、スタティックメッシュだけが新しいメッシュフォーマットを使用するように変換されます。ユーザーにとっては通常のワークフローへの違いを感じることはないでしょう。アセット自体も変わりません。現在のところ、新しいデータが古いフォーマットから自動的に作成されてDDCにキャッシュされます。
新規:カラー ピッカーで保存した色へのラベル追加
テーマバーやテーマメニューで保存した色に、区別しやすいようにラベルを追加できるようになりました!保存した色のスウォッチを右クリックするだけで簡単にラベルを追加し、保存した色に名前を入力できます。
詳細については、Color Picker のページをご覧ください。
新規:コンテンツ ブラウザへの最近使用した項目フィルタ追加
コンテンツ ブラウザで最近使用したアセットを簡単に見つけましょう。新しく最近使用した項目フィルタが追加されました。このフィルタは最近オープンした20のアセットの一覧を表示します。
[フィルタ] リストの [その他のフィルタ] にRecently Opened(最近使用した項目)フィルタが追加されています。表示される最近使用した項目の数は、 [エディタの環境設定] > [コンテンツブラウザ] の Number of Assets to Keep in the Recently Opened Filter で変更できます。
詳細については コンテンツ ブラウザフィルター のページをご覧ください。
新規:Shotgunインテグレーション(ベータ)
アンリアル エンジン 4向けの新しいShotgunインテグレーションを使用して、制作パイプラインを効率化しましょう!
以下の機能があります。
- Shotgunランチャーにアンリアル エディタを追加し、Shotgunプロジェクトに合わせた正しいバージョンのアンリアル エディタをアーティストが確実に実行できるようにします。
- アンリアル エディタのインターフェースからShotgunパネルを開いて、作業をしながらShotgunプロジェクトの最新状況を確認することができます。
- Shotgun loaderへのフックで、アセットのアンリアル プロジェクトへの追加、追加されるアセットのコンテンツブラウザでの位置のコントロールを簡単に行うことができます。
- さらにレベルのアクタやコンテンツブラウザのアセットの右クリックメニューに Shotgun の操作コマンドも追加されます。
注意:GitHubでインテグレーションをシェアできるように詳細を調整中です。最新情報とドキュメントについては今しばらくお待ち下さい!
新規:エディタスクリプト機能と自動化ライブラリ
エディタスクリプト機能プラグインをすべてのアンリアル エンジンユーザーが利用可能になりました。このプラグインはアンリアル エディタのスクリプト機能と自動化に対するシンプルなインタフェースを提供します。コンテンツブラウザでのアセット作業、レベル内のアクタに対する作業、スタティックメッシュアセットのプロパティの編集などが可能です。
詳細は Scripting and Automating the Editor をご覧ください。
新規:FBX からのアセットメタデータのインポート
FBXファイルをアンリアルにインポートする際に、ファイルに保存された任意の FbxProperty データもインポートされるようになります。このメタデータには、ブループリントやアンリアルエディタで実行する Python スクリプトからアクセスできます。使用しているコンテンツ作成ツールからインポートしたアセットの情報を使って、独自のアセット管理パイプラインを構築する助けになります。
詳細は FBXアセットメタデータパイプライン をご覧ください。
新規:スタティックメッシュの LOD (Level of Detail) とコリジョンについてのスクリプトアクセスの改善
ブループリントやアンリアルエディタで実行する Python スクリプトからスタティックメッシュアセットのより多くのプロパティが変更できるようになりました。これによってスタティックメッシュエディタが提供しているツールの一部を自動化することが可能になります。以下のようなことが可能です。
- カメラからジオメトリの距離が増えるにつれてより詳細が少ないジオメトリバージョンに切り替えることでレンダリングパフォーマンスをあげる、モデルの LOD モデルを自動で生成して設定することができるようになります。詳細は Creating Levels of Detail in Blueprints and Python をご覧ください。
- 物理シミュレーションでスタティックメッシュアセットを表現するものとして使用されるコリジョンメッシュを自動生成することができるようになります。詳細は Setting up Collisions with Static Meshes in Blueprints and Python をご覧ください。
新規:ブループリントブックマーク
ブループリントブックマーク機能はブループリントエディタ中の好きな関数グラフでの名前をつけたブックマークの作成を可能にします。作成されたブックマークは新しい UI ウィンドウに一覧表示され、クリックするとビューポート(及び表示しているアクティブタブ)に位置とズームレベルを復元することができます。作成したブックマークに加えて、別のリストからコメントを選択することで、ブループリント中の選択したコメントノードにジャンプすることも可能です。ブックマークはマシンにローカルで保存されるので、ブループリント自体には影響しません。コンテンツを同期しても、他のユーザーのブックマークによって自分のブックマークが上書きされることはありません。
新規:ブループリントウォッチウィンドウ
ブループリントウォッチウィンドウ はウォッチしたい変数やノードへのアクセスを可能にしてデバックを高速化します。複数のブループリントに渡ってウォッチすることも可能です。エディタで開いたすべてのブループリントからのデータ、現在のコールスタックの一部のデータが1つのリストにまとめられて監視することができ、変数や関数アウトプットを調査することができます。ブループリント間のジャンプも簡単です。「Node Name」カラムのノード名をクリックするとすべてのブループリントからそのノードにジャンプし、「Object Name」から選択すると、関連したオブジェクトのインスタンスが選択されます。 配列、セット、マップ、その他のデータ構造は展開が可能で、どのデータでも掘り下げて確認ができます。
新規:ナビゲーションシステムコードがモジュールに移動されました
ナビゲーション システムに関連するコードの大部分ががエンジン モジュールから新しいナビゲーション システム モジュールに移動されました。ナビゲーション システムの機能を使用しているゲーム固有のコードで更新が必要な場合があるかもしれません。
プロジェクトのソースコードを解析して更新が必要かもしれない行番号を指摘する Python (3.5) スクリプト が用意されています。このスクリプトで変更自体を実行することも可能ですが、この機能は注意しバージョンコントロールと併用して使用してください。スクリプトで指定できるオプションについてはファイルの最初に記述されています。
プロジェクトの更新で必要な変更点についての詳細についてはProgramming Upgrade Notesセクションをご覧ください。
新規:モバイルスペキュラライティングモデルの改善
モバイルスペキュラ(鏡面反射色)レスポンスはデフォルトで GGX ライティングモデルを使用するように変更されました。これによるモバイルのスペキュラの品質が改善し、より SM5 に近い見た目になりますが、シェーダー処理時間へのコストが多少追加されます。
1 - 4.20 のデフォルト GGX スペキュラ; 2 - 4.19 のSpherical Gaussian スペキュラ
過去の Spherical Gaussian スペキュラ モデルもプロジェクト設定の [Rendering] > [Mobile] の [Use legacy shading mode] 設定から引き続き使用が可能です。
新規:モバイルスカイライト反射
モバイルレンダラは関連したリフレクションキャプチャがない場合、スカイライトキューブマップをスペキュラ反射に使用するようになりました。
1 - モバイル、リフレクションキャプチャなし ; 2 - PC、リフレクションキャプチャなし
新規:レプリケーション ドライバー / レプリケーション グラフ
レプリケーション グラフ プラグインは 多数のアクタと多数のプレイヤーを持つゲーム向けに最適化されたレプリケーションシステムを提供します。データと計算を集中管理する一連のカスタムノードを構築することでこのシステムは機能します。T複数フレームにわたってこれらのノードは持続して存在し、クライアント接続間で共有が可能です。冗長なCPU計算を削減し、ノードベースのゲーム固有のアップデートルールに従ってアクタをグループ化することができます。APIに変更を行う可能性があるため、このプラグインは 4.20では実験的段階と考えてください。ただ、このシステムはフォートナイト バトルロイヤルで使用されているもので、完全にサポートされた機能になる見込みです。
新規:Steam Authentication
Steam Authentication が追加されました!ゲームでSteamのAuthentication APIと繋がるパケットハンドラーを追加できるようになりました。サーバーのアドバタイズ、 VAC とパブリッシャーによるBANの処理、クライアントの妥当性の検証が可能です。有効にすると、サーバーに参加するクライアントは、ゲームプレイを許可される前にSteamの認証を必要とします。デフォルトでは、認証に失敗したクライアントはサーバーからキックされます。
新規:シーケンサーのフレーム正確性の改善
シーケンサーはすべての内部時間データを整数で保持するようになりました。フレーム正確性が必要とされる場面に対して柔軟なサポートを可能にします。キー、セクション範囲、その他のデータは常にユーザが指定できるシーケンスレゾリューションにロックされます。使用するケースの必要性にあわせて、精密にも、粗いものにも設定できます。レゾリューションを非常に高くすると、キー配置とサブフレームの忠実性を高めますが、全体のシーケンス範囲が減少することになります。
主な更新内容
- シーケンサーでの時間カーソルは、現在評価されているTickの範囲を示すブロックして表現されるようになりました。これにより、そのフレームで評価されているキー、評価されないキーの区別が明確になりました。
- [Force Fixed Frame Interval] 再生は [Frame Locked] として変更されました。エンジンの最大 FPS をシーケンスの表示レートに設定し、時間を整数フレームにロックします。(サブフレームの補間はありません)
- フレーム正確性を考慮しない場面ではサブフレーム評価は引き続き完全にサポートされます。(UMGアニメーションなど)
- エンジンクロック(ワールドポーズをサポート)、オーディオクロック、プラットフォームクロック、といった様々な時間ソースがランタイム評価でサポートされました。
- UI を Non Drop Frame (NDF) タイムコードと Drop Frame (DF) タイムコードで表示できるようになりました。NDF タイムコードはすべてのフレームレートで使用できます。直接フレーム数を、時間、分、秒と残りフレームに変換します。DF タイムコードは NTSC レート (23.976, 29.97, 59.94) でのみサポートされます。表示フォーマットの切り替えは Ctrl + T ショートカット、もしくはUI メニューの [framerate] から行えます。
詳細は新しい Sequencer Time Refactor Notes のページをご覧ください。
新規:シーケンサーのメディアトラック
シーケンサーにメディアからのソースを再生する新しいトラック種類が追加されました。オーディオトラックに似ていますが、これはムービーを再生するものです。メディアソースアセットをトラックビューにドラッグ & ドロップすることでも、[Add Track] から [Media Track] を選択することでも作成が可能です。この機能が一番よく機能するのは、現在のところ画像シーケンス、特にEXRを使用した場合です。メディアトラックの画像シーケンスはレンダリング出力のフレームに正確に同期します。
詳細は Using Media Tracks のページをご覧ください。
新規:シーケンサーカーブ エディタ と カーブ評価の追加機能
シーケンサーの カーブ エディタ と カーブ評価 にも機能が追加されています。
floatカーブでも Weighted tangent がサポートされるようになりました。
シーケンサーカーブ エディタでのウェイトカーブの使用
回転を変化させる際に、オイラー角を連続させるサポートを追加しました。オイラー角の-180度から180度の制限がなくなりました。アニメーションのフリップを防ぐために必要な変化です。
トラックのプロパティの3Dトランスフォームセクションでクォータニオン回転をオンにすることができました。2つの回転角度の間をクォータニオン補間でスムーズに補間することが可能になります。これは以前マチネに存在した機能と類似しています。
新規:シーケンサーでのAnimインスタンスの変数アニメーション
Animインスタンス の変数をpossessable経由でアニメーションすることが可能になります。アニメーションブループリント変数、関数、その他コンテンツの直接コントロールができるようになりました。Animインスタンスのバインディングをシーケンサーに追加するには、スケルタルアニメーションコンポーネントの [+トラック] ボタンから名前を探します。シネマティクスに公開されている変数はトラックでの選択に表示されます。
詳細は Controlling Anim Instances with Sequencer のページをご覧ください。
新規:シーケンサーでの Final Cut Pro 7 XML インポート/エクスポートサポート
シーケンサームービーシーンのデータの Final Cut Pro 7 XML フォーマットでのエクスポート、インポートが可能になりました。FCP 7 XML 形式をサポートする Adobe Premiere Pro などの編集ソフトウェア間のデータの行き来にも使用できます。編集ソフトウェアでショットのトリムやオフセットを行って、インポート時にシーケンサーに自動的にマッピングすることができます。
注意:現時点ではオーディオはサポートされていません。
新規:シーケンス レコーダーの改善
シーケンス レコーダーはパーシスタント レベルに保存されるプロファイルシステムをサポートするようになりました。レコーディングプロファイルによって、どのアクタを記録するかとその設定、そして記録したデータを保存する出力パスを保存できます。シーケンス レコーダーは選択された各アクタについて複数テイクの記録もサポートするようになりました。
詳細は Sequence Recorder のページをご覧ください。
新規:シーケンサートラックのユーザビリティの改善
シーケンサーのトラックのユーザビリティについていくつかの改善が行われました。トラック、アクタ、フォルダの順番を並べ替えることができるようになりました。イベントトラックの名前がイベントキーフレームの横に表示されます。セクションのサイズをソースの長さに合わせて変更できるようになりました。個々のトランスフォームチャンネルをマスクできるようになりました。ブレンドポースからポーズアセットを作成できるようになりました。他にも改善があります。
詳細は新しい Working with Tracks in Sequencer のページをご覧ください。
新規:インスタンス化ステレオレンダリングでの半透明パスサポート
Robo Recallで行ったインスタンス化ステレオレンダリング(ISR)パスでの改善を、エンジンの他の機能とも動くように改良しました。 アンリアル エンジン 4.20 ではインスタンス化ステレオレンダリングを使って半透明レンダリングパスを実行できるようになり、半透明を多く使ったシーンでのCPUコストを大幅に削減することができます。コンテンツの変更は必要ありません。プロジェクト設定でインスタンス化ステレオを有効にすれば、この新しい改善を自動的に利用できます。
新規:Magic Leap One™ ベータサポート
GDCにおいて、 Magic Leap社の個人向け空間コンピューティングプラットフォーム体験の先行開発を可能にするソフトウェアツールキットである Magic Leap One™: Creator Edition のベータサポートを発表しました。これは2社間のパートナーシップの一部です。アンリアル エンジン 4.20 では完全にサポートされたアンリアル エンジンリリースを使って Magic Leap One™ 向けの開発が可能です。
アンリアル エンジン 4 の Magic Leap One ではカメラコントロール、ワールドメッシング、モーションコントローラ、フォワードとディファードレンダリングといったビルトインのフレームワークを使用します。さらにアイトラッキングとジェスチャといった機能にもさらに柔軟なサポートを追加しました。
開発者は以下のサイトから Magic Leap ソフトウェア開発キットとシミュレーターをダウンロード可能です。 developer.magicleap.comハードウェアにアクセスできるデベロッパーは、プレイ イン エディタでのゼロイテレーションワークフローに加えて、アンリアル エンジン 4.20 でデプロイして実機での実行も可能です。
新規:Apple ARKit 2.0 サポート
Apple の ARKit 2.0 へのサポートを追加しました。改善したトラッキング品質、垂直平面の検出、2D 画像検出、 3D オブジェクト検出、パーシスタント AR体験と Shared AR体験が含まれています。こうした新機能へのサポートにより、ARオブジェクトの様々な平面上への配置、顔の位置と向きの検出、2D 画像を認識して実体化、3D オブジェクトの検知、これまでにない協調型 AR 体験の実現が可能になります。
新規:Google ARCore 1.2 サポート
垂直平面の検出、Augmented Image、Cloud Anchorなどのサポートを含むGoogle’s ARCore 1.2 のサポートを追加しました。こうした新機能へのサポートにより、ARオブジェクトの様々な平面上への配置、2D 画像を認識して実体化、これまでにない協調型 AR 体験の実現が可能になります。
新規:プラットフォームの SDK をアップグレード
アンリアル エンジン 4 はリリースの際、プラットフォームのパートナーからリリースされる最新の SDK に対応するようにアップデートしています。
- ビルドファームによるコンパイルの対象である IDE のバージョン
- Visual Studio:Visual Studio 2017 v15.6.3ツールチェーン(14.13.26128) と Windows10SDK (10.0.12699.0)
- 最小サポートバージョン
- Visual Studio 2017 v15.6
- Visual Studio 2015 Update 3
- 最小サポートバージョン
- Xcode:Xcode 9.4
- Visual Studio:Visual Studio 2017 v15.6.3ツールチェーン(14.13.26128) と Windows10SDK (10.0.12699.0)
- Android:
- NDK 12b (リリース前に新しい CodeWorks for Android 1r6u1 のインストーラーが、まだ NDK 12b のこれまでの CodeWorks for Android 1R5 と置き換わります。)
- HTML5:Emscripten 1.37.19
- LInux: v11_clang-5.0.0-centos7
- Lumin:0.12.0
- Steam:1.39
- SteamVR:1.39
- Oculus Runtime:1.25
- Switch:
- SDK 4.5.0 + 任意NEX 4.2.1 (Firmware 4.1.0-1.0)
- SDK 5.3.0 + 任意NEX 4.4.2 (Firmware 5.0.0-4.0)
- サポートされているIDE:VS 2015 / 2017
- PS4:
- 5.508.031
- ファームウェアバージョン 5.530.011
- サポートされているIDE:Visual Studio 2015、 Visual Studio 2017
- Xbox One (XB1, XB1-S, XB!-X):
- XDK:April 2018
- ファームウェアバージョン:April 2018 (version 10.0.17133.2020)
- サポートされているIDE:Visual Studio 2017
- macOS:SDK 10.13
- iOS:SDK 11
- tvOS:SDK 11