如何禁用深度缓冲区?

发布于 2024-09-24 05:20:28 字数 218 浏览 8 评论 0原文

我没有看到 RenderState 作为 GraphicsDevice 类中的成员,这是用于禁用深度缓冲区的函数所在的位置。有人知道这个新的 4.0 API 是如何完成的吗?

如果我能以某种方式在某个地方访问完整的 RenderState 类,那就太好了。GraphicsDevice 似乎已经得到了其中的一些,但不是几乎全部!

I don't see a RenderState as a member in the GraphicsDevice class, which is where the functions for disabling the depth buffer used to be. Anyone know how this is done with this new 4.0 API?

It would be great if I could somehow access a full RenderState-like class somewhere.. GraphicsDevice seems to have gotten some of it, but not nearly all!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

╰ゝ天使的微笑 2024-10-01 05:20:28

啊..我会将 GraphicsDevice.DepthStencilState 设置为 DepthStencilState 的实例,并设置任意数量的属性。看起来 RenderState 被分成了一堆其他状态。我之前一直在 GraphicsDevice 内部的各个属性中查找,但它们现在似乎组织得更好,以便于状态管理。

depthState = new DepthStencilState();
depthState.DepthBufferEnable = true; /* Enable the depth buffer */
depthState.DepthBufferWriteEnable = true; /* When drawing to the screen, write to the depth buffer */

GraphicsDevice.DepthStencilState = depthState;

Ah.. I would be setting GraphicsDevice.DepthStencilState to an instance of DepthStencilState with any number of properties set. Seems like the RenderState was broken into a bunch of other states. I was looking for in the individual properties inside of GraphicsDevice before, but they seem to be better organized now for easier state management.

depthState = new DepthStencilState();
depthState.DepthBufferEnable = true; /* Enable the depth buffer */
depthState.DepthBufferWriteEnable = true; /* When drawing to the screen, write to the depth buffer */

GraphicsDevice.DepthStencilState = depthState;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文