1

我目前正在开发 C++ 中的游戏引擎等等,我这样设计了我的游戏对象:

每个数据组件在内存中连续分配,并被推送到它们所属的管道中。在运行时,每个模块都会计算它们拥有的数据组件列表。

数据:

爱爱爱

渲染渲染渲染

物理学物理学物理学

foreach ai in AI
   computeAI(ai);
foreach render in Render
   computeRender(render);
foreach physics in Physics
   computePhysics(physics);

问题是:如果它们是由多个模块使用的数据组件怎么办?例如实体的位置。在每个模块中加载它们对缓存行是否致命?

你有什么建议来改进这样的设计吗?或者我应该使用另一个?

非常感谢 !

4

0 回答 0