UnityShaderLab 实现程序化形状(一)

1.实现一个长宽可变的矩形:

代码:

cpp 复制代码
    fixed4 frag (v2f i) : SV_Target
    {
           return saturate(length(saturate(abs(i.uv - 0.5)-0.13)))/0.03;
    }

2.实现一个半径可变的圆形:

代码:

cpp 复制代码
 fixed4 frag (v2f i) : SV_Target
 {
        return   (distance(abs(i.uv - 0.5),0)-0.36)/0.06;
 }

3.实现一个可变圆环:

代码:

cs 复制代码
  fixed4 frag (v2f i) : SV_Target
  {
         return abs((distance(abs(i.uv - 0.5),0)-0.36)/0.06)-0.76;
  }

参考链接:

Unity 3D ShaderGraph Tips and Tricks - Circles and Rings #1 (youtube.com)

Procedural Shapes ShaderGraph tutorial for Unity (youtube.com)

相关推荐
NIKITAshao9 小时前
Unity URP Volume组件详解(笔记)
unity·游戏引擎
lingxiao1688812 小时前
WebApi详解+Unity注入--下篇:Unity注入
unity·c#·wpf
世洋Blog12 小时前
面经-CPU、内存、GPU的性能优化
unity·性能优化
lingxiao1688814 小时前
WebApi详解+Unity注入--中篇:.net core的WebAPI
unity·c#·.netcore
weixin_4239950018 小时前
unity 处理图片:截图,下载,保存
java·unity·游戏引擎
呆呆敲代码的小Y21 小时前
【Unity实战篇】| 游戏轮播图效果,多种实现思路及完整教程
游戏·unity·游戏引擎·实战·游戏开发·轮播图·u3d
小南家的青蛙1 天前
O3DE社区发布2510.1版本
游戏引擎·图形引擎
示申○言舌1 天前
Unity高性能参数差异化URP Shader圆角圆环UI进度条
ui·unity·游戏引擎·圆环进度条·参数差异化·材质参数独立·圆角圆环
一只一只1 天前
Unity之协程
unity·游戏引擎·协程·coroutine·startcoroutine
NIKITAshao2 天前
Unity 跨项目稳定迁移资源
unity·游戏引擎