我正在寻找.Net中的数据结构,它保持异构结构在内存中连续,以便对cpu-cache友好.
这个类型的数据结构在这个博客中解释:T-machine.org在Iteration 4.
在.Net中,值类型(结构)数组使数据在内存中保持连续,但这仅适用于非泛型数组.我试图创建一个ValueType[],但结构框是盒装的.因此,引用在内存中是连续的,而不是真实的数据.
经过多次尝试,我认为在.Net中本身不可能.我看到的唯一可能的解决方案是手动管理字节数组中结构的分类和反序列化,但我不认为它会是高性能的.
你找到了原生解决方案吗?我的更好的解决方案?
编辑1:我正在尝试实现T-Machine.org博客中描述的实体组件系统.
我正在尝试创建动画,其中小部件从其容器外部移动到其最终位置。
像这样:
或类似这样的内容(在“ 选择练习”屏幕中):
我不知道容器内部的最终位置(由容器计算,例如网格,行,列等)。
我认为我需要一个知道其在屏幕上位置的小部件。一个叠加层,用于在容器上方绘制动画并设置容器中两个小部件的不透明度动画。我在正确的轨道上吗?