2015年2月24日

Unreal Engine 4.7 リリース!

作成 Brandon Sieprawski

Unreal Engine 4.7 は、これまでで最も大きな変更のあるリリースになります。大きなワールドでの膨大な数のインスタンスオブジェクトをレンダリングする能力や、葉や枝葉の美しいレンダリング、HDRテクスチャのサポート、エディタ内でのアニメーションの編集など多数の最適化と改良が加えられています。

多くの熱望されていた機能が追加されました。新規のアクタをコンポーネントを使って、レベルの中で組み立てることができ、ブループリントによるビジュアルスクリプトやC++を使って、自分でカスタムコンポーネントを作ることもできます! スクリプト作成に関しては、ブループリントエディタのUIが再設計され、統合されたレイアウトになりました。またプロジェクトのコンテンツのインポートは容易ではありませんでしたが、このバージョンのUnrealのエディタは新しいアセットファイルを検出して自動的にインポートするようになりました!

HTML5プラットフォーム+WebGLに対応しました。ワンクリックでゲームを互換性のあるブラウザ上で実行できます! またMac上でAndroidデバイスにビルド、クック、デプロイすることもできます。仮想現実(VR)の制作者のために、新規に追加された「VRプレビュー」機能では、エディタからそのまま仮想世界に没入できます。さらに、コードベースのプロジェクトをビルドすれば、 Leap Motion サポートも使うことができます。究極的には学習やデバッグを容易にするために、すべてのリリース中に完全なC++によるエンジンのソースコードが提供されています!

このリリースには、Unreal Engineのすばらしい開発者コミュニティから提供された、38の大きな変更が含まれています。エピックはコミュニティメンバーの Sébastien Rombauts氏 には、特に感謝しています。彼から提供されたGitソースコントロールプラグインが、Unreal Engineのこのリリースに追加されています。すばらしい出来栄えです! 次に挙げるコントリビューターのみなさんに感謝します:

Artem V. Navrotskiy (bozaro), ArneBezuijen, Black Phoenix (PheonixBlack), codetackler, Daniel Zeligman (dzeligman), Derek van Vliet (derekvanvliet), Fazouane Marouane (fazouane-marouane), Jesus Fernandez (jsfdez), Lukasz Baran (iniside), Moritz Wundke (moritz-wundke), Michael Kösel (TheCodez), Michael Allar (Allar), Marat Radchenko (slonopotamus), Pedja Lubomirovic (3dluvr), Pierdek, Quadtree, Rama (EverNewJoy), Robert Wallis (robert-wallis), Rick Yorgason (Skrapion), Simon Taylor (simontaylor81), Stephen Whittle (stephenwhittle), Tobias Mollstam (mollstam), yaakuro

主要な新機能

リアルなフォーリッジのライティング

新しくなったフォーリッジ シェーディング モデルでは、草や葉、紙などの素材で光を透過させることができるようになりました。

Realistic Foliage Lighting

表面の反対側の拡散反射光は、シェーディングした側の 透過ライティング になります。

  • 透過ライティングは、後方散乱のためのビューに依存したローブを持つ、重なった拡散反射光を混ぜ合わせたものになります。
  • サブサーフェイスの色はこのライトにフィルタをかけるので、厚みの変化を表現するのにも使えます(例:葉脈)。
  • このシェーディングモデルに不透明度を使用すると、影はフォールオフする距離だけに影響することに注意してください。

大きなワールドのための枝葉のレンダリング

フォーリッジシステムは、広大で開かれた環境のサポートのために最適化されました!

Foliage Rendering for Large Worlds

このリリースでは、数百万の枝葉のインスタンスの管理やカリングには、階層的なシステムが使われています!また、LODが変わる時の悩ましいちらつきを取り除くために、一時的なフェードによりメッシュのLODが滑らかに遷移するようにしました!

ワールド内でのコンポーネントの編集

コンポーネントは、レベルの中で直接アクタに追加できるようになりました。コンポーネントの外で、ブループリントのクラスを先に作成することなく、新規アクタを組み立てることができるようになります。これは、レベル内でコンポーネントを試したり、新しいオブジェクトを組み立てたりするのに有効です。

In-World Component Editing

3Dのレベルでは、個別のコンポーネントの選択が可能になり、慣れ親しんだギズモを使ってどこでも移動したり、プロパティを編集したりすることができます。

Select Individual Components

