Open3

Unity DOTS(ECS)を頑張る

ピン留めされたアイテム
Otokami_OrokabuOtokami_Orokabu

やることやらないこと

  • 説明関連は気が向いた時に追加する
  • releaseバージョンではあるが、仕様変更が頻繁なため使用バージョンを確認する事
    • 関連する機能群が多いため記述方法は検討中
Otokami_OrokabuOtokami_Orokabu

DOTS

  • Data-Oriented Technology Stackの略

JobSystem

  • Unityの提供するマルチスレッドの仕組み

参考資料

https://docs.unity3d.com/ja/2023.2/Manual/JobSystem.html
https://docs.unity3d.com/6000.0/Documentation/Manual/JobSystem.html

Burst Compiler

  • Job Systemのコードを最適化てくれる仕組み
  • Job Systemと組み合わせて使うため、Burst単体では使えない
  • 難しい話をするとJob SystemのコードをILに変換して、実行時にCPUに合わせた効率的に最適なバイトコードを生成してくれる仕組み
  • 小難しい話は、一旦説明しないので気になる人調べて...

https://docs.unity3d.com/ja/Packages/com.unity.burst@1.8/manual/getting-started.html
https://docs.unity3d.com/Packages/com.unity.burst@1.8/manual/getting-started.html

ECS(Entities)

  • Entity Component Systemの略
  • ECSはデータと処理を効率的に管理するためのシステム
  • プロセッサの性能を最大限に引き出すことができ、全体的な処理速度が向上が見込める
Otokami_OrokabuOtokami_Orokabu

ECS(Entities)

関連パッケージ

  • Unity Physics
    • Entitiesで物理演算を扱う仕組み
    • 微妙に既存の物理演算と異なるらしい
  • Entities.Graphics
    • SubSceneでRenderingするのに必須コンポーネント

ポイント

  • SubScene
    • Entitiesの処理が行われる専用のScene単位
    • 通常のSceneと組み合わせて使用する
      • ただし通常のSceneと処理そのものが異なるため取り扱いに注意がそこそこ必要
    • SubSceneでの計算はSubSceneの中でしか影響し合わない
      • 例えば当たり判定
  • SubScene内での編集はイマイチエラーが出るので通常シーンでGameObjectをセットアップしてからSubSceneに持ち込むのが良いかも