Unity を検索

Unity 2020.1 ベータ版公開、フィードバック募集中です

2020年3月17日 カテゴリ: テクノロジー | 13 分 で読めます
2020.1 beta
2020.1 beta
取り上げているトピック
シェア

Unity 2020.1 ベータ版で公開されたプロファイリングツール、グラフィックス、エディタワークフローなどの新機能をご紹介します。これらの新機能を試して、ベータ版フォーラムで感想をお聞かせください!

Unity 2020.1 ベータ版は、今年の最初の TECH ストリームリリースの開発サイクルにおけるマイルストーンです。Unity 2020.1 は、2020 年に行われる 2 回の TECH ストリームでのリリースの 1 回目であり、このリリースから来年の Unity 2020 の長期サポート(LTS)リリースまで Unity 2020 系のリリースが続いていきます。

フィードバックをくださる皆さんへの感謝の意を込めて、Unity 2020.1 ベータ版を試していただき、少なくとも 1 回バグレポートを提出していただいた方から抽選で 4 名の方に、NVIDIA GeForce RTX™ 2080 グラフィックカードをプレゼントさせていただきます。抽選への参加方法の詳細については、この記事の最後をご覧ください。

日本時間の 4 月 20 日深夜に、このベータ版に盛り込まれた機能とアップデートのガイドツアーを行うウェビナーを開催します。こちらからご登録ください。ご登録方法の詳細はこの記事の最後に掲載されております。

まずは Unity Hub またはベータ版の配布ページから Unity 2020.1 ベータ版をダウンロードしてください。今後の開発を計画しながら技術を評価するためにベータ版の内容をチェックされることをお勧めいたします。常にお伝えしていることではありますが、ベータ版やプレビュー版の技術を使ってテストする前に、既存のプロジェクトをバックアップするようにしてください。詳細な手順については、ガイドをご覧ください。

以下に、さまざまな分野で追加された機能のハイライトを紹介します。このリリースに含まれている機能や、プレビュー版がパッケージで配布されている機能の詳細に関心がある方は、今後も引き続きブログやベータ版フォーラムをチェックするようにしてください。

スクリプティングツールとプロファイリングツール

Unity のプロファイリングツールは、パフォーマンスとメモリデータに関する情報量豊富なビューを提供することで、開発者の皆さまがアプリケーションのパフォーマンスを最大限に引き出す手助けとなります。今回のリリースでは、ツールの安定性、パフォーマンス、信頼性が向上しました。

まず、プレイヤーへのプロファイラー接続が、特にローエンドの Android デバイスでより安定しています。また、スタンドアロンのプロファイラーデスクトップアプリとして実行できるようになり、オーバーヘッドが大幅に削減され、エディターや再生モードをターゲットにした場合に、よりクリーンなデータが得られるようになりました。

プロファイラーには、Job System の依存関係を可視化する Flow Event 機能が追加されました。また、プロファイルマーカーにメタデータを追加することができ、Recorder API の拡張機能により、新しい Sampler API を使用して実行時に GPU カウンターを取得できるようになりました。また、Profile Analyzer にも多くの改良を加えました。さらに、Memory Profiler のバックエンドをリファクタリングし、キャプチャメモリのオーバーヘッドとキャプチャ時間を大幅に削減しました。Memory Profiler はプレビューパッケージとして提供されています。

スレッド間での Unity のジョブスケジュールを可視化するために、Profiler の Flow Events 設定を使用することができます。

Code Coverage プレビュー版パッケージでは、テストの合否に加えて、テスト実行時に実行されるコード行を確認することができます。フォーラムでご意見をお聞かせください。

Build Report Inspector(現在パッケージで提供)を使用すると、過去のビルドレポートから人間の目で読める情報を取得できるようになりました(Unity はこれらの情報をプロジェクトをビルドするたびに保存します)。また、Build Report API が提供するプロジェクトのビルド時間の詳細(アセットレベルへの内訳など)も確認できます。

新しい C#デバッグワークフローでは、デフォルトで C#コードが最適化された状態でエディターが実行されるようになり、エディターのパフォーマンスが向上しています。また、エディターを再起動せずにデバッグモードを有効にすることもできます。

Visual Studio 統合はパッケージに移行しています。新しい Visual Studio Code Editor パッケージはプレビュー版での提供となります。今後の開発はすべてパッケージ内で行われ、将来のリリースで削除するまでは組み込みでのサポートはメンテナンスモードに切り替えて継続されます。パッケージにはすでにいくつかの新機能が追加されており、起動の高速化などの改善が行われています。