何かいいものができたら、 「Blueprint / Add Script」 をクリックして、再利用可能なクラス として保存して、スクリプトの追加をしてください。これで、自動的にアクタをそのクラスのインスタンスに置き換えてくれます。

Blueprint / Add Script

空のアクタの置き換え

空のアクタ」 をレベルの中にドラッグ&ドロップすることができるようになりました!

Empty Actor

空のポーンとキャラクタもサポートされています。レベルの中におもしろいアクタを作リ上げるために、新しく追加されたワールド内でのコンポーネント編集機能も使えます。

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

ブループリントを使った自作コンポーネントタイプを作ってください!このコンポーネントは保存でき、他のアクタにも再利用できます!

Add Component (コンポーネントを追加)」 を選んで、一番上の 「New Blueprint Script Component… 」 をクリックしてください。これは、レベルの中のアクタに対して実行できます。任意の アクタクラスブループリント の内側から、またはコンテンツブラウザの 「New Blueprint…」 ウィンドウからでもできます。

Demo Recording (Network Replay Capture)

新規コンポーネントのための Parent Class (親クラス) を選んでください。「Scene Components」 は、アクタ内に 「3D座標」 を持っていますが、 「Actor Components」 は、スクリプトのロジックだけを持っています。

Choose Parent Class

楽しみなところまで来ました。新規コンポーネントのためのブループリントのスクリプトコードの記述です。この例では、 Tick イベントを使って、フレーム毎にコンポーネントの所有者(アクタ)をYaw(ヨー)軸周りに回転させています。アクタの周りを回転するので、このコンポーネントを 「Spinner」 と命名することにしましょう!

Writing Blueprint Script Code

これで、このコンポーネントをシーン内の任意のアクタにドロップできるようになり、ゲームが開始するとアクタは回転し始めます。やりました、再利用可能でモジュール化された機能ができました!

Drop The Component onto any actor

通常のアクタクラスのブループリントにもドロップすることができます。新規に作成されたコンポーネントは 「Add Component (コンポーネントを追加)」 メニュー (「Custom」 の下のカテゴリー) で見つけることができます。また他のアセットと同様に、コンテンツブラウザの中にもあります。

自動的なアセットのインポート

メッシュやサウンド、テクスチャのインポートは、今までは容易ではありませんでした。アートのソースファイルを、プロジェクトのContent フォルダの下に保存するだけで、エディタが自動的に新しいファイルをインポートしてくれる機能が、UE4で使えるようになりました!

Automatic Asset Importing

外部のアプリケーションでファイルを編集すると、それをエディタが検知して 自動的にコンテンツを再インポート してくれます! これでゲームコンテンツの開発サイクルが、より速くなることでしょう。

この機能はデフォルトになっていますが、エディタの Preferences (設定) から 「Loading & Saving (ロード&保存中)」 セクションの 「Monitor Content Directories」 を使って、変更することができます。

ブループリントエディタのUIのデザイン変更

ブループリントエディタは、より使い易くするために再設計されました! ワークフローのストリームラインを支援するために、3つのモードがすべて一つの画面に統合され、多くの改良が加えられました。

Redesigned Blueprint Editor UI

ビューポートやグラフビューなどのパネルを自由に再配置できるようになり、2つを同時に画面に表示することもできるようになりました!

My Blueprint (マイブループリント)」 ビューは、きれいでまばらに配置できるように改良され、新規の関数や変数の追加が容易になりました。

コンポーネントパネルでアクタの名前を選択すると (または、ツールバーで 「Class Defaults」 をクリックで) 、クラスのデフォルト値 が表示されるようになりました。ブループリントの設定を見るには、ツールバーの 「Class Settings (クラスの設定)」 ボタンをクリックしてください (以前は、 「Blueprint Props」 と呼ばれていたものです)。

HTMLとWebGKのサポート (Windowsのみ)

ランチャーから取得したバイナリツールを通して、ウェブブラウザ内でパッケージングと実行ができるようになりました。

HTML5 and WebGL Support

Emscripten SDK をインストールして、エディタとランチャーを再起動し、Launch ドロップダウンリストでウェブブラウザを選択してください!

Emscripten SDK

HTML5サポートの注意点:

  • FirefoxまたはSafari、64ビットの Chrome が開発には必要です (ビルドした作品は32ビットの Chrome でもきちんと動作します)。
  • 現在のところ、HTML5のサポートはWindowsのみです。Mac版は将来のリリースに含める予定で作業中です。
  • HTML5用のゲームの制作は、初めての場合は特に、プロジェクトのアセットとコードをウェブブラウザ用に最適化するのに時間がかかるかもしれません。

