大家好,我是 Cesium 酱(也可以叫我"本猿"),一名在 WebGIS 领域摸爬滚打多年的前端开发者。
上一回我们把一张业务台账撒成了满屏的点,那是从"数据"走向"地球"。今天——换一个方向,往地球上倒一片水,而且这片水得会动。
看完这篇你会得到什么:一个能在浏览器里跑起来的动态水面。你给它一串多边形边界坐标,它就长出一片会随时间起伏的水面——有波纹、有波光、有泡沫、有深浅变化,四个滑块实时可调,改完边界点一下「应用边界」立刻换地方。
为什么值得花时间在这上面:
- 这是本系列第一次自己写 Fabric 材质。前面几篇要么是调现成参数(地形夸张、影像卷帘),要么是接
PostProcessStage做全屏后处理(闪电、雾、雪、雨)——那些是"整屏滤镜"。今天这个是贴在几何体表面上的材质,是另一条路子。 - 顺带能摸清
MaterialProperty与Material的分工,这是"让材质随时间变化"在 Cesium 里的标准解法。 - 一套
hash → noise → fbm → 差分法线的程序化套路,挪一挪就能用在流动墙体、光幕、云层、熔岩上,不止是水。
前置条件:
- Node ≥ 18、支持 WebGL2 的现代浏览器
- Cesium ^1.144(本仓库锁定的版本)