Repository navigation
Releases
v0.2.12 — 会转的云层、极光、星空视差
在 v0.2.11 的动效基础上再加三样:
- 行星表面云层自转:用 numpy 渲染出一张无缝平铺的云带贴图(1024x256,WebP 29KB 内嵌),以 96s 一圈的速度横向滚动;贴图层被限制在球体圆内,并用径向遮罩朝夜面淡出,所以不会照亮暗侧、也不会露出球缘。
- 极光带:球顶两条柔和绿青色辉光,34s 一次在 -3% → +3% 之间缓慢扫动并明暗呼吸。
- 星空视差分层:拆成远近两层,远层 260 颗、76s 缓慢漂移;近层 64 颗更亮、27s 更快漂移 —— 两层速度差形成视差。
- 云层与极光同样纳入「静谧」模式的暂停列表和 prefers-reduced-motion 保护。
v0.2.11 — 会动的星球背景
把场景里所有动画速度提上来,肉眼可见在动:
- 星球上下浮动 18s(原 64s),幅度加大
- 星环缓慢摇摆 40s
- 星云漂移 52s / 68s(原 150s / 190s)
- 星空缓慢平移 44s + 更多星星闪烁(每 3 颗一颗,3.4s 周期)
- 卫星漂浮 22s(原 96s)
- 流星每 9s 划过一次(原 17s)
- 窗口不可见时仍然全部暂停,省 CPU
v0.2.10 — 卫星挪到侧边栏旁的空白区
卫星移到工作区列表右侧的空白区(left 16% / top 34%,12.5vmin),与截图圈出的位置对齐。
v0.2.9 — 月球也是真实球体
左上角卫星改为渲染球体贴图(陨石坑、定向坑缘明暗、limb darkening),尺寸 8.6vmin→11.5vmin,位置 left 26%→18%、top 12%→9%,不再像一块方形色块。
v0.2.8 — 真实球体贴图
星球改用 numpy 渲染的真实球体贴图(Lambert 光照、终止线、limb darkening、夜面环境光),以 22KB WebP data URI 内嵌;不再依赖 CSS 渐变堆叠。
Install: npm i github:lianghui32/dsh-theme-blue-planet 或从最新 release 下载 tarball。
v0.2.7 · 先查什么问题:轮廓和终止线
先说诊断,再说改法。
为什么之前看着不像球
- 几何上它一直是正圆(实测布局 617×617),但球的暗侧亮度只有 12–19,而背景是 31 —— 轮廓比背景还暗,边缘就「消失」了,眼睛只能看到中间那团亮斑,自然读不出球体。
- 明暗终止线太软:从亮到暗摊了 120px 宽的渐变,没有边界感。
这一版怎么改
- 全周加一圈冷光轮廓(inset 环 + 外侧 1px 亮线 + 外层柔光 + 一圈更暗的分离晕),球的外缘在深色背景上也有明确边界
- 终止线收紧:44% 之前全透明,52% 才开始压暗,68% 就基本全黑,形成看得见的昼夜分界
- 暗部从 #010b18 提到 #0b2b48,不再和背景糊在一起
- 亮面外扩(0/8/18/30/44% 五档提亮),受光半球更完整
- 云团模糊与不透明度再降(0.18),不抢轮廓
实测(1936×1056 真实界面):背景 31 → 球内暗侧 71 → 亮面 rgb(157,169,174),三个层次拉开,轮廓清晰可辨。
v0.2.6 · 球是圆的了
「不圆」不是半径算错,是聊天栏那层半透明底色有一道笔直的右边线,正好从球上切过去,看着就像被裁掉一块。
- 聊天栏底色改为全透明:星球不再被切成两半,明暗从球心往边缘连续过渡,圆得很干净
- 星球缩到 60vmin 并完全放进窗口(right 1vmin / bottom 1vmin),整颗球连下缘都在画面内
- 月亮固定在左上 26% / 12%,不再贴着侧栏边缘
顺带说明月亮位置为什么变了:0.2.3 我把它从 13% 挪到 24%,原位置正好被 280px 的侧栏挡住。
v0.2.5 · 球更亮、更实、雾气更少
在 v0.2.4 找到并修掉外框 62% 底色之后,这一版继续把画面调实:
- 外框底色再降到 10%,行星和星环透出来更干净
- 球面渐变重新收紧:亮面更集中在右上,明暗终止线更利落,暗侧回到深蓝而不是糊成灰雾
- 云带 / 云团模糊与不透明度下调(bands 0.40、clouds 0.26),星球不再像一团雾
- 行星缩到 66vmin 并上移,整颗球(含底部边缘)都在窗口内;边缘加了一圈冷光轮廓
真实界面 1936×1056 实测:亮面 rgb(112,124,130),左侧暗侧 rgb(3,15,30),球体与星环边界清晰。
v0.2.4 · 找到真正的原因:外框那层 62% 的底色
之前几个版本一直在调行星本身,其实问题不在行星。
诊断结果(在真实界面里读取 DOM 堆叠):行星上方压着一层覆盖整个窗口的应用外框 *_frame,它带 ~62% 不透明度的深色底。整幅背景被它乘到只剩 38% 亮度 —— 星星、星云、行星一起变暗,所以无论怎么调球面渐变,看到的就是一颗灰黑球。
v0.2.4 把这层外框底色的不透明度从 62% 降到 20%,行星、星环、云带、星云一次性都亮出来了;侧栏和正文面板各自保留自己的深色底,长文阅读不受影响。
- 真实界面(1920×1040 最大化)实测:行星亮面亮度从 59 提升到 97,整颗球体和星环清晰可见
- README 的预览图换成真实界面截图,不再用理想化预览
v0.2.3 · 亮面移到右侧,真正看得见
把光源从行星左上来到了右上:
- 之前行星亮面正好落在中间聊天栏后面,1920 宽窗口下只剩暗面轮廓,看着像「没生效」。现在亮面移到右上,落在聊天栏右侧的空白区,抬眼就能看到球体和星环。
- 明暗终止线、边缘暗化、云带、星环同步翻到右侧,阴影方向保持一致。
- 行星略微上移,月亮从侧栏后面挪到可见区域。