ジェネリック型のフィールドのシリアライズのサポートを改善しました。以前は、ジェネリック型(class MyClass<T>など)を定義していて、その型を使ってフィールドを作りたい場合は、ジェネリック型ではないサブクラス(class MyClassInt : MyClass<int>など)を定義しなければなりませんでした。この制限がなくなったので、ジェネリックのサブクラスを宣言する必要がなくなり、ジェネリック型を直接使うことができるようになりました。

エディターとワークフロー

Unity 2020.1 ベータ版では、エディターのワークフローの段階的な改善が行われます。これらには以下が含まれます。

  • FBX の機能強化:新しい軸変換設定
  • SketchUp アセットからのカスタム属性データのサポート
  • PNG ファイルを読み込む際にガンマ補正を無視するオプション(異なるプラットフォーム間での色の一貫性を保つのに役立ちます)
  • Presets の新機能(与えられたプリセットのプロパティの一部のみを適用し、ファイルのパスに基づいてプリセットマネージャーでフィルタリング)
  • Addressable のユーザーエクスペリエンス(UX)の改善
  • ランタイムカタログの更新とサブオブジェクトのサポート
  • 2 GB 以上のアセットファイルのインポートをサポート
  • Windows の新しいディレクトリ監視機能により、関連するアセットのみを更新することで処理を高速化します。今後のリリースで macOS のサポートを追加する予定です。
  • 新しい公開 API とバックグラウンドのプログレスウィンドウにより、開発者はエディターの UI をブロックすることなく、長時間の非同期操作を公開し、ユーザー割り込みを少なくすることができます。

Unity Accelerator を使用すると、チームが同じローカルネットワーク上で作業する際のアセット共有を調整することができます。このリリースでは、チームのニーズに合わせてツールを設定できるように、Unity Accelerator のローカル管理者用ダッシュボードが追加されました。

コンテキスト内でプレハブを開くことができるようになりました。この方法で Prefab モードを開くと、インスタンスを編集しているのではなく Prefab アセット自体を編集しているにもかかわらず、シーンビューに Prefab インスタンスのコンテキストが表示されます(ただし、編集のためにロックされています)。この方法の詳細については、Prefabs フォーラムを参照してください。

現行の in-Editor Asset Store は、CEF(Chromium Editor Framework)を使用していますが、これは古い技術であり、最新のブラウザに期待されるパフォーマンスを提供することはできません。このリリースで、CEF を削除しました。これは、Services ウィンドウをリファクタリングし、in-Editor Asset Store ブラウジングを削除したことを意味します。その代わり、サインインしてアセットストアのウェブサイトにアクセスして新しいアセットを探したり取得したりする際には、パッケージマネージャーウィンドウの「マイアセット」メニューが利用可能になります。そこからアセットをダウンロードしてインポートすることができます。このウィンドウには、パッケージをオーサリングするための機能も含まれています。

また、新しい 2D プロジェクト用の Hub テンプレートも更新しました。これには、検証済みかつ事前コンパイル済みのすべての 2D パッケージと、2D プロジェクトに最適なデフォルト設定が含まれています。また、すべてのパッケージを手動でインストールするよりも高速にロードされます。お客様のニーズに合わせて改良していきたいと考えていますので、フォーラムの Improved 2D Template スレッドでご意見をお聞かせください。

このリリースには、Rigidbody2D の XY 位置コンストレイントの改善を含む、2D Physicsのアップデートが多数含まれています。この機能は Box2D 物理への変更に対応したものであり、Unity 2019.2 にもバックポートされました。Per-frame Auto-Simulation では、レンダリングサイクルと同じレートで物理システムが更新され、よりスムーズな物理シミュレーションとビジュアルを実現します。また、EdgeCollider2D では、開始点と終了点を制御して、他のコライダーと重なったエッジが連続した面を維持できるようになりました。

チームの 2D Physics プロジェクトが更新され、2D 物理のすべての機能をデモンストレーションするシーンが多数収録されました。GitHub で入手して、2D ベータ版フォーラムで感想を聞かせてください。

バージョン 2 となった新しい Sprite Packer では、AssetDatabase v2 の機能とキャッシュサーバーへのアクセスを提供する Scripted Importer ワークフローを使用して、テクスチャーやスプライトからスプライトアトラスを作成することができます。

 

このコンテンツはサードパーティのプロバイダーによってホストされており、Targeting Cookiesを使用することに同意しない限り動画の視聴が許可されません。これらのプロバイダーの動画の視聴を希望する場合は、Targeting Cookiesのクッキーの設定をオンにしてください。

アーティストツール

Animation Rigging (Preview) パッケージには、既存のモーションをアクティブな制約に転送できるワークフローである Bidirectional Motion Transfer が追加されました。

Freeform Stretching モードや Lifetime by Emitter speed モジュールなど、パーティクルシステムの改良が行われています。これは、液体の滴や動き回る火などのエフェクトに便利です。また、シェーダーグラフの Sticky Notes も改善されました。

