DLSINNOCENCE / INDEX

Archive

2026

4 articles
游戏开发

[ECS]稀疏集

在 ECS 中,Entity 通常只是一个整数 ID,Component 则按类型分开存储。于是每一种 Component 都需要解决同一个问题:如何通过 Entity ID 快速找到数据,同时又能连续遍历所有 Component? 最直觉的做法是使用 Dictionary<int, T>。它确实能完成 Entity 到 Component 的映…

4 min read Read article
游戏开发

原计划一年的游戏,我们怎么做了两年?

2024 年 6 月,高考结束后,我们开始做一款二次元卡牌肉鸽游戏,玩法接近《杀戮尖塔》。核心团队只有三个人,其他工作找外包帮忙。我是主程序。项目没有单独的制作人,方向、功能和发售安排都由我们三个人一起决定,实际上三个人都承担了制作人的工作。 当时定的目标是开发一年,2025 年 6 月发售,销量做到 5 万份。实际发售时间是 2026 年 6 月,整整晚了…

10 min read Read article
随笔

致亲爱的

兴许我们还有机会一同吹风,看着同样的晚霞,互道一声晚安。 你明白我的性格,不愿去赘述陈词滥调。但,无论如何,都很难生出亵渎之意。 如果我是理想主义者,那么我最热忱、不渝的理想便是你。可惜我不是,兴许不完全是。如果我是现实主义者,那么我或将极尽严辞来否定你。 ——但我也不是。所有事物都有永恒的内在矛盾,我的所谓名为思想之物也有着矛盾,难以调和的矛盾。 有人为我…

2 min read Read article
游戏开发

C#中的泛型特化

我们知道,在 C# 中是不支持泛型特化的,这在使用中带来不便。在 C++ 中,我们可以通过 template<> 全特化或偏特化来为特定类型提供不同的实现,但 C# 的泛型系统在设计上选择了运行时具化(reification)而非编译期模板展开,因此没有原生的特化语法。 然而,在实际项目中,我们确实遇到了”对某个泛型类型参数提供专用逻辑”的需求。…

3 min read Read article