1
pabupa OP 而且最神奇的是 cpu 和 gpu 的负载都不大。而同类型的游戏 anno1800 ( 3d 的),不仅负载高,而且内存和显存全都占满。
|
2
cest 2021-01-03 13:07:42 +08:00
负载不大?
1 核有难,15 核围观吧 另外 dev 认为最大 bottleneck 是 ram 频宽 改 multithread 收益也不大 |
3
VZikl1 2021-01-03 13:08:14 +08:00 via Android
factorio 用的 allegro 引擎吧
|
4
fuxiuyin 2021-01-03 13:27:09 +08:00
感觉异星工厂应该是基于物品的,每一帧应该是先计算物品移动,然后就能知道有多少机械爪需要计算,之后就知道有哪些制造工厂需要更新,这样想算下来每一帧的计算量也不大。物品也不是每一帧都需要计算全部的,有些物品在传送带上卡着,前面的不动就肯定不会动。
|
5
himself65 2021-01-03 13:33:49 +08:00 1
|
6
himself65 2021-01-03 13:37:28 +08:00 3
补充#2 的多线程
https://www.factorio.com/blog/post/fff-215 这篇文章里说了多线程互相窃取 cache 甚至会让程序跑的更慢,最后说有良好的数据结构再用多线程会更好 |
7
secondwtq 2021-01-03 13:44:33 +08:00 via iPhone
Anno 1800 和 Factorio 是”同类型”的么……
|
8
himself65 2021-01-03 13:52:16 +08:00
@pabupa 和 Factorio 同类型的游戏应该是 Rimworld 和 Prison Architect 这种(从开发角度),不过 Prison Architect 明显已经放弃治疗了
|
9
Girlphobia 2021-01-03 13:52:46 +08:00 via Android
|
10
himself65 2021-01-03 13:55:35 +08:00
|
11
secondwtq 2021-01-03 14:04:19 +08:00 1
@himself65 #6 我怎么看怎么感觉他说的是 false sharing,然后说祖传引擎不好改,干脆就弃疗了
说白了还是一核有难七核围观 ... |
12
learningman 2021-01-03 14:06:53 +08:00
有人跟我说过,现代 CPU 近似认为每秒执行一亿次运算
|
13
Revenant 2021-01-03 17:15:24 +08:00
之前就一直听说异星工厂的多核优化不好,很吃 CPU 主频
千瓶流水线和万瓶流水线是两个世界 |
15
chenyu8674 2021-01-03 20:26:08 +08:00
|
16
honjow 2021-01-03 21:08:19 +08:00 via iPhone
单核游戏🌚
|
17
shad0walk 2021-01-04 09:52:23 +08:00
实例化吧,一个 mesh,N 个 instances
|