OpenEXR:ハイダイナミックレンジテクスチャ

2Dのハイダイナミックレンジ (HDR)テクスチャが、 OpenEXR ファイルからインポートできるようになりました。1チャンネル16ビット (約30ストップの露出) までのデータを持った画像が保存できるようになりました。

OpenEXR: High Dynamic Range Textures

(以前は、OpenEXRファイルからキューブマップテクスチャだけがインポートできました。)

Mac上でのAndroid開発

OS X 版 の Unreal Engine が、 Android 開発 を完全にサポートするようになりました!

Android Development on Mac

MacユーザーがAndroid向けにビルド、クック、パッケージングできるようになり、エディタやコマンドラインからAndroidデバイスにデプロイできるようになりました。

package Product

  • OS X用JavaAndroid SDK (Engine/Extras/Android 内の TADP installer を使ってインストールできます) が必要です。
  • インストール後、エディタを再起動するか、プロジェクト設定の Android SDK セクションでSDKのパスを設定してください。

完全なC++のソースコードとデバッグシンボル

ランチャーを使ってインストールすれば、 Unreal Engineには、 完全なエンジンの C++のソースコードデバッグシンボル が含まれています!

Full Engine C++ Source Code

これにより、 デバッグ中にシームレスにエンジンコードにステップイン でき、クラッシュした後、 完全な呼出履歴 を見ることができます。完全なエンジンのデバッグの力を得るために、もう自分でエンジンをコンパイルする必要はありません。

自分自身でエンジンを再コンパイルしたいなら、 GitHubへ行って、 必要なファイルを取得する必要があることに注意してください。

仮想現実でプレイする

新たに 「VR Preview (VRプレビュー)」 ボタンがエディタに追加されました。 Oculus Rift デバイスが接続されているなら、そのまま仮想現実の中でゲームをプレイできます。

Play in Virtual REality

「VR Preview」 をクリックすると、エディタウィンドウを最小化して、ゲームが直接 Oculus Rift デバイスに現れます。

Leap Motionプラグイン 「ベータ版」

UE4は、プラグインによる Leap Motion デバイス のサポートを始めました。これにより、Leapのハンド トラッキング テクノロジーを直接プロジェクトで使うことができます。APIはブループリントとコードの両方に現れ、任意のプロジェクトで、その技術を利用することができます。 

Leap Motion Plugin

プラグインの使用例としては、 Leap Motion のウェブサイト https://www.leapmotion.com をぜひご覧ください。現在は、このプラグインはGitHubにあるエンジンをビルドしたもののみで利用可能です。プラグインは直接Leapのウェブサイトからダウンロードできます。

コンテンツブラウザ内のC++クラス

コンテンツブラウザ内で、ゲームの C++ クラスがビジュアル になりました! 

C++ Classes in Content Browser

コンテンツブラウザからの 新規C++クラスの作成 が容易になりました! 自動的にコンパイルされ、エディタ内に表示されるようになりました。すぐに使えます!

New C++ Class

Visual Studio や Xcode で、C++クラスのアイコンをダブルクリックして、 直接ソースコードにジャンプ できるようになり、右クリックで選択したクラスを基底クラスにして新規クラスを作成することもできるようになりました。

モーフターゲットの誇張

モーフターゲットは、ポーズの誇張を許すことで、 100%より大きい 重み付けを可能になり、 0%未満 のインバースポーズができるようになりました。

Morph Target Exaggeration

機能パックとコンテンツパック

コンテンツブラウザを使って、ゲームに新規の 「機能」 と 「コンテンツ 」 をいつでも追加できるようになりました! パックにはコンテンツやブループリントクラス、C++クラスの、どんな組み合わせでも入れることができます。

Features Packs and Content Packs

既存のプロジェクトのすべては、機能パックとして利用可能になります。 First Person Feature Pack (1人称視点機能パック) をゲームに追加していて、後でVehicle Feature Pack (車の機能パック) を追加することができ、プロジェクトで両方の機能を使うことができます!

コンテンツブラウザで、 Add New から 「Add Feature or Content Pack… 」 をクリックするだけです。ファイルはプロジェクトに注入されます! 多くのパックには、組み込みチュートリアルも含まれています!

