GLSL 效果示例
Voronoi 裂纹:让石板沿细缝透出亮光
只点亮细胞交界处,可分别调裂缝宽度和亮度。
在线示例
修改右侧代码,左侧预览会实时更新。
观察什么
只点亮细胞交界处,可分别调裂缝宽度和亮度。
实现原理
取最近和次近细胞距离的差作为裂缝近似,只有差接近零的边界发亮。
找到控制效果的代码
float d=cellEdge(p*4.);float glow=exp(-d*(12.+40.*u_parameter));c=vec3(.08+.07*noise(p*20.))+vec3(1.,.28,.05)*glow;
动手修改
把参数从 0 调到 1,exp(-d*(12.+40.*u_parameter)) 会让宽光晕收成细亮缝。单元边界位置不变,因为输入仍为 p*4.。
调试与成本
cellEdge 检查 3×3 邻域,近似求最近两个种子距离的差。把 cellEdge(p*4.) 改成 cellEdge(p*2.),裂纹单元会增大一倍,但仍只搜索同样九个邻居。