替换着色器Replacement Shader的用法

本文详细介绍了Unity3D中的替换着色器,包括RenderWithShader和SetReplacementShader方法的使用区别。讲解了如何通过设置Tags和RenderType进行替换,并提供了渲染示例及实际应用的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

方法解释

1.Tags可以自定义
2.subshader标签的使用:
原本的shader:
Tags { “RenderType”=“Opaque” }
替换的shader:
Tags { “RenderType”=“Opaque” }
Tags { “RenderType”=“SomethingElse” }

标签为"RenderType"=“Opaque"的,会被同样是"RenderType”="Opaque"标签的替换shader所替换。
需要替换的shader,RenderType后面的键值要一样。

官网文档解释:SetReplacementShader将浏览场景中的所有对象,不是使用其常规着色器,而是使用第一个子着色器,该子着色器具有与指定关键帧匹配的值。 其Shader具有Rendertype =“ Opaque”标记的对象将被替换的shader中的第一个具有Rendertype =“ Opaque”的subshader替换,任何具有RenderType =“ SomethingElse”着色器的对象将使用第二个具有RenderType =“ SomethingElse”的替换子着色器,依此类推。 如果着色器的替换着色器中的指定关键帧的着色器没有匹配的标记值,则将不呈现任何对象。

Camera类的RenderWithShader方法和SetReplacementShader方法的区别

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值