Cesium 实战 31 - 卫星通信效果(闪电)功能
- 核心代码
- 1. 闪电着色器
- 2. 构建 Primitive
- 参数说明
- 完整代码
- 实现要点
- 1. fabric.source 支持辅助函数
- 2. 闪电效果的数学原理
- 3. noise 函数的 smoothstep 插值
- 在线示例
卫星通信闪电效果是一种动态发光连接线,模拟卫星与地面站之间的电磁波通信。使用FBM分形噪声叠加反比例辉光着色器,通过PolylineMaterialAppearance的fabric.source自定义 GLSL 实现。
本文包括核心代码、完整代码以及在线示例。
核心代码
核心实现:ODLine type=5 原始着色器(constantShader.odElectricMaterialAppearanceType),包含 random / noise / fbm 三个辅助函数。
本文所有代码均直接包含在 HTML 中,无需额外引入 JS 文件。
1. 闪电着色器
2D Perlin 噪声 + 4层 FBM + 反比例辉光:
constELECTRIC_SHADER