Shader物体渲染前置效果(即:不被前面物体遮挡)

1、首先要关闭深度测试和深度缓冲写

2、把队列(Queue)改成Transparent +200,这个的意思是在透明队列之前显示

3、把渲染序列改成TransparentCutout,这个支持透明完事即可

转载于:https://my.oschina.net/u/2874878/blog/732395

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要编写一个在 Unity Universal Render Pipeline (URP) 中不被任何物体遮挡的着色器,你可以使用 URP 的 Shader Graph 工具来实现。下面是一个简单的步骤指导: 1. 打开 Unity 编辑器,确保你已经安装了 URP 插件。 2. 在项目资源中,右键点击并选择 "Create" -> "Shader" -> "Universal Render Pipeline" -> "PBR Graph",创建一个新的 PBR Graph。 3. 打开创建的 PBR Graph,你将看到一个图形编辑器界面。 4. 在编辑器界面的左侧面板中,选择 "Master" 节点,然后在右侧面板中选择 "Unlit" 选项,这将创建一个无光照的着色器。 5. 接下来,在编辑器界面的左侧面板中,选择 "Output" 节点,然后在右侧面板中选择 "Albedo" 选项,这将设置着色器的输出为表面颜色。 6. 现在你可以在编辑器界面中添加自定义节点,以实现不被任何物体遮挡效果。例如,你可以添加一个 "Depth Fade" 节点,并将其连接到 "Alpha" 输入端口。这个节点可以根据物体与相机的距离来控制表面的透明度。 7. 根据你的需求,你还可以添加其他节点来进一步定制着色器,例如添加纹理节点、颜色节点等等。 8. 最后,点击编辑器界面的 "Compile and Show Code" 按钮,将图形编辑器中的节点转化为着色器代码。 9. 将生成的着色器代码保存为一个 .shader 文件,并将其添加到 Unity 项目中的合适位置。 完成上述步骤后,你就创建了一个不被任何物体遮挡的着色器。你可以在材质上应用这个着色器,并将其应用于你想要达到这种效果的对象上。请注意,具体的效果可能需要根据你的需求进行调整和优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值