【发布时间】:2020-05-16 05:25:08
【问题描述】:
我需要一个可以使两个 3D 对象的交集变得透明的着色器。我知道如何使两个精灵相交区域透明。我在着色器中使用模板缓冲区。但我不知道如何在 3d 对象中做到这一点。请帮帮我,谢谢!
【问题讨论】:
我需要一个可以使两个 3D 对象的交集变得透明的着色器。我知道如何使两个精灵相交区域透明。我在着色器中使用模板缓冲区。但我不知道如何在 3d 对象中做到这一点。请帮帮我,谢谢!
【问题讨论】:
您可以使用 3 个对象,并使用模板缓冲区来制作效果。
其中一个对象将具有
Stencil{
Ref valueA
Comp aways
Pass replace
}
第二个:
Stencil{
Ref valueB
Comp greater
Pass replace
}
第三个:
Stencil{
Ref valueB
Comp less
Pass replace
}
诀窍是将第二个和第三个对象放在同一位置
【讨论】:
Sprite 着色器实际上是仅在单个四边形上渲染的 3D 着色器。换句话说,如果您知道如何使用 sprite 来做到这一点,那么 3D 也不例外。
【讨论】: