Unity 2019.3 のプラットフォームに関わるアップデート
Unity では 20 を超えるプラットフォームがサポートされているため、どんなに業界が進化しても、イマジネーションが向くままに、手元の IP を将来も使用できると自信を持って感じることができ、より幅広いオーディエンスにリーチすることができます。
Input System は、プロジェクトにデバイス制御を組み込むための新しい標準です。そのワークフローは、入力アクションを中心に据えて設計されています。入力アクションとは、コントロールのバインディングをコードのロジックから分離できるインターフェースです。新しいシステムはプラットフォーム間で一貫性があり、拡張可能かつカスタマイズ可能で、現在プレビュー段階です。
Unity 2019.1 で、プロジェクト内でガベージコレクションの処理を行うための新しい方法が導入されました。インクリメンタルガベージコレクションでは、ガベージコレクションの処理を一度にすべて実行する代わりに、操作をいくつかのフレームに分割します。これは、ガベージコレクションが原因で CPU 使用率のスパイクがときどき発生する場合に役立ちます。
2019.3 では、インクリメンタルガベージコレクターが実験的な機能ではなくなり、WebGL 以外のすべてのターゲットプラットフォームと互換性のあるものになります。
プラットフォームエコシステムの最新の拡張機能で、Google の Stadia クラウドゲームプラットフォーム向けの最初のゲームを制作して公開する、承認された開発者の方へのサポートが提供されます。このサポートには、State Share や Stream Connect などの Stadia 拡張機能に加えて、YouTube と Google Assistant が統合された Stadia Controller も含まれます。これらの機能により、プラットフォームで可能なことの範囲が広がります。
ゲームを Stadia に配信することに関心をお持ちの場合は、まず Stadia の開発者向けウェブサイトで開発リソースにお申し込みください。
Unity のプラットフォーム抽象レイヤーである Baselib は、最も一般的なプラットフォーム依存操作のベース機能を統合します。Unity 2019.3 の Baselib の更新により、パラレルデータ構造と同期プリミティブの安定性とパフォーマンスが向上します。これらのビルディングブロックにより、Unity 内部のマルチスレッドコードでデータに安全にアクセスできます。
拡張現実とバーチャルリアリティ
Unity は AR/VR アプリケーション作成用の主要プラットフォームです。パワフルな体験の制作とより幅広いオーディエンスへのリーチを支援する新機能と更新をご確認ください。
アプリケーションを一度作成して ARKit および ARCore 対応のデバイスに展開できるフレームワークが、Magic Leap および HoloLens デバイスに拡張されました。
このツールキットを使用すると、一からコーディングしなくても、AR または VR 体験にインタラクティビティを追加できます。システムは拡張可能であるため、必要に応じてインタラクションをカスタマイズでき、それは公式にサポートされているすべての AR および VR プラットフォームで動作します。
Unity のプラグインアーキテクチャフレームワークを使用して、できる限り幅広いオーディエンスに AR および VR 体験を届けましょう。これは Unity の「1 回ビルドすればどのプラットフォームにも展開できる」ベストプラクティスが進化したもので、ソフトウェアおよびハードウェアプロバイダーは独自の Unity インテグレーションを開発および保守できるようになりました。公認ソリューションパートナーになる方法をご確認ください。
VR 用の HD レンダーパイプラインで、美しい写実的なグラフィックスとライティング効果を実現し、パフォーマンスを犠牲にすることなく高忠実度の VR の枠を押し広げます。
マルチビューの Fixed Foveated Rendering(FFR)を使用して、Vulkan が実験的機能として Oculus Quest で利用できるようになりました。これは実験的リリースであり、新しい XR プラグインアーキテクチャを通じてのみ利用できます。現在は、ポストプロセッシングが無効になったマルチパスを使用して、組み込みのレンダリングパイプライン内でのみ機能します。まもなく URP 7.2.0 がリリースされるときにユニバーサルレンダーパイプライン(URP)で使用できるようになります。この機能を使用するには、Oculus XR プラグインをダウンロードしてください。
モバイル
Apple App Store と Google Play のモバイルゲームのトップ 1000 タイトルのうち半数以上で Unity が利用されています。
Unity で開発した機能をネイティブモバイルアプリケーションに直接挿入します。Unity as a Library では、これらの機能に拡張現実、2D ミニゲーム、3D モデルなどの 3D または 2D リアルタイムレンダリング機能が含まれます(ただし、これらに限定されません)。始めるには、Android と iOS での手順を記載しているブログ記事をご覧ください。
エディターから離れずに、さまざまなデバイスの動作と物理特性をテストします。Game ビューでは特定の解像度やノッチ/カットアウトレイアウトのほか、RAM やチップセットなどのデバイス情報に基づいて選択された品質設定などのデバイス固有のカスタム化をプレビューできるようになります。モバイルアプリのイテレーション時間を短縮する機能などを発表した、Unite Copenhagen 2019 でのこちらのプレゼンテーションをご覧ください。
新しい OnDemandRendering クラスでは、レンダリングループを他のサブシステムとは別に制御できます。これは、さらに細かく調整して電力消費を下げ、CPU のサーマルスロットリングを防止できることを意味します。
Adaptive Performance では、モバイルデバイスの熱状態に関するフィードバックを受け取り、適切に対応して、プレイヤーにとってゲームを最もスムーズかつ最高のパフォーマンスにすることができます。現在は Samsung Galaxy S10、Note 10、およびその他の Galaxy デバイスでサポートされており、他のデバイスも徐々に追加されます。この機能により、開発者は、サーマルスロットリングを(発生前から)回避しつつ、固定フレームレートをより長時間維持することができます。