我有一个项目在墙上画一个洞(透明立方体),但洞可以是任何形状和任何大小,也可能是在墙外。而且我试图使用混合来覆盖现有的墙,绝对,这可能无法正常工作。
在项目中,使用实例化方法DrawArraysInstanced
绘制墙,并使用实例化方法绘制透明立方体(这不是必需的,将来应该有DrawArrays
) 。我尝试使用StencilFunc
和DepthMask
,但无法弄清楚如何操作。
简单地说,是否有方法通过实例化绘制矩形,然后在一些矩形上剪切小矩形(我的意思是一些实例矩形有一个窗口)?注意到切割矩形的形状可以是任何尺寸和类型。
非常感谢任何建议和意见,如果问题不明确,请告诉我。
编辑:
我知道实际的方法是计算形状交集以获得三角形,并使用DrawArraysInstanced
用切割孔的那些对象绘制三角形,但我只是想知道如果有一种棘手的方法使其工作。