【问题标题】:How can i add custom behavior using pure ECS (Entity Component System) in Unity?如何在 Unity 中使用纯 ECS(实体组件系统)添加自定义行为?
【发布时间】:2019-01-14 23:08:25
【问题描述】:

我们目前正在制作我们的梦想游戏,其中包含数千个快速死亡的僵尸。 问题是 - 我们正在为移动设备制作它。

混合 ECS 是不够的,因为即使是 100-200 个低多边形僵尸,即使经过最终优化,渲染也很重。

解决方案是仅使用纯 ECS。关注此tutorial 我现在可以在低端设备上以 40-50fps 的速度生成 2-3k 僵尸。

但是,我坚持添加行为。我只是不能在每个实体上添加它。以本教程为例 - 如何为每个立方体添加自定义行为,如 AI 脚本/系统?

我尝试在其上添加“系统”,但它仅适用于您用于获取副本的 GameObject。

附:我不想使用外部 ECS 框架,因为我确信在未来 Unity 内置 ECS 将是最终的“从盒子”解决方案。

【问题讨论】:

    标签: unity3d


    【解决方案1】:

    你没有。使用 Unity ECS,您可以注册系统。系统在附有某些组件的实体上工作。例如。您可以创建一个处理所有僵尸的系统(例如,所有具有“僵尸”组件的实体)并在每个滴答声中为它们执行一些逻辑。 ECS 的诀窍是您不会单独处理每个实体,而是为共享某些标准的所有实体运行逻辑。这就是为什么它如此之快,但它需要在精神上放弃单一行为方法。我发现本教程有助于开始实际实现逻辑:http://infalliblecode.com/unity-ecs-survival-shooter-part-1/

    它不是 100% 最新的,但应该足以让您了解 ECS 的运行方式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-03-06
      • 1970-01-01
      • 2013-07-21
      • 2017-10-21
      • 2012-11-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多