Unity Weekly 244
Unity Officials
Graphics memory optimizations for DX12, Vulkan and Metal
Graphics memory optimizations for DX12, Vulkan and Metal - Technical Articles - Unity Discussions
Direct X12やVulkan、MetalなどのモダンなグラフィックスAPIについて、メモリ使用量の増加がGPUパフォーマンスを低下させる主な原因であることに対して、Unityが取り組んでいる最適化や、これを解決するための一般的なテクニックについて解説しています。
このディスカッションでは、GPUのメモリアーキテクチャの概要からメモリ使用量がGPUパフォーマンスを低下させる原因の説明から、メモリ使用量を増加させる主な原因からその対策、 Direct X12向けの対応としてTight Buffer Alignmentのサポートや最適化されたスクラッチバッファ、BLAS圧縮などを用いたレイトレーシング向けのメモリ使用量の削減、 各APIのネイティブレンダーパスレンダーパスの対応などを紹介しています。
また、グラフィックス周辺のメモリ使用量を確認するためのテクニックとしてMemoryProfierによる簡易的な確認からGPUベンダーが提供するプロファイラーの利用を紹介しています。
Now Available: Unity Hub 3.15.0-beta.1
Now Available: Unity Hub 3.15.0-beta.1 - Unity Engine - Unity Discussions
Unity Hub 3.15-beta.1のリリースをアナウンスするディスカッションです。
このバージョンでは、要望の多かったプロジェクトの表示名やプロジェクト検索の改善などの機能が改善されています。
Announcing Unity Core Standards (Early Access)
Announcing Unity Core Standards (Early Access) - Unity Engine - Unity Discussions
Unityのパッケージシステムに対して新たに導入される予定の「Unity Core Standards」について紹介するディスカッションです。
「Unity Core Standards」によってそれぞれのパッケージに署名が適用され、Unity 6.3以降のパッケージマネジャーではその署名情報を確認できます。
この仕組みは、Unity Asset Storeのアセットパブリッシャーにも新しくUPMによるのパブリッシング形式を採用することで適用されるとのことで、これによりパッケージの互換性要件や依存関係が自動で解決されたり、パッケージに対しての署名がパッケージマネジャー上で確認できるようになります。
Unity Gaming Services tutorial series, part 1: Introduction
Unity Gaming Services tutorial series, part 1: Introduction - Technical Articles - Unity Discussions
Unity Gaming Services(UGS)の新しいチュートリアル動画を紹介するディスカッションです。
「Gem Hunter Match – Cloud Edition」というサンプルゲームに対して「プレイヤーログイン」や「アプリ内課金」、「リワード広告」などをUGSを用いて実装する方法を紹介していく動画で、YouTube上で全10パートに分けて公開される予定です。
ここで利用されるサンプルゲームは、GitHub上でも公開されています
🎉 Netcode for GameObjects v2.6.0 is now publicly available!
🎉 Netcode for GameObjects v2.6.0 is now publicly available! - Unity Engine - Unity Discussions
Netcode for GameObjectsのv2.6.0のリリースをアナウンスするディスカッションです。
主な追加機能として、SceneManager.Scene.handle
の内部ラッパーとしてNetworkSceneManager
が実装され、Scene.handle
をintで表現していた箇所がすべてNetworkSceneManager
に置き換えられています。
また、NetworkList
に現在の値と前の値が等しい場合でも強制的に更新を処理するオプショナルパラメータを持つSet関数が追加されています。
パフォーマンス改善として、NetworkVariable
とNetworkBehaviour
コンポーネント周辺のパフォーマンスが向上しています。
CHANGELOG全文はこちらから確認できます。
Articles
2D で大量の草を生やす
2D Rendererで描画されている草を大量に効率よく描画するためのテクニックを紹介しています。
Unityにいくつか存在する大量描画を行うためのAPIについてそれぞれ概要とBatchRendererGroup
を採用した理由の紹介から、
BatchRendererGroup
の基本的な使い方、このAPIを2D Rendererに対応するためのSprite Lit
シェーダーの改良、2D描画の整合性を担保するための描画タイミングの制御方法についてそれぞれ解説しています。
Playable APIを使ってAnimationとUIを連携させてみる
【Unity】Playable APIを使ってAnimationとUIを連携させてみる – 株式会社ロジカルビート
UIコンポーネントを制御する独自の PlayableBehaviour
を実装し、Playable APIを用いて AnimationClip
によるアニメーションとタイミングを同期して再生する方法について紹介しています。
フキダシUIを作ろう、それもテキストに応じて伸びるやつな
【Unity】フキダシUIを作ろう、それもテキストに応じて伸びるやつな【ハンズオン, LayoutGroup, LayoutElement】
文字数が可変した時にUIのサイズが動的に変わるような吹き出しUIを実装するためのLayoutGroup
やLayoutElement
の各種設定方法について解説しています。
switch式によるパターンマッチの網羅性チェック
[Unity] switch式によるパターンマッチの網羅性チェック
*.rsp
ファイルを編集することでswitch式に対しての網羅性チェックの警告をコンパイルエラーにして、ケースを網羅しないとコンパイルが通らないような設定方法について紹介しています。