基于Unity2019最新ECS架构开发MMO游戏笔记4
官方案例解析5
- 官方案例解析5
- 5. SpawnFromMonoBehaviour
- 小结
- DOTS 逻辑图表
- 更新计划
- 作者的话
- ECS系列目录
- ECS官方示例1:ForEach
- ECS官方案例2:IJobForEach
- ECS官方案例3:IJobChunk
- ECS官方案例4:SubScene
- ECS官方案例5:SpawnFromMonoBehaviour
- ECS官方案例6:SpawnFromEntity
- ECS官方案例7:SpawnAndRemove
- ECS进阶:FixedTimestepWorkaround
- ECS进阶:Boids
- ECS进阶:场景切换器
- ECS进阶:MegaCity0
- ECS进阶:MegaCity1
- UnityMMO资源整合&服务器部署
- UnityMMO选人流程
- UnityMMO主世界
开始之前的准备工作: 0下载Unity编辑器(2019.1.0f1 or 更新的版本),if(已经下载了)continue; 1下载官方案例,打开Git Shell输入: git clone https://github.com/Unity-Technologies/EntityComponentSystemSamples.git --recurse
or 点击Unity官方ECS示例下载代码 if(已经下载了)continue; 2用Unity Hub打开官方的项目:ECSSamples 3在Assets目录下找到HelloCube/5. SpawnFromMonoBehaviour ,并打开SpawnFromMonoBehaviour 场景
这个案例演示了我们如何使用预设游戏对象来生成实体和组件,场景将由此生成一大堆旋转的方块对,下面一起来一探究竟吧:
- Main Camera ……主摄像机
- Directional Light……光源
- Spawner……旋转方块生成器
我们注意到RotatingCube不见了,取而代之的是一个Spawner生成器,原来旋转的方块儿被做成预设Prefab了,被Spawner上的Spawner_FromMonoBehaviour脚本引用,下面我们来看一下这个脚本是如何生成实体和组件的:
///
/// 生成旋转的方块儿实体以及其组件
///
public class Spawner_FromMonoBehaviour : MonoBehaviour
{
///
/// 旋转的方块儿预设
///
public GameObject Prefab;
public int CountX = 100;
public int CountY = 100;
void Start()
{
// Create entity prefab from the game object hierarchy once
//一次性从游戏对象层级中创建实体预设
var prefab = GameObjectConversionUtility.ConvertGameObjectHierarchy(Prefab, World.Active);
//缓存实体管理器
var entityManager = World.Active.EntityManager;
for (var x = 0; x
关注
打赏
热门博文