c++ - 保存 Direct3D 设备的状态

标签 c++ direct3d

状态至少应包括以下内容:

  • 所有设置通过 SetStreamResource()
  • 指数

我有一个类,其 Draw() 函数将调用 SetStreamResource、设置索引并最终调用 DrawIndexedPrimitive()。我想在 Draw() 返回之前恢复设备状态。

我正在寻找与 GDI 的 SaveDC()/RestoreDC() 类似的东西。

最佳答案

状态 block 是 API 提供的用于保存和恢复设备状态 block 的机制。我在第 3 章中介绍了状态 block 的详细信息。来 self 的书的 Direct3D 设备 The Direct3D Graphics Pipeline .您可以从上面的链接下载该章节的 PDF。

关于c++ - 保存 Direct3D 设备的状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/243322/

相关文章:

c++ - 如何在 Windows C++ 中创建带标题栏的无边框窗口

opengl - 如何在同一应用程序中管理 OpenGL 和 Direct3D 渲染

c++ - 在可变参数模板中构造固定大小的数组

c++ - OSX 10.9 上的 Macports - 使用 -stdlib=libstdc++ 编译

c++ - 动态库不使用 visual studio 2012 生成 lib 文件

directshow - IMediaSample(DirectShow) 到 IDirect3DSurface9/IMFSample(MediaFoundation)

opengl - 计算机图形编程语言

c++ - 从控制台读取 : operator>> for enum inside template class

c++ - 在单个 header 中定义全局(外部)变量更好,还是在各自的头文件中定义更好?

windows-10 - 如何离线安装适用于 Windows 10 的 D3D11 SDK Layers