首页 > 解决方案 > Unity 3D - 在对象 B 的位置渲染孔,对象 B 放置在对象 A 上

问题描述

我有一个主要对象,我想在其中制作任何形状的孔,具体取决于覆盖游戏对象的形状。我认为这可以通过模板缓冲区技巧(https://docs.unity3d.com/Manual/SL-Stencil.html)来完成,但由于我的项目是针对 HDRP 的,它似乎不起作用。

Gameobject A 有一个着色器和材质集,所以我不想更改它的着色器,因为它是继承的。Gameobject B 是覆盖的形状,对于任何方法都是免费的。如果有人知道我应该阅读什么以便为高清渲染管道执行此操作(这会使某些着色器代码无效),我会很高兴。编写着色器,或使用着色器图制作,任何一种都可以。

标签: unity3dshaderdepth-buffer

解决方案


我相信这个着色器是我用来在水中为船创建一个“洞”的。可能是你所寻求的。

unity3d 船漂浮在水面上的问题

然后,您可以使用中间对象作为玩家(或其他任何东西)应该能够穿过该区域的区域。


推荐阅读