Add Feature Pack

Starter Content (スターターコンテンツ) でさえも、いつでもプロジェクトに追加できます。つまり、新しい 「 「Mobile Optimized」 Starter Content (モバイルに最適化されたスターターコンテンツ) パックも選択できます。

アニメーション編集システム

ペルソナアニメーションツール内で、 アニメーション編集 ができるようになりました!

Animation Editing System

タイムスライダー を動かして、ギズモを使っての選択や ボーンの移動と回転、 任意のフレームの キーの設定をしてください (ヒント:ショートカットは「‘S’」キー) 。

time slider

ペルソナ内では、すべてのアニメーションカーブの編集データは、 「付加的なレイヤー」 に保存されます。元のアニメーションを再インポートした場合でも、 変更は保存されています! このレイヤーは、ペルソナ上だけに存在します。変更を確定して、ゲーム内でアニメーションを見るには、ツールバーの 「Apply (適用)」 ボタンをクリックするだけです!

Third Person Walk

完全に新規のカスタムアニメーションを保存できるようになりました! ツーバーバーのボタンの 「Create Asset (アセットを作成)」 を使って、参照ポーズや現行ポーズ、現行アニメーションから、新規のアニメーションを作成することができます。

Create Asset

その他の注意点:

  • アニメーションカーブが必要ないなら、アニメーションカーブは無効にしたり削除したりできます。
  • 一度ベイクすると、最後にベイクされたアニメーションでエキスポートされます。付加的なカーブはエクスポートされません。
  • 再ターゲットする時、カーブは変換されません。しかし、最後にベイクされたアニメーションは再ターゲットされます。

即時的なボーンコントローラのプレビュー

ボーンコントローラのノードは、毎回再コンパイルするのではなく、ビューポートのギズモを使ってインタラクティブに調整できるようになりました!

BoneCont_Min_Gif.gif

この機能は現在は、 TwoBoneIK と ModifyBone & Fabrik ノードだけで使えますが、将来的には他のものでも使えるようになる予定です。

物理からのアニメーションの作成

物理エディタ (PhAT) 内で、 物理アニメーションを記録 し、 アニメーションとして保存する ことができるようになりました!

Creating Animation from Physics

ツールバーの 「Record」 をクリックして開始し、興味のあるシミュレーションを作成するために、ビューポートのオブジェクトに作用させます! その後、 「Stop 」 をクリックすると、シミュレーションがアニメーションとして保存されます。

レベルからアニメーションもキャプチャーできます!

  • レベルエディタ内で、ツールバーの Play (プレイ) ドロップダウンリスト の 「Simulate (シミュレート)」 ボタンをクリックしてください。
  • シーン内で、シミュレートしたスケルタルメッシュを見つけてください
  • メッシュを右クリックして、 「Keep Simulated Changes」 (または、 「Kキー」 ) でアニメーションを保存できます!

プロジェクトランチャー

プロジェクトランチャー の新しいインターフェイスでは、ゲームの実行やパッケージングをよりコントロールし易くなりました

Project Launcher

プロジェクトランチャーには、 複数の連続したセッション として、 複数のデバイスタイプ でのゲームのテストを支援する機能と 設定 があります。容易にカスタマイズできるビルドタイプとクッキング設定をして、任意の接続されたデバイスでプロジェクトを起動してください。

ニーズに合ったビルド設定を作成するために Custom Launch Profiles (カスタム起動プロファイル) を使ってください。

  • 先進的なオプションが追加されました。
  • ビルドしたいコンテンツを正確に選んでください。
  • マルチプラットフォーム向けに一度だけビルドしてください。
  • パッケージングして、ビルドを保存して実行するか、後で実行してください。

もちろん、メインツールバーの便利な 「Launch (起動)」 ボタンを使って実行することもできます。しかし、もっと柔軟に実行したいなら、 「Launch」 ツールバーのドロップダウンメニューか、メインのウィンドウメニューからプロジェクトランチャーを開いてください。

ブループリントマージツール

新しく追加された ブループリントマージツール を使って、 別のブループリントを一緒にマージする こともできるようになりました。

このツールは、2つのブループリントのビジュアルに比較し、結合を支援します! 別のチームメンバー達によって修正されたものを、1つのブループリントにマージしたバージョンにするのに最適です。

blueprint Merger

