正規リリースの品質についてのみなさんの意見を反映した結果、Unity 5.4 はベータ版としてリリースすることにしました。5.4を正規リリースとする前にもっと多くの実地での利用からのフィードバックを頂き、それらユーザーのみなさんから寄せられた声をできる限り反映させたいと考えています。
同時に、私たちはUnity 5.3.4もリリースします。このリリースを安定性のある信頼できるものにするためこれまで多くの努力をしましたが、今後も半年間にわたって、マイナーリリースとパッチリリースにより Unity 5.3.x の安定性をさらに向上させることに引き続き取り組んでいきます。
品質向上のための私たちの試みをもっと知りたい方はこちらをご覧下さい。
もし新機能が気になる方は、Unity 5.4 ベータ版におけるすべての新機能を以下より紹介します。
Unity 5.4 ベータ版では、ビジュアルクオリティとエディターでのアーティスト向けワークフローが大幅に向上しました。また、VR レンダリング パイプラインをさらに最適化し、主要な VR プラットフォーム向けにアプリケーションを作成するのがずっと簡単になりました。
Unity のクロス プラットフォーム アプリストア内課金サービスを利用すると、複数のアプリストアのサービスを1つのAPIで統合することができます。このサービスは、今回のリリースで Unity エディターとより密接に統合され、より簡単にゲームにこの機能を組み込んで収益をブーストできるようになりました。
さらに、この最新のリリースには、WebGL 開発用ビルドにかかる時間の短縮、Retina ディスプレイのサポートなど、多くの新機能が盛り込まれています。
Unity 5.4 ベータ版はパーティクルに新しいサイズ制御を搭載しています。これを使うと、パーティクルの幅と高さを個別に制御したり、メッシュ パーティクルを三次元空間で完全に制御することができます。
新しいトリガー モジュールも公開しました。これを利用すると、コライダーのリストに対してパーティクルのプロパティーを変更することができます。たとえば最も簡単な例では、パーティクルがコライダーに触れたときにカスタム スクリプトのコールバックを使ってパーティクルを消滅させることができます。すべてのパーティクル プロパティーの変更が可能なので、たとえば以下のような粘性のあるパーティクル表現も実現できます。
最後に、ライトプローブ プロキシボリューム (LPPV) で、大きなパーティクル システムをより本物らしくライティングできるようになりました。LPPV は、ベイクしたライトマップを使用できない大きな動的オブジェクトに、ベイクしたライティング情報を取り込む方法です。
LPPV は、バウンディング ボリュームに従って相互に補完されるライトプローブを3D グリッド状に生成することで動作します。グリッドの解像度は指定可能です。これにより、プローブによってライティングしたオブジェクトに対して空間的なライトのグラデーションを与えることができます。LPPV はパーティクルだけでなく、すべての大きな動的オブジェクトに利用することができます。
もし、皆さんが Substance Painter、 Quixel DDo Painter、 Marmoset Toolbag 2、Knaldなどの業界スタンダードのツールをお使いなら、テクスチャを適用したメッシュをそれらのプログラムからUnity にインポートすると、その美しい見た目が維持されていることに気付かれるかと思います。– Unity プロジェクトに直接インポートするだけでOK。調節などしないで、そのまま使えます。
これを実現するために、Unity 5.3 でスタンダード シェーディング モデルを従来型の phong からGGX に変更しました。さらに、Unity 5.4 ベータ版では、キューブマップのたたみ込みの実装を徹底的に見直して、短い実行時間で正確でノイズレスな結果を実現することに成功しました。
3か月前、シネマティック イメージ エフェクト ツール をアセットストアで公開しました。このパッケージには、スクリーン スペース レイトレース リフレクション、トーン マッピング、カラー グレーディング、アンチエイリアス (SMAA)、被写界深度が含まれています。これらは、すべて無料でダウンロードできます。
これらのエフェクトを使用した例を 「Adam」 と「The Labs」のデモで紹介しています。
私たちは、このイメージエフェクト群がすべてオープンソースであることを嬉しく思います。これらの新しく開発したものは BitBucket のリポジトリで公開されていますので、皆さんも開発にご参加いただけます。もちろん、フィードバックやご意見などもぜひお寄せください。
最近のVision VR Conference での発表をご覧になっていたら、SteamVR 向けサポートとVRに関する素晴らしいパフォーマンスの向上について発表したことをご存知かと思います。これらはUnity 5.4 ベータ版で実際に体験できます。
この最新版 Unity でついに、デバイス特有の微調整の必要性を最小限にしながら、1つの API で SteamVR、Oculus Rift、Gear VR、Playstation VR 用にビルドできるようになりました。これを行うために、VR サブシステムをリファクタリングし、異なる VR デバイスで重複していた機能に対応する冗長なコードを除去しました。
Double Wide Rendering のおかげで、WindowsとPS4ではシングルパスで両方の視点の画像をレンダリングできるようになりました。Unity はグラフィックスの改善(メインスレッドからワーカースレッドにジョブを移動することができる機能)も実装し、レンダリングパフォーマンスを著しく向上させました。
VR を始めようとしているユーザーは、Unity 5.3 と一緒にリリースした便利なチュートリアルと無料アセットで、効率よくスタートすることができます。
Unity IAP と Analytics は 新たに tvOS 用 App Storeに対応しました。対応プラットフォームは今後さらに増えていきます。サンドボックス環境でプロジェクトをテストして、すぐに収益の報告をダッシュポートで確認し、レシート検証をリアルタイムで行えます。Unity Analytics と IAP によって、信じられないほど簡単にゲームを収益化できるようになりました。
Unity 5.4 ベータ版では、マルチスレッド レンダリングの対応がより進みました。プロジェクトとビルドするターゲット プラットフォームによっては、目をみはるほどのフレームレート向上が得られます。
パーティクル、スプライト、フレア、円光、ライン、トレイルをメインスレッドから取り除くために Unity 5.3 で行なった変更に加え、コマンドリスト生成を並列化しました。 スクリプト・物理演算や他システムが使用するのと同じCPU コアでコマンドリストを構築する代わりに、他の CPU コアで処理を行うことでボトルネックの可能性を取り除き、多くの複雑なシーンの処理をより迅速に行うことができるようになりました。
ドローコールをの削減はパフォーマンスの向上につながりますが、GPU インスタンシング対応によって同じマテリアルをわずかなドローコールで共有して膨大な数の同一ジオメトリをレンダリングすることが可能となりました。GPU インスタンシングのサポートするのは、いまのところ DX11とShader Model 4.0 搭載のWindows PC ビルド、もしくはOpenGL 4.1 対応のOS Xビルドです。その他のプラットフォームについても順次対応して行きます。
上記のシーンは3種類の岩メッシュで構成されています。各々の岩はマテリアルプロパティブロックによってそれぞれ異なるグレースケールの色合いを与えられています。最初のシーンはGPUインスタンシング対応のスタンダードシェーダーを、次のシーンは今までの(ビルトイン)スタンダードシェーダーを使用しています。Intel Core i7-4980HQ@2.8GHz CPU と nVidia GeForce GT 750M を搭載したWindows / Direct3D 11 の Unity 5.4 beta 8で動作しています。
もしあなたがグラフィックス プログラマーで、独自のシェーダーを実装中なら、2D テクスチャー配列が、大きなシーンの最適化や、レンダリングシステムの実装の際にとても役に立ちます。これは、サイズ・形式が共通の 2D テクスチャをGPU にひとつのオブジェクトとして扱わせることができる機能です。
ローレベルなグラフィックスの機能も進化しました。コンピュート シェーダーは DispatchIndirect によって連携できるようになり、コンピュート バッファー カウンターも改善、そしてデバッグ情報もコンピュートシェーダーのデバッグ用に利用可能になりました。新しい CopyTexture
関数でより高速なテクスチャーのコピーが可能となりました。そしてシェーダーパラメーターで正式に uniform 配列サポートも追加されました。Metal、OpenGL、DirectX9 プラットフォームでは Alpha to coverage も実装され、iOS の Metal ではマルチスレッドレンダリングにも対応しました。最後に、イメージエフェクトはシーンビューのカメラに新しい ImageEffectAllowedInSceneView
属性を使って適用できるようになりました。
これらひとつひとつの変更は小さいものかもしれませんが、レンダリングパイプラインの改善にとても有用な変更であると私たちは考えています。
タイトル通りのことが可能になりました。WebGL をターゲットに指定して、Use pre-built engine (プリビルド エンジン使用) オプションを有効にして、ゲームをビルドすることで可能です。開発用ビルドを作成する時間が大幅に短縮され、反復する作業をスピードアップし、もっと効率的にテストを行うことができます。
以前にアナウンスしたように、ブラウザ ベンダーが「プラグインフリー」なWeb に移行している現状をうけ、WebPlayer 出力をサポートするリリースはUnity 5.3 が最後になります。もちろん、引き続き Unity 5.3.4 以前のバージョン を使用して WebPlayer ゲームをビルドすることもできます。
Unity WebGL ビルド オプションは、常にパフォーマンスを改善していっています。Unity WebGL ビルド オプションは完全にサポートされた実行可能なビルド ターゲットで、Web ゲームを作成するのに今すぐに使える環境です。Unity は引き続き WebGL プラットフォームの開発に力を注ぎ、さらに進化させるためにブラウザ ベンダーと努力を続けます。
iPhone ユーザーのOSの移行状況を見ると、最新版の iOS への移行が進んでいることを受け、iOS 6をサポートするためのリソースを最新のiOSに使う日が来たと私たちは考えました。また、残念ながらPS3のサポートを終了することにし、そのリソースを PS4 に投入してより素晴らしいゲームが開発できるよう注力していくことになりました。
Retina ディスプレイのあるMacで開発をしていると、Unity エディターが美しく表示されるようになったことに気がつくかと思います。Windows ユーザー向けにHiDPI サポートも開発中です。
さらに、高解像度のターゲット デバイス向けの開発を行っているユーザーのためにエディターのゲームビューでズームイン、ズームアウトしてスクリーン上の全体の解像度を調整できるようになりました。OS X と Windows 版、どちらのエディターにも対応しています。
ぜひ、Unity 5.4 ベータ版に皆さんのプロジェクトをロードしてみてください (プロジェクトのバックアップをお忘れなく)。Unity 5.4 ベータ版に盛り込まれた数多くの新機能がきっと役に立つことでしょう。
Unity の活用分野は飛躍的に広まってきています。Unity で作られたアプリケーションの多様性が高まるにつれ、私たちの QA プロセスをすり抜ける特殊なケースも出てくることと思います。安定版/ベータ版のバグを見つけた際は、Help メニューのUnity Bug Reporter を使ってバグ報告をしていただけると大変幸いです。