[ECS]稀疏集
在 ECS 中,Entity 通常只是一个整数 ID,Component 则按类型分开存储。于是每一种 Component 都需要解决同一个问题:如何通过 Entity ID 快速找到数据,同时又能连续遍历所有 Component? 最直觉的做法是使用 Dictionary<int, T>。它确实能完成 Entity 到 Component 的映射,但 ECS 的 System 往往会在每一帧遍历成千上万…
Notes from the space between shipping games and understanding systems: implementation details, hard-won lessons, and ideas still in motion.
在 ECS 中,Entity 通常只是一个整数 ID,Component 则按类型分开存储。于是每一种 Component 都需要解决同一个问题:如何通过 Entity ID 快速找到数据,同时又能连续遍历所有 Component? 最直觉的做法是使用 Dictionary<int, T>。它确实能完成 Entity 到 Component 的映射,但 ECS 的 System 往往会在每一帧遍历成千上万…
2024 年 6 月,高考结束后,我们开始做一款二次元卡牌肉鸽游戏,玩法接近《杀戮尖塔》。核心团队只有三个人,其他工作找外包帮忙。我是主程序。项目没有单独的制作人,方向、功能和发售安排都由我们三个人一起决定,实际上三个人都承担了制作人的工作。 当时定的目标是开发一年,2025 年 6 月发售,销量做到 5 万份。实际发售时间是 2026 年 6 月,整整晚了一年。项目经历了大约一年半的集中开发,前后拖了两年。 销量倒…
兴许我们还有机会一同吹风,看着同样的晚霞,互道一声晚安。 你明白我的性格,不愿去赘述陈词滥调。但,无论如何,都很难生出亵渎之意。 如果我是理想主义者,那么我最热忱、不渝的理想便是你。可惜我不是,兴许不完全是。如果我是现实主义者,那么我或将极尽严辞来否定你。 ——但我也不是。所有事物都有永恒的内在矛盾,我的所谓名为思想之物也有着矛盾,难以调和的矛盾。 有人为我这种思想取名为”浪漫现实主义”,不清楚ta是否知道这名字与文…
我们知道,在 C# 中是不支持泛型特化的,这在使用中带来不便。在 C++ 中,我们可以通过 template<> 全特化或偏特化来为特定类型提供不同的实现,但 C# 的泛型系统在设计上选择了运行时具化(reification)而非编译期模板展开,因此没有原生的特化语法。 然而,在实际项目中,我们确实遇到了”对某个泛型类型参数提供专用逻辑”的需求。本文介绍一种利用扩展方法 + 重载解析优先级来模拟泛型全特化…
前些日子,在使用Roslyn时,发现unity屡屡崩溃。修复Roslyn多线程编译在Unity中产生崩溃的bug 报错日志 经过阅读日志得知,问题出在: 0x0000021F5FB8E2E6 (Mono JIT Code) (wrapper managed-to-native) System.Reflection.Assembly:InternalGetAssemblyName (string,Mono.MonoAs…
著名科学家卢斯为了检查学生对进位制的理解,他给出了如下的一张加法表,表中的字母代表数字。 例如: 其含义为: (L+L=L),(L+K=K),(L+V=V),(L+E=E) (K+L=K),(K+K=V),(K+V=E),(K+E=KL) ⋯ (E+E=KV) 根据这些规则可推导出:(L=0),(K=1),(…
曾经发明了信号增幅仪的发明家 SHTSC 又公开了他的新发明:自动刷题机——一种可以自动 AC 题目的神秘装置。 自动刷题机刷题的方式非常简单:首先会瞬间得出题目的正确做法,然后开始写程序。每秒,自动刷题机的代码生成模块会有两种可能的结果: 1.写了 x 行代码 2.心情不好,删掉了之前写的 y 行代码。(如果 y 大于当前代码长度则相当于全部删除。) 对于一个 OJ,存在某个固定的正整数长度 n,一旦自动刷题机在某…
小 A 在完成一天的刷题计划之后打开了一款游戏。 在这个游戏中,每个角色有 n 种技能,每种技能有 p[i] 个等级,技能的不同等级对应了不同的能力值,其中第 i 个技能如果升级到 j 级的话,那么该技能的能力值就变为 w[i][j],第 i 个技能升级一级需要的技能点数为 c[i]。 小A 当前的技能点数为 m,你的任务就是使用不超过 m 的技能点数,让角色 n 个技能的能力值之和最大。 注意,刚开始时,每个技能的…
Luogu题目链接:https://www.luogu.org/problem/P1588 思路:有三种走法,x+1,x-1,x*2 可以宽搜做此题 x坐标+1 x坐标-1 x坐标*2
No articles match this view.