7
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Unity】DOTSを少し試そうとしただけなのに2時間無駄にしないための備忘録

Posted at

序文

Unityを2019.3に上げたこともあり、噂のDOTS(ECS?)とやらを試そうとしました。
しかし、なぜかオブジェクトが消えるなー、重力で落ちてるんかなー、うまくいかんなーと2時間くらい詰まったので、同じ轍を踏む人が減ることを願って記事化しました。

結論

Package Manager から Hybrid Renderer をインストールしてください。
image.png

Entities や Unity Physics だけインストールして満足しないでください。

そのおかげで、公式チュートリアルの通りにやっても実行と同時に画面上ではオブジェクトが消えてしまい、色々調べたりで彷徨ってしまいました。

最初は Physics 的な設定が出来ておらず、オブジェクトが奈落の底に落ちて消えていると勘違いしてしまいました。実際のところは従来のUnity EditorにはDOTSの描画機能が備わっておらず、別途packageのインストールが必要だったという訳です。

一応やったことも記す

環境は Windows10/Unity 2019.3.0f6 です。

UnityのシーンにDOTS的なオブジェクトを配置して Unity Physics で物理演算させます。

packageのインストール

  • [Windows]->[Package Manager]からPackage Managerを開き、[All packages] として [Advanced] から Show preview packages をonにします。

image.png

  • Entities を選択し、[Install]します。

    • 当時のバージョンは 0.5.1 でした
  • Unity Physics を選択し、[Install]します。

    • 当時のバージョンは 0.2.5 でした
  • Hybrid Renderer を選択し、[Install]します。

    • 前述のとおり、本記事の肝です
    • 当時のバージョンは 0.3.3 でした

シーンに配置する

staticな Cube に落ちてきた Sphere が衝突して軌道を変えるという何の面白みもないシーンを作ろうと思います。

physics.gif

内容はほぼ公式チュートリアルに準拠しています。

static なオブジェクトの配置

  • Hierarchy から右クリックで[3D Object]->[Cube]で Cube を生成します。
  • Cube を選択し、Inspector から Box ColliderRemove Component します。
    • image.png
  • Physics Shape を Add Component します
    • image.png
  • この時、警告ぽい表示が出ますが、 Convert To EntityAdd Component すると消えます。
    • image.png

ここで配置したCubeは動かない静的なオブジェクトになります。床などを配置したいときはこのように設定すると良いようです。

dynamic なオブジェクトの配置

  • Hierarchy から右クリックで[3D Object]->[Sphere]で Sphere を生成します。
  • Sphere を選択し、Inspector から Sphere ColliderRemove Component します。
  • Physics ShapeAdd Component します。以下の様に、Shape Type を Sphere とします。
    • image.png
  • Physics BodyAdd Component します。以下の様に、Motion Type を Dynamic
    とします。
    • image.png
  • Cube と同様に Convert To EntityAdd Component します。

あとはいつも通り再生すると Sphere が落ちて Cube に衝突します。例では少し Cube を傾けてます。
なお、再生中は Hierarchy から Cube と Sphere が消えて DebugStream.DrawComponent なるものが代わりに現れます。
Cube と Sphere の情報が見たければ、[Windows]->[Analysis]->[Entity Debugger] から情報が見れます。
image.png
(見方がわからん...)

まとめ

チュートリアルも前提情報を省いてたりするので油断なりませんね。
引き続き勉強しようと思います。

7
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?