[找不到就问]游戏开发中的 ECS 经验请教?

2021-01-04 16:29:40 +08:00
 lights

目前是游戏开发,公司采用 ECS 思想做架构,但参考 Entitas 与云风大佬的博客,会觉得我或者我所在的公司对 ECS 的理解有些不够
云风大佬的博客分享的干货不少,但想问问还有没有更多的经验分享呀

我遇到的具体问题:

我所在的公司是 ECS 与 OOP 混合的做法,所以会有一些混乱

*游戏开发的 ECS 与 ECS 云服务重名,spam 严重,很难在 V 站搜到,所以我特意加了 游戏 ECS *有没有专门的 ECS 开发交流群呀

1427 次点击
所在节点    问与答
11 条回复
opengps
2021-01-04 16:34:21 +08:00
先往简单里理解,ECS 只是一台虚拟机。
然后再往架构里理解,ECS 可以轻松的横向拷贝机器数量,来实现负载均衡下的动态增加承载量。
云弹性架构,往简单里去理解,也就这么点东西,往复杂里理解,还可以延伸出很多云产品,这类问题可以跟我聊聊,上云的入门级问题我应该能答上来不少
opengps
2021-01-04 16:35:39 +08:00
看博客介绍,ECS 一词似乎有些歧义,对于 ECS 游戏框架和 ECS 云服务器,建议区分下
lights
2021-01-04 16:36:50 +08:00
@opengps #2 标题中有游戏开发呀
opengps
2021-01-04 16:43:56 +08:00
@lights 好吧,无视我的 1#2#回复,我对游戏开发不在行,如果是 socket 通信层那么会有一点共同话题
ryV60s
2021-01-04 17:19:04 +08:00
1. 你说的参数应该是个单独的 Component,只需要一个单独处理这个 Component 的 System 就行
2. ECS 的 System 就有点类似订阅和分发了,有它自己的执行顺序
3. 策划不懂 ECS
lights
2021-01-04 17:46:26 +08:00
@ryV60s #5
策划的部分,主要是我们是做 roguelike 游戏,需要策划调整数值和编排玩法,但 ECS 设计下的系统,不知道要在哪一部分让策划介入

只是管理数值的话(表格管理 component 数值),太简单了,不够 rogue,而让策划编排 system,又感觉哪里不太对
ryV60s
2021-01-04 18:15:52 +08:00
@lights #6 策划只提需求,只配表,不会关心你们的具体实现,更不会去了解什么 System 。

程序要做的只是把策划的需求细分,整理出不同的模块,做到能让策划随意组合起来用。
(至于是配表组合还是单独写编辑器组合看策划需求了)
Go1c
2021-01-04 18:31:23 +08:00
不说引擎的吗? unity 可以单独使用部分 dots 技术,逻辑 UI 还是面向对象要香。如果全套 ecs 的话 有点痛苦
lights
2021-01-05 09:33:51 +08:00
@Go1c #8
ECS 与游戏引擎是独立的呀
levelworm
2021-01-05 10:12:27 +08:00
Google 里头一大把呀,搜 ECS game programming 好了
lights
2021-01-05 11:56:26 +08:00
@levelworm #10
啊,忘了这茬,我也搜一搜,感谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/741568

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX