GLSL 效果示例
噪声溶解:让图像从裂口消失,边缘带一圈火光
阈值控制消失进度,第二个窄区间控制火线宽度。
在线示例
修改右侧代码,左侧预览会实时更新。
观察什么
阈值控制消失进度,第二个窄区间控制火线宽度。
实现原理
一个阈值决定是否保留像素,紧贴阈值的第二个区间负责火边。把二者分开后可以独立控制进度和边缘宽度。
找到控制效果的代码
float n=fbm(uv*9.);float threshold=u_parameter;float mask=step(threshold,n),edge=(1.-smoothstep(threshold,threshold+.07,n))*mask;vec3 base=palette(uv.x+uv.y*.3);c=mix(c,base,mask)+vec3(1.,.28,.04)*edge;
动手修改
把火边上界 threshold+.07 改成 threshold+.15。阈值附近仍存活的更多像素会变橙色,火边变宽,但被遮罩移除的像素不变。
调试与成本
消失遮罩与火边共用一次求值的 fbm(uv*9.)。在最终输出前暂时设 c=vec3(mask);,可把黑白保留判定与火边额外叠加的亮度分开检查。