このツールには3つの使い方があります:

  • ブループリントエディタで ファイル-> マージ をクリックしてください。
  • ソースコントロールのマージの競合のあるアセットを右クリックして、 Merge (マージ) を選択してください。
  • コマンドラインから、 run: UE4Editor.exe -diff [options] <File A> <File B> <Common Base File> <Output File>

Gitソースコントロールプラグイン (ベータ版!)

コミュニティメンバーの Sébastien Rombauts氏 が、Unreal Engine用のすばらしいGitソースコントロールプラグインを提供してくれたことにとても感謝します!

git (Beta Version)

プロジェクトをGitリポジトリに接続したなら、エディタはファイルの追加や削除、変更のコミット、ファイル履歴の閲覧、ファイルの差分表示、アセットのソースコントロールステータスなんどの、ほとんどのソースコントロールをサポートします。

AI認識システム:ブループリントスクリプト

AI Perception System (AI認識システム) は、ブループリントスクリプトを使って設定できるようになりました!  AI Perception Component (AI認識コンポーネント) をAIに追加するだけで、プロパティやイベントを検査したり調整したりできます。

AI Perception System

新規プロジェクトテンプレートのためのチュートリアル

新規プロジェクトテンプレートには、それぞれテンプレートのアセットとクラスだけの使い方のアウトラインを簡単に説明した 概要チュートリアル があります。

Tutorials for New Project Templates

それを始めるには、コンテンツブラウザのチュートリアルのサムネイル上で 「「Play」ボタン をクリック」するだけです!

TopDown

コンテンツパックと機能パックには、それぞれ別のチュートリアルツールがあります。プロジェクトにパックを追加するなら、機能やコンテンツについて教えてくれるチュートリアルを探してください!

新しいサムネイルのルック&フィール

エディタは、 アセットサムネイル を新しい カラフルなスタイル で表示するようになりました!

New thumbnail look and feel

また、C++のクラスとブループリントのクラスは共に、可能な場合は ライブ3Dサムネイル で表示され、親クラスを示す 隅の小さなアイコン も表示されます。

Paper2D:改良されたマップレイヤー編集

多くの便利な レイヤー編集機能 が、タイルマップエディタに追加されました!

Tile Map Example

  • レイヤーはオーダーが変更でき、他のレイヤーに対して上下に移動することができます
  • レイヤーブラウザで選択すると、最上位のレイヤーに常に描画されるのではなく、そのレイヤーに描画されます
  • 選択したレイヤーは編集セッションを通して、記憶されています
  • 選択されたレイヤーには現在の深度での補助グリッドがあり、選択されてないレイヤーはワイヤーフレームでアウトラインで描画されます
  • レイヤーの名前は、より明白でビジュアルなスタイルかつ直感的なクリック操作で、正にワールドアウトライナー内のアクタのようにして変更できます
  • レイヤーは複製できます
  • タイルマップは、アセットに働くコマンドを持った、レベル内の再利用可能なアセットまたはインスタンスです
  • 新規に追加されたレイヤーは、より意味のある名前を持つようになりました
  • 注意:タイルマップは、この Unreal Engine のバージョンでは、まだ「実験的な」機能です

Paper2D:フリップブック コリジョン検出

Flipbooks (フリップブック) で、順序どおりに実行する 画像切り出しによる2Dアニメーション の作成ができます。アニメーションフレームのための コリジョンプロパティ を定義できるようになりました!

Flipbook Collision

フリップブックアセットには、コリジョンデータのソースを制御するための Collision Source (コリジョンソース) プロパティが追加されています(任意)。

  • No Collision :フリップブックは衝突しない
  • First Frame Collision :フリップブックはアニメーションの最初のフレームでアニメーション無しで衝突する
  • Each Frame Collision :フリップブックは毎フレームアニメーションに合わせて衝突する (注意:この設定はフレーム毎に物理状態を再作成するので高コストです)

使用法についての注意:

  • 多くの場合、さらなる認識のために、ソースフレームから衝突を直接生成するよりも、衝突コンポーネントをフリップブックコンポーネント上のソケットにアタッチするでしょう (例:ボックスコンポーネントなど)。特に他のブロックと重なる衝突領域が欲しい場合はそうなります。
  • キャラクタの移動は、まだコリジョンカプセル上に依存しています。多くの場合、フリップブックにカプセルをフリップブック上のスタックから取得できないようにする BlockAll ではなく、別のコリジョンチャンネルを使いたいでしょう (カプセルにブロックされた移動や位置づけ、フリップブックに基いた放射物との重なりやコリジョンのテスト)。

