SuperAPI AI 工具集

webgl-laser

设计与创作

查看项目

更新于 10-15 20:21

技能介绍

用途:为网页添加固定的全屏 WebGL 激光背景效果,作为纯视觉层存在于页面内容之后。

主要能力:细窄竖光束,内芯接近白炽白,外围是较窄的品牌色光晕;围绕光束集中分布的柔和烟雾状云絮;整体为暗色电影感场域,颜色克制、取自页面主色;光晕缓慢呼吸脉动,无强烈闪烁或色彩循环。

使用方式:在页面中放置 <canvas class="laser-canvas" data-webgl-laser> 元素,并把内容包在更高层级容器中;画布样式建议 position: fixed、inset: 0、z-index: 0、宽高 100vw/100vh、pointer-events: none。通过 CSS 变量(如 --brand-accent)读取品牌强调色,用 hexToRgb01 转为 0–1 的 RGB 传入着色器。使用原生 WebGL 全屏四边形渲染,顶点着色器输出 UV,片元着色器计算光束核心、光晕、散射与 FBM 烟雾。调用 initWebGLLaser(canvas, options) 初始化,返回清理函数;在 resize 时同步 u_resolution,用 u_time 驱动动画。

可调参数:xOffset 控制光束水平位置;coreWidth 与 glowWidth 分别控制内芯与光晕宽度,内芯需极细;smokeDensity、FBM 缩放、漂移速度、散射宽度与边缘衰减控制烟雾;maxDpr 控制性能开销,必要时可减少 FBM 迭代次数。

适用场景:需要在深色、电影感页面中做品牌色氛围光效的背景层。

限制与注意:核心应保持近白,光晕与雾使用主强调色,避免硬编码蓝色;不要在已使用其他渲染器时强改结构;避免把光束做成粗霓虹柱、做全屏泛雾或粒子爆炸、多彩霓虹背景;画布必须设置 pointer-events: none,否则会拦截鼠标交互;开启 prefers-reduced-motion 时停止动画;前景内容可读性优先于光晕与雾效;需提供清理函数释放缓冲区与程序。具体收费、平台与效果未提供。