我想渲染隐藏的对象并获得与Stage3D中链接中显示的效果类似的效果。
Silhouette Effect in Torchlight 2
我已经知道如何在理论上做到这一点。我必须画两次对象:
我可以使用Context3DCompareMode.GREATER
在Stage3D中设置正确的深度排序模式。
是否也可以将Stage3D渲染像素放入后缓冲区,而不是z缓冲区?
如果我无法将Stage3D保持渲染到深度缓冲区,效果将如下所示:
答案 0 :(得分:0)
是的,您可以关闭深度和模板缓冲区。检查context3d.configureBackBuffer方法。
答案 1 :(得分:0)
如果有人遇到这个问题,你应该注意两件事:
1)由于Volgogradetzzz使用Context3D.configureBackBuffer(...)
2)如果您需要在不同时刻开启或关闭深度像素写入,您可以在此函数中设置depthMask参数:
public function setDepthTest(depthMask:Boolean, passCompareMode:String):void
在此名称的函数中找到此功能有点奇怪,因为深度写入屏蔽会影响结果,而不会影响测试本身。