UIElements の名前を UI Toolkit に変更しました。新しい名前は、UI Toolkit に含まれる機能と機能のセットをよりよく表しています。UI Toolkit では、Unity エディター拡張機能の作成に使用できるツールと同じツールを使用してランタイム UI を作成できるようになりました。また、UI Toolkit をパッケージに移行しており、Unity 2020.1 ベータ版サイクルの後半にプレビュー版が利用できるようになる予定です。今後の情報については、UI Toolkit フォーラムをチェックしてください。

グラフィックスツール

ユニバーサルレンダーパイプラインでは、Camera Stacking を使用して、複数のカメラの出力をレイヤー化し、1 つの結合された出力を作成できるようになりました。

Camera Stacking を使用すると、2D UI や車両のコックピットで 3D モデルを表示するなどのエフェクトを作成することができます。現在のところ、2D Renderer や VR マルチパスモードを使用している場合、カメラスタッキングはサポートされていません。これらのサポートは、ユニバーサルレンダーパイプラインパッケージの今後のバージョンで追加される予定です。

Unity 2020.1 ベータ版には、HD レンダーパイプライン(HDRP)に調整されたレイトレーシング機能(プレビュー版)のアップデートも含まれています。Skinned Mesh Renderer コンポーネントを介してレイトレーシングでアニメーションを行うことができるようになりました。Alembic Vertex Cache とダイナミックコンテンツを持つメッシュ(下記の例を参照)は、Renderers メニューの Dynamic Geometry Ray Tracing Mode オプションでサポートされるようになりました。これらの機能を試してみたい方は、HDRP Ray Tracing フォーラムに参加してください。また、HDRP のレイトレーシング機能に特化したブログ記事もあります。詳しくはこちらをご覧ください。

このコンテンツはサードパーティのプロバイダーによってホストされており、Targeting Cookiesを使用することに同意しない限り動画の視聴が許可されません。これらのプロバイダーの動画の視聴を希望する場合は、Targeting Cookiesのクッキーの設定をオンにしてください。

Streaming Virtual Texturing 技術もこのリリースに含まれています。HD レンダーパイプライン(9.x-Preview 以降)では、シェーダーグラフとの併用でサポートされます。Streaming Virtual Texturing は、シーン内に多数の高解像度テクスチャがある場合に、GPU メモリの使用量とテクスチャのロード時間を削減する機能です。サンプルプロジェクトでは、開発中のパッケージをプレビューすることができます。ユーザーガイド(英語)を入手して詳細をご確認いただき、フォーラムで感想をお聞かせください。

このベータ版のリリースには、ライティングに関する改善と修正も多数含まれています。例えば、新しいライト設定アセットを使用すると、複数のシーンにわたる設定の変更や、マルチベイクを使う場合により詳細なコントロールが可能になります。

ライティング設定は、Unity シーンファイルの一部ではなくなり、事前に計算された GI に関連するすべての設定を保存する独立したファイルに格納されるようになりました。これにより、シーンやチームをまたいでライティング設定を共有、変更、あるいは再利用できるようになりました。

新機能の Calculated Pack Margin 機能は、メッシュインポーターに設定を追加します。これにより、UV のオーバーラップによるアーティファクトを回避し、クリーンで正しいライトマップを簡単に得ることができます。

GPU ライトマッパーは、A-Trous フィルタリング、ベイク済みの LOD サポート、およびスカイオクルージョンベイクのサポート追加とメモリの取り扱いへの改善が施され、CPU プログレッシブライトマッパーと機能的に同等に近づいています。

HDRP でのベイク済みライトクッキーのサポートは、まもなく利用可能になります。それまでの間、組み込みのレンダーパイプラインでこの機能を試すことができます。

Russian Roulette は、グローバルイルミネーションを計算する際の全体のベイク時間を短縮する新しい方法です。アグレッシブな Russian Roulette 値を使用すると、ライトマップにノイズが発生する可能性が高いので注意してください。Unity 2020.1 のライティングの新機能の詳細については、Global Illumination フォーラムにてご確認ください。

Russian Roulette のベンチマーク用サンプルシーン。「Enter The Room」プロジェクト:Nedd 提供。

プラットフォーム

iOS デバイス用の Unity ランタイムは、最低バージョンとして iOS 11 が必要となり、32 ビットビルドはサポートされなくなりました。iOS 上の OpenGL ES のサポートは非推奨(2019.3 以降)となっており、Unity 2020.2 で削除される予定です。

高度な技術を有する開発者であれば、1 つの API だけで、PlayStation 4、Xbox One、デスクトッププラットフォームのすべてについて、レガシーなレンダーとスクリプタブルレンダーパイプラインの両方で、ハイダイナミックレンジ(HDR)ディスプレイへの出力を行うための、独自の変換プロセスを実装することができるようになりました。

