|
ECS架构是针对游戏行业专门提出来的一个框架,它是专门为游戏逻辑编写设计的一种架构,你到其它的行业,
这个模式可能不那么使用,可是在游戏里面非常实用。因为游戏世界是大量的游戏物体的运算和迭代。
一个游戏角色:寻路,导航,AI,攻击,被攻击,技能buff等,而游戏世界里面每个角色基本都是由这些功能组合而成。
所以我们可以把一个游戏角色看作是一个Entity, 而每个功能需要的数据,我们可以看作是ComponentData, 而完成这些特定的功能,我们看作是System, System 算法使用ComponentData迭代计算,就不用管到底是来自哪个实体了,哪个实体要哪个功能加一个对应的ComponentData然后再进入System迭代即可。所以将复杂的游戏世界的设计变得非常的扁平化管理。
这个就是大型的游戏公司都采用ECS来做大项目的原因就再这里,相比传统庞大的继承体系,这个会更有优势和更好维护。
ECS 更好追踪性能,每个功能独立迭代,到底游戏世界里面按个功能迭代占用的时间多少我们都能很方便的找到和快速的定位。比如,整个系统AI迭代,用了多少时间,都非常方便的能计算出来。
ECS还有很多其他的优点,这里就不过多的讲解了。具体可以看看下面这个视频教程
两小时搞懂ECS架构 |
|