呼吸的城市
空气看不见,但城市在呼吸。12 座全球城市的实时空气质量数据驱动一万两千粒粒子——空气清新时它们翡翠色地舒展飘浮,重度污染时暗红色地密集挣扎。每一次切换城市,都是一次跨越经纬度的深呼吸。
关于作品
我们每天吸入一万两千升空气,却从未看见它的颜色。《呼吸的城市》将全球 12 座城市的实时空气质量指数(AQI)翻译为一个由一万两千粒粒子构成的有机体。空气优良时(AQI ≤ 50),粒子稀疏而硕大,翡翠绿的光点在球壳上自由漂浮,呼吸频率缓慢而深沉;空气恶化时(AQI > 200),粒子急剧收缩、密集聚拢,暗红色的微尘在狭小空间里挣扎,呼吸变得急促而沉重。粒子的颜色、大小、密度、扩散半径和呼吸频率全部由 Open-Meteo Air Quality API 返回的 US AQI 实时驱动。城市切换时,所有参数平滑过渡(LERP 插值),视觉变化如同一次跨越经纬度的呼吸转换。右上角的数据面板展示当前 AQI 数值、PM2.5/PM10 浓度和 24 小时 AQI 趋势迷你图。你可以自由旋转 3D 视角,感受不同城市空气的「重量」。
功能介绍
- Open-Meteo 实时空气质量数据(12 座全球城市,每 10 分钟刷新)
- 12000 粒子 GLSL Shader 呼吸动画(球壳分布 + Perlin Noise 扰动)
- AQI → 五级视觉映射(颜色/大小/密度/半径/呼吸频率)
- 城市切换平滑过渡动画(LERP 插值)
- 24 小时 AQI 趋势迷你图(Canvas sparkline)
- OrbitControls 自由旋转 3D 视角
- 环境浮尘粒子背景层
- 数据缓存机制避免重复请求
使用说明
- 页面加载后自动获取北京的实时空气质量数据
- 底部城市按钮切换 12 座全球城市
- 观察粒子颜色和密度变化感受不同城市的空气质量
- 拖拽旋转 3D 视角、滚轮缩放
- 右上角面板显示 AQI 数值、PM2.5/PM10 浓度
- 24H AQI TREND 迷你图展示全天空气质量变化