Search Unity

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

, 3月 17, 2020

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 ワークフローを使用して、テクスチャーやスプライトからスプライトアトラスを作成することができます。

アーティストツール

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 のレイトレーシング機能に特化したブログ記事もあります。詳しくはこちらをご覧ください。

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 設定を有効化または無効化することが可能になります。

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

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

登録する

 

抽選に参加して 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 ストリームのリリースで提供される新機能を試したり、フィードバックを提供したりすることができます。また、私たちのソフトウェアの品質を向上させることで、コミュニティ全体を助けることにもなります。

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

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

リリースノートを読む

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

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

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




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

I want to know as a beginner can i learn basics n some fundamentals till intermediate level on my phone vivo v5

Thanks. Also with the Chrome Embedded Framework not being supported anymore, What’s the way forward for supporting tools that make use of it on the asset store? Do you plan to open source the native wrapper? It would be a real shame if we can no longer use tools with 2020.

A very nasty surprise for me was a realization that GPU Lightmapper now demands 4GB of GPU memory, instead of 2GB in the 2019 version. The difference between baking by GPU vs CPU is tens of minutes compared to hours. This is a huge setback for me (and I’m sure for some other devs as well) since I can’t use it anymore. Not everyone has a high-end GPU (or has older one), especially indie devs and when we target mobiles, portables or just the universal pipeline, we don’t need one, but baked lights are a big part of optimization for those targets. Can you at least explain why this requirement was changed?

Hi, I am sorry to hear that you got negatively affected by this change. The reason for the increase in GPU memory minimum requirements is to ensure that there is enough memory to hold both what the Editor + the renderer, the OS and other apps need and what the lightmapper will need to bake lighting. Memory usage is very scene dependent and during the GPU lightmapper preview we have had lots of reports from users running out of memory. We are working on improving memory consumption and have some nice improvements scheduled for 2020.2, that will lower the memory footprint of the progressive GPU lightmapper, but the minimum requirement will stay at 4GB for now.
Hardware analytics show that most users that bake lighting, already have 4GB or more GPU memory and that the number of 2GB and smaller GPUs is steadily declining.
If you don’t have a 4GB GPU, you can still use 2019.x or the progressive CPU Lightmapper.

Thank you for your reply. I appreciate it. Well, I guess I’ll be using the 2019 version for now. Keep up the good stuff coming though.

“FBX enhancements (support for custom attribute data from SketchUp assets, and a new axis conversion setting)”

Does this mean we can fix axis import issues without having to re-open meshes in our modeling program? Can’t tell you how painful it is to export FBX from blender and have sub-meshes with weird 90-degree rotations. Lot’s of hoops to jump through just to have a zeroed out rotation for meshes/sub-meshes.

Hi there, In this blog you mention that iOS player minimum version is now 11, but in the release notes it says it is 10. Which is the correct minimum player spec for iOS as moving to a min of 11 will impact quite a few of our users.

Many thanks. Justin.

Hi Justin, the blog post is correct. iOS 11 is the new minimum spec for the player. We will fix the release notes. Thanks for spotting it.

As a former Plus subscriber I stand with Peter Mullins 100%. Unity hinted that in 2020 the dark theme will become the standard and yet still nothing. I will not return to Unity until the dark theme is available regardless of subscription level.

Great job on this release. Its fixed a couple of performance issues I’ve been trying to overcome on IOS, I’m now able to run my project smoothly at 60fps on an iPhone 6 (which is a first). I’ve tried building on every version since 5.6.6, I thought I was destined to be stuck on 2019.2.12 but this release out performs all the others!

Hello Liz, I understand your reaction as well as the aspect of my request can make believe to an other troll on this topic.
However, to be more serious, I have ophthalmic problems that are quite disabling. I’m not a professional developer and I spend a lot of time on simple tasks (hopefully VStudio has a dark theme). As a hobbyist I haven’t yet reached the stage of paid subscription, because I don’t even know if I’ll finish a complete project one day given the time I spend on it.
Switching to certain systems like MacOS dark mode, Dark Google, etc. has really allowed me to live better and spend more time on what I like to do.
So I don’t have any problem to side with trolls when it comes to bringing up a feature that is minor enough for everyone but can be major for some, especially when they didn’t choose it.
I wouldn’t complain if Ui’s editor was more free. After all, it’s not a big deal, it’s just a soft and there are others, but I just think it’s a shame at least.

I agree with Phi. People with chronic eye strain do exist. I’m using workarounds so I’m not in such a hurry, but it would sure be best if they finally released the theme. It’s stupid to put an accessibility feature behind a paywall.

Actually no. He should not stop.

It was cute when it started. Not anymore. Dark skin should become the default and people should really create some ruckus about it. This is ridiculous and shameful from Unity. Definitely not a joke anymore.

You’re right, phi. Using dark theme not only can reduce the luminance emitted by device screens but also improve visual ergonomics.

Good incremental update. It looks like you’re focusing more on stabilisation in 2020.1 seeing as there aren’t a ton of features. I know this is still some ways off, but are we likely to see a C#8 upgrade?

Also, given the extensive work Bolt has done with their visual scripting solution (especially Bolt 2), is a DOTS visual scripting tool really that necessary? Have you considered just bolting that onto Unity instead (sorry for the pun)

Yes, an ECS solution is necessary. For all Bolt and Bolt 2 offer, they’re still fundamentally limited to the old monobehaviour system

OpenGL ES gets removed? Can you please clarify if it’s getting deprecated universally or only just for iOS? Vulkan is still not that great on Android.

That is definitely just for iOS, sorry for the confusion! I’ve asked the team to clarify that part of our blog post.

I confirm that OpenGL ES depracation/planned removal is only on iOS. No plan to remove or deprecate any version of OpenGL ES on Android for 2020, although we encourage you to try Vulkan. it’s really getting better and better!
JC, from Mobile Product Management team

Huge streaming open worlds with large view distances, with floating point precision issues when trying to position them in the editor.
Not just talking about Unity Terrains either — I use real meshes for terrains, and not about to go voxel or Unity Terrain since I need fidelity on the shape of my terrain.

What is the timetable we’re looking at?

> Support for OpenGL ES is deprecated (since 2019.3) and we plan to remove it in Unity 2020.2

1. Are you aware that OGL ES is currently superior to Vulkan in terms of performance/robustness in Unity?
2. Are there short-term plans to improve Vulkan performance/robustness in Unity?

That only applies to iOS, sorry for the confusion! I’ve asked the team to clarify that part of our blog post.

Comments are closed.