【DOTS学习笔记】核心包环境安装与工具概览

目录

  • 前言
  • Unity版本
  • 最简单的环境安装方法
  • 编辑器界面发生的变化
    • Preferences
      • Entities
      • Jobs
    • Project Setting
      • DOTS
      • Burst AOT Setting
    • 编辑器菜单
      • Jobs
      • Component
      • Window
    • 编辑器界面的变化
    • Profiler
  • 核心包学习路线


前言


本文是Metaverse大衍神君的《DOTS之路》系列课程的学习笔记

Unity版本


目前DOTS1.0还是预览版,仅支持再Unity2022.2.0b8以上的Beta版本运行

最简单的环境安装方法

  • 打开Unity2022.2.0b8以上的版本
  • 点击Windows->Package Manager->左上角的加号->Add Package by name
  • 输入com.unity.entities然后点击添加按钮
  • 等待安装完成后,就是DOTS1.0的基础运行环境了

这样就会把DOTS的核心包

  • Collections
  • Mathematics
  • Jobs
  • Burst
  • Entities
    全都安装上了,而这些核心包的依赖包也都安装好了

编辑器界面发生的变化


Preferences


多出了一个Entities和一个Jobs的标签

Entities


关于Entities的一些编辑器设置被罗列在其中
包括编辑器新增的

  • SystemWindow
  • Entities Hierarchy Window
    的一些设置

这里还包括Entities 日志报告
Baking功能
以及Entities缓存设置等等

Jobs


包含对Jobs核心包的一些调试与检测的设置

Project Setting


多出了一个DOTS标签与一个Burst AOT Setting标签

DOTS


设置DOTS Baking排除哪些Assemblies

Burst AOT Setting


不同平台下Burst编译器AOT相关设置

编辑器菜单


Jobs

多出了一个Jobs菜单项
下拉列表中是Burst编译器的一些工具
包括

  • Burst编译器编译时的安全性检查
  • 并行同步编译
  • Native调试模式
  • 等等
    其中Burst Inspector将是我们会经常用到的,查看编译指令优化的重要工具

Component

在Component菜单下多了一个DOTS子菜单
里面的选项是用来将gameObject对象转换为Entity
不过这个是DOTS暂时保留的旧接口
DOTS1.0中已不推荐使用,可以忽略

Window


多出一个Entities子菜单
下面是Entities的一些工具窗口,包括

  • Hierarchy
  • Components
  • Systems
  • Archetypes
  • Journaling

编辑器界面的变化


Inspector的右上角多出了一个小圆点
这个圆点有三种形态代表处于当前处于哪种数据模式:

  • 纯灰色(处于Authoring)
  • 纯橙色(处于Runtime)
  • 灰点橙芯(处于Mixed)

Profiler


多出了Entities Memory和Entities Structural Chang两个模块
分别用来记录DOTS下Entity相关内存分配和使用情况
以及运行时Entities发生Structural Change的事件

核心包学习路线


  1. Job System:学习如何将主线程逻辑转移到Job线程中并行执行。
  2. Unity Collection:学习在Job System中与Burst编译生成代码使用访问非托管类型数据结构。
  3. Create entities:学习使用代码、场景、Prefab来实力化Entities对象
  4. Entities queries:学习批量处理Entities对象
  5. System:学习在主线程代码调度Jobs处理Entities对象