Device Simulator (Preview) パッケージには、より多くのデバイスが追加され、デバイスのリストの検索やフィルタリングが可能になりました。

新しい Caching Shader Preprocessor は、ファイルの前処理の結果をキャッシュすることで、シェーダーのインポートおよびビルドのパフォーマンスを向上させます(シェーダーのコンパイル時間を最大 25%短縮)。これはすべてのプラットフォームとレンダーパイプラインに適用され、このリリースでは実験的機能となっています。エディター設定の Shader Compilation セクションでオンにすることができます。

WebGL ローダーとテンプレートに多くの改善を行いました。読み込みのパフォーマンスを向上させるために、Unity 2020.1 ではビルドに固有の WebGL ローダーを生成するようになりました。未使用のコードはローダーから削除され、選択されたプレイヤー設定に基づいて最も効率的な読み込みスキームが選択されます。

エディターに HDR ディスプレイのサポートを追加し、HDR に対応したディスプレイを使用している開発者が HDR を活用できるようになりました。この変更により、DX12 と Metal がサポートされます。

また、プレイヤーの HDR サポートのための新しい C# API を導入し、開発者がデフォルトの Unity トーンマッピングアルゴリズムを上書きできるようにしました。これにより、カスタムのトーンマッピングを作成し、必要に応じて HDR 設定を有効化または無効化することが可能になります。

抽選に参加して NVIDIA GeForce RTX™ 2080 GPU をもらおう

2020.1 ベータ版のテストに参加してくださった方から抽選で 4 名の方に、NVIDIA から提供された GPU をプレゼントいたします。

抽選に参加するには、2020.1 ベータ版サイクル中にユニークなバグを 1 つ以上発見して、バグ報告の中に「#Beta2020Win_NVIDIA」とご記載の上、ご報告していただく必要があります(以上の要件をすべて満たすバグ報告を「応募」とみなします)。コンテストは日本時間の 3 月 17 日午後 4 時 01 分から始まっており、応募の受付は日本時間の 5 月 16 日午後 3 時 59 分までとなります。

「ユニークなバグ」とは、ご応募時点でまだ報告されていないバグであり、Unity 側で再現され、かつバグとして認定したものを指します。

コンテストに参加していただくために何らかの課金をしていただく必要はありません。コンテストのルールに違反する応募は無効となります。完全なルール(英語)はこちらをご覧ください。当選者の方には Unity から直接ご連絡いたします。

Unity 2020.1 ベータ版のテストに参加して、NVIDIA GeForce RTX™ 2080 GPU が当たる抽選にご参加ください

Unity ベータ版プログラムについて

Unity のオープンベータ版テストに参加することで、次の TECH ストリームのリリースで提供される新機能を試したり、フィードバックを提供したりすることができます。また、私たちのソフトウェアの品質を向上させることで、コミュニティ全体を助けることにもなります。

どのようにテストに参加すればいいかわからない場合は、効果的なベータテスターになるためのガイド(英語)をご覧ください。

次のビデオを見て、ベータ版プログラムが私たちにとって何を意味するのか、ベータ版のユーザーが何を考えているのかをもっと詳しく知ってください。

このコンテンツはサードパーティのプロバイダーによってホストされており、Targeting Cookiesを使用することに同意しない限り動画の視聴が許可されません。これらのプロバイダーの動画の視聴を希望する場合は、Targeting Cookiesのクッキーの設定をオンにしてください。

2020.1 ベータ版のウェビナーに参加する

日本時間の 4 月 21 日午前 1 時(4 月 20 日 25 時)から開催される、ゲームエバンジェリストの Ashley Alicea が主催するウェビナーにご登録ください(ウェビナーの言語は英語となります)。Ashley が今回のリリースの主な新機能の数々を説明し、デモを行います。Unity の R&D チームからのゲストも招き、新しいツールや技術についての質問にお答えします。

 

登録する

このコンテンツはサードパーティのプロバイダーによってホストされており、Targeting Cookiesを使用することに同意しない限り動画の視聴が許可されません。これらのプロバイダーの動画の視聴を希望する場合は、Targeting Cookiesのクッキーの設定をオンにしてください。

リリースノートを読む

過去のバージョンと同様、新機能、改善点、修正点の完全なリストはリリースノートを参照してください。また、フォーラムでもフィードバックを頂ければ幸いです。

ベータ版プログラムニュースレター

ベータ版のニュースレターに登録すると、今後提供される技術の情報や、ベータ版のユーザーの方だけにお知らせするアクティビティのニュースを受け取ることができます。以下のフォームにご記入の上、ベータ版のニュースレターにご登録ください。


2020年3月17日 カテゴリ: テクノロジー | 13 分 で読めます
取り上げているトピック