UI:カスタムカーソルサポート

プロジェクトに ソフトウエアカーソル として使えるようなカスタムウィジットを作成できるようになりました。テキストの追加やヘルスメーター、ツールチップ、その他カーソルに必要なものなど、 Unreal Motion Graphics のすべての機能を使うことができます。

UI: Custom Cursor Support

ソフトウエアカーソルは多くの場合に有用です:

  • コンソール向けの仮想マウスカーソルなど、ハードウエアカーソルのないプラットフォームにカーソルの追加。
  • 視覚的にリッチだったり、アニメーションが付いていたり、複雑な操作が付いたカーソルの追加。
  • プラットフォームに依存したフォーマットに悩まされることのないようにするための、PCやMac、Linuxに共通な見た目のカーソルの追加。

プロジェクト設定 の新しい 「」 セクションを、ゲーム用のソフトウエアカーソルウィジットのセットアップに使うことができます。カーソルを指定しない場合は、 デフォルト のハードウエアカーソルが使用されます。

注意:OSによって描画される標準のマウスカーソルと違って、ソフトウエアカーソルの動きはゲームのフレームレートにより制限されます。これは、大きなトレードオフとして検討すべきです。

Unreal Motion Graphics :新しいウィジットバインディングシステム

ウィジットバインディングシステムは、サブプロパティとウィジット上の機能のバインディングのサポートとパフォーマンスの大幅にな改善のために、大々的にオーバーホールされました!

Unreal Motion Graphics: New Widget Binding System

新しいウィジットバインディングにおける注意点

  • バインディングはブループリントのスクリプトを使うのではなく、動的に評価されるフィールドのセットに基づいています。
  • C++やブループリントの機能との直接的なバインディングもサポート!
  • ささいな変更は自動的に扱われます (例:リニアカラーからスレートからへの変更やTexture2Dからスレートブラシへの変更など)
  • プロパティへのバインディングは、この変更でとても速くなりました! (約10倍の速度の改善)
  • 元のバインディングも動作しますが、パフォーマンスの改善を活用するためには新システムへアップデートすべきです。

ビジュアルロガー (AI可視化ツール)

完全に新しく追加された Visual Logger ツールには多くの機能があります。これはプロジェクトのAI をデバッグしたり、高度に調整したりするのを支援するために設計されました!

Visual Logger

  • イベントをログアウトして、パワフルなツールをタイムラインの検索に使ってください。 このビデオ に使用例があります。
  • タイムラインに警告のある項目は黄色で表示され、エラー項目は赤色で表示されます。
  • 特殊なデバッグカメラをゲーム停止中に、いろいろな場所へ動かすことができます。
  • 作成された「レポート」をビジュアルロガーイベントから保存してください。レポートのハイパーリンクでログをフィルタでき、解析が容易になります。

透過オブジェクトの順序制御

この新しい機能で、透過オブジェクトをレンダラーが描画する順序の設定ができるようになりました。これは2Dゲームには、本当に有効です!

Sort Policy

プロジェクトの レンダリング設定 で、新しく追加されたTranslucent Sort Policy (透過ソートポリシー) をチェックしてください

  • Sort by Distance: カメラからオブジェクトの境界球の中心までの距離に基づいてソート。これがデフォルト値で、3Dゲームに最適な、典型的な設定です。
  • Sort by Projected Z: 射影したZ方向のカメラへの距離に基づいてソート。この設定はカメラの回転によって、ポッピングが起きます。
  • Sort Along Axis: 固定した軸への射影に基づいてソート。これは2Dゲームでは一般的に最適な選択肢になります。ソートするための軸は 透過ソート軸 と呼ばれ、レンダラーのプロジェクト設定 (デフォルトは-Y)で変更できます。

ブループリントサイクル依存性の解消

ブループリントのローディングは、再設計され、どんな 「サイクル」 シナリオも扱えるようになりました。ブループリントは、混合したり、望む相手と相互に伝達したりできます。さらにもっとも重要なのは:きちんと次の時間にロードされることです。

これは、多くのブループリントのロード時のクラッシュやブループリントが不正な状態でロードされる別のシナリオに対応したものです!

UnrealでのC++プログラミングの改良

