NUnity講座おすすめナビLEARNING MATERIALS CATALOG
Unity の上級開発者向け Data-Oriented Technology Stack(DOTS):教材案内カード(書影ではありません)

MATERIAL / 書籍

Unity の上級開発者向け Data-Oriented Technology Stack(DOTS)

配列処理をジョブへ切り出す段階と、Entity・Component・Systemへデータ構造を変える段階を区別し、自作プロジェクトで何を移すか判断する。

公式の掲載情報を見る ↗

著者・講師と制作担当

公式PDFの著者・制作協力者欄を確認。制作協力は原資料の「貢献者・寄稿者」を含む。日本語版の翻訳担当者は明記されていない。

担当確認:確認済み / 2026-10-10。名前からプロフィールと関連教材へ進めます。

担当表記の出典
著者・講師一覧を見る →

PDFはUnity 2022 LTS版、現行の公式サンプルはUnity 6.2/関連パッケージ1.4。本文とサンプルのバージョンをそろえて使う必要がある。

言語と日本語への対応

日本語訳PDFの説明本文を確認。コード、API名、Editorの画面名や一部の図・見出しには英語が残る。翻訳品質の全頁校正は未実施。 今回照合した日英PDFはUnity 2022 LTS版。

Unity公式配布ページから取得した英語PDF『Introduction to the Data-Oriented Technology Stack for advanced Unity developers』の表紙・目次・説明本文を確認。日本語PDFのp.4付近にあるDOTSの性能上の利点、パッケージ、対象読者の説明が英語版に対応しており、英語原資料の日本語訳と判断。

提供本文の言語:日本語

具体的に何を学び、何を作るか

公式の公開目次・概要をもとに、制作の流れを要約しています。

  1. Jobsは処理の実行単位と依存関係

    pp.9–12。UnityコアのJob Systemを、NativeArray<float>のInputとOutputを乗算するIJob例で説明する。Schedule、Complete、先行ジョブへの依存を読み、メインスレッドがデータを安全に再利用できる時点を区別する。ジョブはファイル/ネットワークI/O用の仕組みではない。

  2. Burstは選んだコードを最適化する

    pp.12–15。同じ配列処理へBurstCompileを付ける例と、FindNearestの計測図を掲載。Burstが扱うC#の範囲、マネージオブジェクトの制約を説明し、Collectionsの明示的なDisposeとNative/Unsafeの違い、Mathematicsのベクトル型へ進む。掲載時間はその例の観測値。

  3. ECSはデータのまとまりを変える

    pp.15–19。同じComponentの組をArchetypeへまとめ、Chunkの配列をQueryで走査する。MonsterMoveSystemの移動処理を、SystemAPI.QueryによるループとIJobEntityによる並列ジョブの例で示し、JobsやBurstそのものとECSの構造を区別する。

  4. Bakingで編集用と実行用を分ける

    pp.20–22。EnergyShieldAuthoringの最大HP・回復遅延・回復速度を、BakerがEnergyShieldのIComponentDataへ写す例を掲載。SubScene内のGameObjectをそのままランタイムに使うのではなく、ベイクされたEntityデータを読み込む関係とストリーミングを説明する。

  5. 基本サンプルからゲーム的な処理へ

    pp.22–24。HelloCubeはEntityの生成・破棄とComponentの追加・削除、Kickballはカプセル操作とボール生成・キックを示す。TanksはJobsとEntitiesで戦車・砲塔・砲弾を扱う。Firefightersはボットのバケツリレーによる消火で、前のサンプルを終えた上級者向けと案内する。

  6. Entities Graphicsは描画への接続

    p.25。Entities GraphicsはBatchRendererGroupを基盤に、URP/HDRPでEntityを描画するComponentとSystemを提供する。紹介サンプルはライトプローブ、ライトマップ、マテリアル値の上書き、LODを扱う。ECSのデータ構造やJobsの実行機構とは別の役割。

  7. 物理・ネットワークの入口を選ぶ

    pp.26–28。Physicsの衝突・ジョイント等を概観し、Networked Cubeではサーバー接続、同期Entityの生成、Editor内実行と単独ビルドへの導線を示す。ECS Network RacingやCharacterControllerも紹介するが、それら全体の実装手順を本書が収録するわけではない。

  8. 既存作品へどこまで移すか判断する

    pp.29–30。Burstジョブへの部分的な書換えは、アンマネージコレクションとのデータ移送も検討する。Entitiesはプロジェクト全体のコード構造へ影響しやすく、GPUが主なボトルネックならCPUの効率化だけで解決するとは限らない。2024年春のアニメーション・UI連携例も区別する。

  9. 付録でメモリと設計の理由を読む

    pp.37–48。割り当て・GC、マルチスレッド、CPUキャッシュ、オブジェクト指向のコストを補う。pp.45–47ではデータを先に設計し、処理を変換の段階へ分け、各段階を測る考え方を説明する。教材末尾の概念整理であり、追加の完成ゲーム演習ではない。

ほかの教材と比べるポイント

