校园猫咪星图 · Campus Cat Star-map
中北校园在册的76只猫,做成了这片会转的星空:每只猫是一颗星,星色取毛色、星等看实拍次数、星位就是它真实出没的地方。点开星星是它的档案卡——昵称、军衔、工位、辨认特征、小传和实拍照片。
> 适用范围:档案数据仅覆盖中北大学(2026年8月实地普查的76只),别校查不到。星图玩法谁都可用;想给自己学校做一份,按第四节方法论整体复刻即可。
九月开学,这76颗星正好等着一届新生来认领:导出一张寻猫海报存进手机,按12大出没区把校园走一圈,猫认全了,路也熟了。
当前数据:中北大学,在册76只,实拍194张,2026-08实地普查。
一、60秒上手
在线版:浏览器打开 <https://gdfmdvcmsj.coze.site>,手机电脑都行,数据全部内嵌、零外部请求。
离线版:解压后双击 中北喵星图.html,断网、军训、机房照常跑,功能与在线版完全一致。
WorkBuddy 里唤起:输入以下任一短语——
- 中北喵星图 / 打开喵星图 / 中北猫咪档案
- 看看中北的猫 / 校园猫档案 / 猫咪图鉴
- 抽个喵签 / 喵图鉴 / campus cat star-map
- 喵星导览 / 实地寻猫 / 寻猫海报
二、玩法一览
- 入场即星轨:抵达地图的瞬间星系拉出2秒弧形光轨,自然收起后停驻等你交互;星轨模式可随时手动开启
- 看档案:点开星星,档案卡带照片缓动展开;搜索框认喵名、军衔、岗位、特征,无结果给可点的智能建议,照片加载时有星座徽记占位;毛色chips一键筛选橘系/狸花/三花/黑白
- 双端自适应:每秒实测帧率,手机/低配机自动切省电档(星系与星尘抽稀,切档弹提示、可手动换档并记忆);移动端默认均衡档起步、帧率富余自动升回完整,配底部快捷栏与陀螺仪视差,电脑端全特效
- 喵星指南:应用内帮助面板,「⋯」菜单点开,数据边界、三步上手、常见问题与边缘情况速览(黑屏/存储受限/导出受限等)即点即看
- 喵星导览:一键剧场,镜头自动飞过墩墩、玄铁、摔跤、陪练、初雪、独眼六位旗舰,字幕逐站讲解
- 今日喵签:每天抽一只猫加专属签文,同一天全站抽到同一只;签文可一键朗读
- 喵图鉴:亲眼见到就打卡,收集满10/30/50只放流星雨庆祝
- 实地寻猫:12大出没区逐区列出识别特征,一键导出竖版寻猫海报,存手机带去校园按图找猫
- 星图志看板:毛色星族分布、军衔金字塔、档案Top5,星域网络连线实证搭档猫
- 喵星分享卡:一键导出720×1000星海报
- 十二星宿:12大出没区升格为12座星座(守望者座、岁月座…),点亮后金色星线连出星座,点宿名听每座星官的故事,看成员星册
- 星尘变身:点开带照片的猫,星星炸开成一撮星尘粒子,再缓缓聚合成它的照片
- 本命猫测试:5道题测出和你同频的那只猫,生成专属结果卡可导出
- 表情包工坊:档案卡一键把猫照片做成梗图,12句预设文案("本喵今日不上班")或自定义字幕,导出PNG发群里
- 喵星护照:记录你遇见的猫和点亮的星宿,按进度授称号,一键导出护照长图;护照里还能备份进度码,换浏览器、换手机粘贴那串码就能原样找回图鉴和校准
- 喵星纪录片:导览时一键录屏成片,导出WebM直接发朋友圈
- 猫星主题曲:每只猫的数据谱成一段专属旋律,毛色定调式、名字定动机,Web Audio实时合成
- 季节限定:9-10月开学季星尘里飘金色落叶,11月到次年2月落初雪(大片雪花自带薄光晕)
- 彩蛋:桌面端鼠标是小彗星、访客彗星到访猫星域、天色按时辰渐变、星语环境音(默认关)
三、数据是真实的
194张照片逐张比对归并出76只:身份存疑一律不收录,宁可少一只,不放一只错的。071号夜拍画质不够直接弃用、编号空着;076和077判读矛盾双双出局。每一条取舍记在《归并决策摘要.md》里,欢迎抽查。
四、复刻到你的学校(方法论)
从实地普查、结构化名册、交互星图、位置校准到打包分发,这套做法可以整体搬到任何一所学校。
数据规范(猫咪名册.csv)
每只猫一条记录,字段和星图行为一一对应:
| 字段 | 说明 | 星图映射 |
|---|---|---|
| id | CAT-001 递增,跳号保留存疑位 |
稳定种子(位置随机、闪烁相位) |
| name / rank / title | 昵称 / 军衔 / 岗位 | 档案卡头部、搜索命中 |
| coat / coatGroup | 具体毛色 / 大组(橘、狸花、三花、黑白、其他) | 星色与筛选chips |
| features / area / bio | 辨认特征 / 出没区域 / 50-80字小传 | 档案卡正文 |
| photo / photoCount | 代表照相对路径 / 收录张数 | 卡片大图 / 星等与环绕光点 |
| brightness | 0.5-1.05 代表照明度 | 星点亮度 |
生成与校准流程
- 建图:底图用夜空暗化版校园地图,坐标为归一化
x,y ∈ [0,1]。 - 落位:
catPos优先级是 手动校准(localStorage) > CALIB固化表 > 种子随机。 - 校准:开"校准位置",拖拽星星到真实出没区,"导出校准数据"得到JSON,
把坐标誊进HTML内CALIB表并清掉localStorage,位置就固化了(解压即用,不依赖本地存储)。 - 落位约束:新星与既有星距离不低于0.05(归一化坐标);同一区域的猫相邻落位;
避开左侧山区、底部河流、右侧图例区。
视觉与性能要点
- 三相主循环:
intro(粒子汇聚成标题 + 三色极光幕帘)、fly(深空拉镜2.6秒)、live。 - 星系:三旋臂差速旋转、预渲染星云、毛色聚簇星云、实况天色、双层视差星尘、全程流星雨。
- 星轨长曝光:星系画在独立离屏层,轨迹缓冲只累积星系层(
lighter叠加+黑色透明衰减.018),
转速提至3.8倍、沉积加粗2.6倍拉出弧形光带;地景透明度降到38%作鬼影。千万别累积整帧,会把地图和UI糊成白雾。 - 星点:外晕、星芒、内辉三层发光,环绕光点数等于照片数,带呼吸微动。
- 性能:发光用sprite缓存;
dt步进防高刷屏加速;DPR不超过2。
互动实现要点
- 喵星导览是flyTo加setTimeout序列,零额外资源;轻触字幕跳下一站,任意开卡自动退场。
- 寻猫海报导出是纯矢量Canvas竖版PNG(不画照片和底图,规避file://画布污染)。
- 喵图鉴打卡与手绘校准存localStorage;喵签按
Math.floor(Date.now()/864e5)确定性抽取,同一天全站一致。 - 鼠标彗星(
pointer:fine才启用)缓动跟随、尾长随移速伸展;访客彗星贝塞尔路径掠过星域并短暂点亮,toast报信。 - 星语环境音WebAudio全生成(低频drone、LFO滤波、延迟回声、事件拨音),零音频文件。
- 十二星宿:同区猫分组后用Prim最小生成树连线(保证不交叉),悬停高亮+虚线流动;每宿一句星官故事硬编码在
CONST表。 - 星尘变身:开卡时把猫照片降采样成粒子网格(亮度阈值过滤暗部),先炸散后按缓动插值归位;file://画布污染时静默降级为普通开卡。
- 喵星纪录片:
canvas.captureStream(30)+MediaRecorder录WebM,纯前端零依赖;录屏中右上角红点呼吸提示。 - 本命猫测试:5题答案加权(毛色/夜型/外向/军衔四维)对全名册打分取最高,结果卡Canvas导出。
- 表情包工坊:照片居中裁方+底部渐变遮罩+描边字幕,预设12句梗文案可自定义;从卡片打开时先收卡再开面板(避免z-index遮挡)。
- 喵星护照:图鉴+星宿双进度算称号,Canvas画成护照长图导出;进度码把图鉴与手动校准打包成
MEOW1.前缀的Base64文本,粘贴回另一台设备即恢复。 - 主题曲:毛色映射五声音阶调式、名字字符哈希成动机音序,WebAudio振荡器实时合成,零音频文件。
- 季节限定:
new Date().getMonth()命中9-10月生成24片金叶粒子,命中11月-次年2月生成26片初雪粒子,其余月份零开销。
打包分发
中北大学—校园猫咪档案Skill/
├── SKILL.md 本文件
├── README.md 使用说明
├── 归并决策摘要.md 归并取舍记录
├── 中北喵星图.html 交付物,纯前端离线可用
├── 校园地图-夜空版-web.jpg 底图
├── data/猫咪名册.csv 数据源
└── assets/ 压缩照片 + 图标icon.jpg
打包时把HTML内../照片视频/这类外链重写为assets/photos/,只压缩实际被引用的照片(最长边1100、q80),控制zip体积。