Unreal Engineで容易にC++を使え、みなさんがもっと親しめるように、引き続き作業をしています。

  • 特殊なコンストラクタは不要になりました!クラスのコンストラクタに、 Object Initializer の引数は不要です。
  • Unrealクラスのサブオブジェクトを作成するには、新しい単純な構文が使えます。
  • C++の単一のヘッダファイル中に、1つ以上のUnrealクラスを持てるようになりました。
  • ファイルにUnrealクラスがない場合でも、ヘッダファイルに特殊なUnreal型 (Unreal列挙やデリゲートなど) を宣言できるようになりました。
  • Unrealクラス名と同じソースファイル名にする必要がなくなりました。
  • プロパティに好きな名前を付けることができるようになりました!以前は「Color」のような名前は予約されていて使用できませんでした。

マルチスレッドアニメーション

アニメーションのポーズ計算は、エンジンがアニメーションの計算に使う合計時間を減らすように、複数のCPUコアに振り分けられるようになりました。

これにより、多くのアニメーションするスケルタルメッシュがあるゲームのパフォーマンスは向上することでしょう!

Androidにおけるデスクトップ品質のレンダリング 「ベータ版」(OpenGL ES 3.1 w/ AEP)

OpenGL ES 3.1 (Android拡張パックと結びついた) は、Androidデバイス上で 完璧なデスクトップレンダリングエクスペリエンス の多くが使用できる可能性を与えくれます!  この機能は、現在 ベータ テスト中です。フィードバックを送ってください。

  • ES3.1+AEP」 は、ビルドやクックで選択できるようになっています。
  • Tegra K1 デバイス (例えば、NVIDIAのShield Tablet) は、テストと開発に使用されています。将来的にはもっともっと多くのデバイスがAEPをサポートするでしょう!
  • AndroidのProject Settings (プロジェクト設定)で、「Enable OpenGL ES31 + AEP」オプションを有効にしてください。
  • 注意:現在は、この機能を使うにはエンジンを自分自身でGitHubのソースからコンパイルする必要があります。
  • 注意:ブループリントだけのプロジェクトは、OpenGL ES 3.1 サポートを有効 (BaseEngine.ini 中の bBuildForES31 を有効) にして、基本の UE4Game 実行ファイルを再コンパイルする必要があります。

ダウンロード可能コンポーネント (DLC) パッケージ 「ベータ版」

ダウンロード可能コンポーネント (DLC) が、配布パッケージに含まれるようになりました! 

現在この機能は ベータテスト中 で、コマンドラインツールが必要です。ゲームプラグインコンテンツフォルダの中にアドオンのDLCを作成して、新しいパッケージングツールを使って「クック」して、選択したプラットフォームに最適化してください。

この機能を使うと、どんなコンテンツがすでに発売されたゲームに提供されているかを知るためのゲームの アセットレジストリ が利用可能になります。必要な物はなんでも、ゲームのコンテンツからDLCの中にクックするでしょう。

この機能を使うためには、クックユーティリティを 「-CreateReleaseVersion=x.y」 を付けて、メインのゲームのために実行して、再度それぞれのDLCプラグインのために 「-BasedOnReleaseVersion=x.y -DLCName=MyPluginName」 付きで実行してください。

Androidでのムービーの再生

Androidデバイス上での ムービーのロードムービーの開始 ができるようになりました!  プロジェクトの設定 で、再生するスタートアップムービーの設定ができます。

Androidのムービーは、 MP4 形式でなくてはなりません。また、ムービー再生機能にはAndroid 4.0以上のデバイスが必要です。

Android SDKのエディタへのパス設定

Android 開発 に必要な SDK コンポーネント の位置を、プロジェクト設定 の 「Android SDK」 セクションで直接設定できます。これで、初期設定がとても簡単になりました!

android sdk

この設定は、設定されている環境変数を上書きします (元の方法を使いたいのであれば、空白のままにしておけば、環境変数を使います)。

ブループリントの編集不可変数へのアクセス

変数を 「Editable」 にすることなく、もう一度別のブループリントから変数にアクセスできます。これは4.7ではなく、すでに4.6でも可能でした。すみません!

AI ブラックボードの同期

ブラックボードアセットで定義されたキーは、「synced」としてマークされます。それは、値をそれを使うすべてのAIをまたいで、その値に同期されるものです。これは、複数のAIにまたがって同期的な振舞いをさせることや、それらの間でのコミュニケーションに使うことができます。