13.Unity ShaderGraph API(LWRP绘制各种形状,Procedural>Sharp)

本文介绍了Unity ShaderGraph API用于在LWRP中绘制各种形状的方法,包括圆形、长方形、圆角长方形、五边形和中空圆形。通过节点如Ellipse、Rectangle、Rounded Rectangle、Polygon和Subtract等,详细阐述了如何创建和组合这些形状,以及如何应用阴影、反色和排列绘制等效果。

Node:Ellipse
绘制圆形
Node:Rectangle
绘制长方形
Node:Rounded Rectangle
绘制圆角长方形
Node:Polygon
绘制五边形
Node:Subtract
绘制中空圆形
绘制多个形状
绘制带阴影的形状
反色
Node:UV
Node:Reciprocal
Node:Modulo
排列绘制


Node:Ellipse

基于输入的UV坐标和指定的Width和Height生成一个椭圆形状;生成的形状可以通过Tiling And Offset Node进行偏移或者平铺;这个节点只可以在片段着色器阶段工作的时候使用。

端口信息
在这里插入图片描述
代码生成

void Unity_Ellipse_float(float2 UV, float Width, float Height, out float4 Out)
{
   
   
    float d = length((UV * 2 - 1) / float2(Width, Height));
    Out = saturate((1 - d) / fwidth(d));
}

绘制圆形,Graph

在这里插入图片描述
Ellipse指定宽带和高度绘制一个形状,Out应该是float4,显示的是float类型,显示有问题
为什么连线到Color而不是Position端口?是因为我们只要显示相关形状,而不是裁剪到一个形状


Node:Rectangle

基于输入的UV信息和指定的大小宽度和高度生成一个矩形;生成的形状可以进行偏移和平铺通过连接Tiling And Offset节点;这个节点只可以使用在片段着色器中。

Ports
在这里插入图片描述
代码生成

void Unity_Rectangle_float(float2 UV, float Width, float Height, out float Out)
{
   
   
    float2 d = abs(UV * 2 
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值