首页
学习
活动
专区
工具
TVP
发布

ECS初探

乍一听,觉得ECS就是完美啊,就跟当年他们教我OO时,给我举例子做UI一样,各种继承,各种多态,简直完美啊。...不管怎么样,即然大家都在吹ECS,它肯定是有过人之处的。 抱着试试看的态度,我模拟把我们游戏的客户端逻辑使用ECS进行落地。 第一关就给我难住了,Component到底该如何拆分,拆分粒度是多大。...的模型很像,只是ECS模式约束更严格,System之间不允许相互调用。...这样只要我能定精准定义好每个结构的字段的含义,各种逻辑都根据数据的含义来执行相应的计算就好了,模块之间大幅解耦,我想这也是贴近ECS模型的一种实现。同样它也不是ECS,因为逻辑模块之间有相互调用。...不管怎么样,我打算先实现一个Lua版的简易ECS框架,真实体验一把再说。毕竟没有使用就没用发言权。

8.1K20
您找到你想要的搜索结果了吗?
是的
没有找到

Unity手游实战:从0开始SLG——ECS战斗(一)ECS设计思想

面向数据的编程 从17年到现在,ECS在游戏程序员里应该是急速膨胀的话题,有很多很多优秀的文章都介绍过ECS了。...用ECS插件, jobs System burst编译器等技术内容,来打造一个DOTS的开发理念。 所以扯了这么多,ECS究竟是什么?...现在知道如何标识Entity,那么接下来如何创建呢?如下: ? 代码展示了,创建100个对象,前面50个是狗,后面50个是猪,并且他们都有尾巴。...现在ECS都有了,怎么协同工作?如下: ? 这里的演示没有考虑性能和设计,只是展示了这个部分的组合工作。前面我们创建了100个Entity,然后用一种方式收集所有的尾巴,交给尾巴的System去摇。...ECS的问题 虽然ECS设计初衷是为了解决预测和回滚,但是现在的游戏(包括Unity的演示和推广)都是推荐用来处理大批量数据的(展示性能优势)。

12.4K30

UE5的ECS:MASS框架(二)

前面一篇说了Mass框架的内存结构,也就是ECS中的Entity和Component,也用了一个很简单的示例说明Entity和Archetype怎么创建和销毁。...这一篇会主要讲解Mass具体的执行,也就是ECS中的System内部的执行原理。...这样,Query就可以作为ECS中的System这一角色负责执行了,下面是一个非常简单的例子,一共创建了100个Float类型的Entity,200个Int32类型的Entity,150个Float+Int32...也就是初始化时候调用的(CDO除外),所以我们可以把Query放到继承的Processor成员变量里,只要Processor创建出来了,Query只会创建一次并缓存在Processor中。...其实UE和Unity的ECS一样,也有历史问题,有了ECS那原来的那些GameObject怎么兼容?原来场景里的这些UObject,那些Actor怎么兼容?

6.3K50
领券