-
渲染状态-python实现pdf转换成word/txt纯文本文件下载
资源介绍
6.7 渲染状态
从本质上讲,Direct3D 是一个状态机(state machine)。在我们改变它的状态之前,驻
留在状态机内的当前状态是不会改变的。例如,我们在 6.1 节、6.2 节和 6.3 节中看到,当
顶点缓冲和索引缓冲绑定到管线的输入装配阶段时,如果我们不绑定其他缓冲,那么它们
就会一直驻留在那里;同样,在没有改变图元拓扑之前,当前的图元拓扑设置会一直有
效。另外,Direct3D 将配置信息封装在状态组中,我们可以使用如下 3 种状态组配置
Direct3D:
1.ID3D11RasterizerState:该接口表示用于配置管线光栅化阶段的状态组。
2.ID3D11BlendState:该接口表示用于配置混合操作的状态组。我们将在有关混合的
章节讨论这些状态;默认情况下,混合处于禁用状态,所以我们可以先不考虑这方面的问
题。
3.ID3D11DepthStencilState:该接口表示用于配置深度测试和模板测试的状态组。我
们将在有关模板缓冲的章节讨论这些状态;默认情况下,模板是禁用的,所以我们可以先
不考虑这方面的问题。而默认的深度测试是我们在 4.1.5 节描述的标准深度测试。
目前,我们唯一需要关心的状态块接口是 ID3D11RasterizerState。我们可以通过填充一
个 D3D11_RASTERIZER_DESC 结构体并调用如下方法来创建 ID3D11RasterizerState 对象:
HRESULT ID3D11Device::CreateRasterizerState(
const D3D11_RASTERIZER_DESC *pRasterizerDesc,
150 / 351