一个网站从静止的画面开始,又在每一次滚动、阅读和聆听中,慢慢有了自己的节奏。这篇制作札记记录当前可运行的部分,也留出仍待完成的空间。
让画面有前后,也有呼吸
窗边、桌前、草地和星空现在各自拥有独立背景与透明主体。镜头由同一滚动进度驱动,近处的材质经过镜头时,才切换到下一幅构图。反向滚动可以沿原路径返回。
发丝和布料在局部网格中轻微运动,面部与手部区域保持固定。这里使用的是明确标注的 AI 辅助重建素材和网页二维网格,并非原作者分层工程,也不是完成绑定的 Cubism 模型;最终艺术审核仍待进行。
让阅读留下清楚的路标
文字来自真实 CMS。目录由已保存的标题生成,代码在服务器排版,复制按钮等待浏览器给出真实结果。下面这段示意代码表达了播放器的结构;它不是可直接替换整个应用的完整实现。
type Track = { id: string; title: string }
function openTrack(track: Track, audio: HTMLAudioElement) {
audio.src = `/api/music/${encodeURIComponent(track.id)}/stream`
return audio.play()
}
// Keep the same audio element in the shared site layout.
// Handle rejection and route changes in the persistent owner.给一段声音,留一个位置
测试音乐是一段原创合成器乐,未取用听歌排行里的商业录音。叠加几个正弦分量,可以得到最基础的合成音色:
音乐的播放时间属于全站同一个 audio 元素。打开 Blog 或 Projects 时,页面内容可以改变,正在播放的声音继续前进。波形与频谱也应反映真实数据,并在不需要时停止绘制。
制作继续,边界也清楚
当前验证环境是 Windows 上的本地 Chromium 浏览器。正式 Live2D 文件、可公开的 CAD2GIS 演示数据、正式曲库授权与真机性能仍需单独交付和检查。一个可运行的里程碑,是继续打磨的起点。


