Shader效果 - 鱼鳞纹生成

发布时间: 2022年07月09日阅读数: 10

效果

鱼鳞纹路

实现思路

  • 确定A系列的圆的圆心距离,使用_DEBUG_DISTANCE_A 显示如下图
  • 同理,所有圆偏移坐标float2(0.5,0.5) 得 B系列的圆心距离
  • 基于圆心距离和给定半径确定出系列圆A和B,使用_DEBUG_RANGE_A显示如下
  • 根据鱼鳞层次优先级,确定A和B系列圆的显示访问,使用_DEBUG_SCALE_A显示如下
  • 给A和B系列圆上色并混合,使用_DEBUG_COLORAB显示如下
  • 两系列圆之间的缝隙需要填补,可以1 - scale_a - scale_b确定出范围并上色,得到最终效果:

代码

https://github.com/LazyunGame/ShaderEffects/blob/master/Assets/FishScaleShader/FishScale.shader