編集上の案内:PC・コンソール最適化ガイドは既存の各システムを広く点検する。本書はデータ配置と並列処理、ECSの設計モデルそのものを理解するために選ぶ。

目指す成果

  • 編集上の学習目標:Jobsは処理の実行と依存関係、Burstはコードのコンパイル、EntitiesはデータとSystemの設計、Entities Graphicsは描画接続として説明する。
  • 編集上の学習目標:GameObjectの編集データがBakerを介してEntityへ変わる流れと、Queryからジョブへ進む例を対応付ける。
  • 編集上の学習目標:計測済みのCPU処理を部分的に移すか、新規ECS構成を検討するかを、データ移送・既存アセット・描画環境と合わせて判断する。

必要な知識・準備

  • 公式は上級Unity開発者向けと明記。編集上の目安:C#・MonoBehaviourでの制作経験、CPU/GPUの区別、配列・構造体・メモリ管理の基本。
  • コード例を追う前に、ジョブの依存関係とCompleteの意味、Nativeコレクションの明示的な解放を確認する。通常のマネージオブジェクトをそのままBurst内で扱える前提にしない。
  • 書籍はUnity 2022 LTS版。2026-10-10に再確認した公式サンプルのREADMEはUnity 6.2/Entities・Netcode・Physics・Entities.Graphics 1.4を指定しており、本文の版に自動で一致する教材ではない。

収録範囲と注意点

  • PDFは2022 LTS版だが、リンク先EntityComponentSystemSamplesの確認時点のREADMEはUnity 6.2とEntities/Netcode/Physics/Entities.Graphics 1.4を指定している。
  • 本書に載るロードマップや将来予定は刊行時点の情報。現在の対応機能・APIは利用するパッケージ版の資料を確認する。
  • Jobs/Burstだけの部分導入と、Entitiesを使うECS設計への移行は同じ作業ではない。アンマネージデータへのコピー、依存関係、既存のGameObject・アセットとの接続コストも必要になる。
  • Burstが対象とするのはC#の一部。本書はマネージオブジェクトへのアクセス制約を説明する。通常のMonoBehaviourコード全体が属性追加だけで高速化される教材ではなく、FindNearestの掲載msや性能差も他作品の改善保証ではない。
  • 版指定の補足:Entities Graphics 1.0公式manualはUnity 2022 LTSのURP/HDRPを対象とし、Built-in Render PipelineとWebを非対応、URPはForward+のみと記す。これは本書の描画前提を読むための1.0版条件であり、現行1.4等の全機能条件として転用しない。
  • p.29のAnimateGameObjectによるアニメーション連携やFirefightersでのUI Toolkit連携は、本文に明記された2024年春の状況。現在の未対応機能一覧としては扱わない。
  • 本文の短いコードとサンプル紹介、関連する公式文書を確認した範囲での案内。全コードのコンパイル、サンプルの実行、実機ベンチマーク、全ページの技術校正は未実施。

内容確認に使った公式資料

この教材が合いそうな人

編集上の案内:CPU側の計算・大量オブジェクト処理に課題があり、DOTSをどこまで採用するか決めたい経験者。単にECSのAPIを暗記するより、データ配置・依存関係・描画との接続を整理したい場合に合う。

始める前に確認すること

公式は上級Unity開発者向けと明記。 編集上の案内:C#・MonoBehaviourでの制作経験と、メモリやCPU負荷の基礎知識を推奨。

学べる範囲と選ぶときの注意

Unity 2022 LTS版の概念・採用判断ガイドで、API詳細は対象外と明記。一方、本文pp.11–21には配列乗算、モンスター移動、シールドのBakerという短い例があり、pp.22–29は外部サンプルへの入口を整理する。多数Entityの完成ゲームを順に作る実装講座ではなく、サンプル実行や計測は今回行っていない。

サポート・付属データ

日本語PDFを登録なしで取得可能。本文はHelloCube、Kickball、Tanks、Firefighters等のコード・解説動画・Unity Learnへ案内し、各サンプルのReadme確認を求める。公式リポジトリの現行READMEではJobs/Entities/Physics/NetcodeのDOTS 101資料を確認できる。書籍専用の固定サンプル一式、個別質問対応は未確認。サンプルのGit/ZIP取得と実行は行っていない。

学んだ後の小さな練習

編集上の提案:既存作品のCPU負荷を一つ測り、配列処理をJobs/Burstへ切り出せるか、データの出し入れも含めて考える。ECSへ進むならEditorとパッケージ版をそろえ、HelloCubeで生成・破棄を確認してからTanksやFirefightersへ進む。

出典と確認範囲

内容確認:2026-10-10。各出典に確認日を記載しています。受講・通読レビューではありません。向く人や学習後の練習は編集部の提案です。

Unity Technologies/Unity Japanの公式掲載ページ

価格は確認時点の参考表示です。セール、提供条件、サポートや対応版は変わる場合があります。未確認は「提供なし」を意味しません。

次に見るページ

教材の選び方 対応版を確認する 別の教材と比べる

選んだ教材を比較