日期:2026-09-27 ~ 2026-09-29
构建次数:7 次(09-27)+ 11 次(09-29)
下载 App
《变成黑洞》开发日志第 4 期 · 3D 自转、进化链扩展与撞击反馈
本期进展
1. 真 3D 自转(09-27)
有玩家反馈「天体看起来像圆盘在转,不像球体」。
问题在于原来只是平面贴图旋转:贴图在圆内转圈,看起来就是一张纸在转。
重写后的做法是把表面特征(陨石坑、大陆、云团)建在单位球上:
- 出生时在单位球面撒 N 个特征点
- 每帧按自转角绕自转轴旋转
- 再做轴倾角倾斜
- 最后正交投影到屏幕(屏幕位置 = 中心 + (X,Y) × 半径)
关键点:光照方向固定在屏幕空间(左上方),不随天体旋转。这样自转时「表面在转、明暗面不动」—— 这才是真球体。
2. 进化链从 9 阶扩展到 13 阶(09-29)
原来 9 阶太粗,「行星」一阶跨度太大。扩展为:
碎石 → 陨石 → 小行星 → 原行星 → 矮行星 → 类地行星 → 海洋行星 →
气态巨行星 → 冰巨星 → 恒星 → 红巨星 → 恒星级黑洞 → 超大质量黑洞
每一阶都单独生成一张表面贴图,不再共用 —— 因为之前相邻两阶看起来太像,玩家分不清自己在哪一阶。
3. 撞击反馈三件套(09-29)
原来撞击几乎没反馈,吃起来「没手感」。加了:
| 效果 | 说明 |
|---|---|
| 撞击闪光环 | 撞击点炸开扩散的亮环,缓出扩散 |
| 定向溅射 | 碎屑沿撞击法线喷出锥形,不再是纯径向爆散 |
| 距离衰减震屏 | 按撞击点到玩家的距离平方衰减,远处互吞不震屏 |
问题与风险
渲染尺度失控(反复踩坑):恒星半径到 160+ 时,十字星芒 sr × 2.4 会拉成横贯屏幕的光柱。给所有「按半径等比放大」的视觉元素加了上限。
Game.lua 涨到 2400 行:单文件过大,维护成本明显上升,需要尽快拆分。
下期计划
- 补全真实天体演化链(中子星等)






