目前更新了新版ECS,移步新文章
国内2022-3-17更新了ECS 0.50版本,目前unity2020.3版本可以用,2021会报错;
安装
manifest.json添加下面三行
"com.unity.entities": "0.50.0-preview.24",
"com.unity.rendering.hybrid": "0.50.0-preview.24",
"com.havok.physics": "0.50.0-preview.24",
注意
- 需要urp或hdrp,Hybrid Renderer升级到V2,且不支持内置渲染管线;
详情查看文档:
https://docs.unity3d.com/Packages/com.unity.rendering.hybrid@0.50/manual/creating-a-new-hybrid-renderer-project.html - Hybrid Renderer新版本需要设置RenderMesh的layerMask,不然屏幕上不显示物体;
- Burst启用Enable Compilation后,不支持单例模式,需要关闭;
Demo脚本
新建场景,挂载StartBehaviour.cs,直接运行
Component
HeightComponent.cs
using Unity.Entities;
namespace Component
{
public struct HeightComponent : IComponentData
{
public float InitiateHeight;
public float MaxHeight;
}
}
SpeedComponent.cs
using Unity.Entities;
namespace Component
{
public struct SpeedComponent : IComponentData
{
public float Speed;
}
}
System
RotationSystem.cs
using Component;
using Unity.Entities;
using Unity.Mathematics;
using Unity.Transforms;
using UnityEngine;
public partial class RotationSystem : SystemBase
{
protect