我正在绘制带有某些对象的场景(Direct3D),最后,我想绘制另一个对象(红色茶壶),该对象将位于所有其他对象的前面。 这是屏幕截图: 屏幕截图

我用'RenderState.ZBufferFunction = Compare.NotEqual'来做到这一点,但是结果是毁了红色茶壶。 有办法解决这个问题吗?

===============>>#1 票数:1 已采纳

一种选择是清除z缓冲区,然后渲染红色茶壶。 听起来好像您在渲染茶壶时仍然需要进行深度测试(因为需要将茶壶的位与茶壶的其他位进行测试),但是您想要忽略之前渲染过的所有内容。 安排的最简单方法是在其他所有东西之后以及红色茶壶之前清除z缓冲区。

  ask by Zosimas translate from so

未解决问题?本站智能推荐:

关注微信公众号