【发布时间】:2018-11-10 23:23:08
【问题描述】:
我正在制作一个非常简单的 2D 游戏引擎,并且我正在重做我的实体,使其工作起来有点像 Unity 的系统。我一直在研究实体-组件-系统设计模式 (ECS) 的工作原理,并且开始更好地理解它。
据我了解,ECS 中的 组件 仅保存数据,除了保留该数据之外无能为力。这些组件随后被用于读取和操作其数据的系统使用。
这让我产生疑问,在 Unity 中附加到游戏对象的 MonoBehaviour 脚本在技术上是否是系统,而不是在 Unity 编辑器中调用的组件?
如果我弄错了,我认为分析 ECS 的真实实现对我有帮助。我正在用 Java 编码,所以如果有人有任何用 Java 或 C# 实现的 ECS 系统示例,那将是非常棒的,因为我看到的大多数示例都是用 C++ 编写的,这对我来说有点难以理解。
谢谢!
【问题讨论】:
标签: java unity3d components entity composition