[ECS]稀疏集
在 ECS 中,Entity 通常只是一个整数 ID,Component 则按类型分开存储。于是每一种 Component 都需要解决同一个问题:如何通过 Entity ID 快速找到数据,同时又能连续遍历所有 Component? 最直觉的做法是使用 Dictionary<int, T>。它确实能完成 Entity 到 Component 的映…
4 min read
Read article
DLSINNOCENCE / INDEX
在 ECS 中,Entity 通常只是一个整数 ID,Component 则按类型分开存储。于是每一种 Component 都需要解决同一个问题:如何通过 Entity ID 快速找到数据,同时又能连续遍历所有 Component? 最直觉的做法是使用 Dictionary<int, T>。它确实能完成 Entity 到 Component 的映…
2024 年 6 月,高考结束后,我们开始做一款二次元卡牌肉鸽游戏,玩法接近《杀戮尖塔》。核心团队只有三个人,其他工作找外包帮忙。我是主程序。项目没有单独的制作人,方向、功能和发售安排都由我们三个人一起决定,实际上三个人都承担了制作人的工作。 当时定的目标是开发一年,2025 年 6 月发售,销量做到 5 万份。实际发售时间是 2026 年 6 月,整整晚了…
我们知道,在 C# 中是不支持泛型特化的,这在使用中带来不便。在 C++ 中,我们可以通过 template<> 全特化或偏特化来为特定类型提供不同的实现,但 C# 的泛型系统在设计上选择了运行时具化(reification)而非编译期模板展开,因此没有原生的特化语法。 然而,在实际项目中,我们确实遇到了”对某个泛型类型参数提供专用逻辑”的需求。…
前些日子,在使用Roslyn时,发现unity屡屡崩溃。修复Roslyn多线程编译在Unity中产生崩溃的bug 报错日志 经过阅读日志得知,问题出在: 0x0000021F5FB8E2E6 (Mono JIT Code) (wrapper managed-to-native) System.Reflection.Assembly:InternalGetAs…