D3D11 の API は少し扱いにくいか、正しく使用していないようです。
これは、D3D11 で 1 つのラスタライザーの状態を変更するための最小限の手順であるというのは本当ですか (例として、ワイヤーフレーム モード レンダリングへの変更を使用しています)。
// 現在のラスタライザの状態とその説明を保持する変数 ID3D11RasterizerState * rState ; D3D11_RASTERIZER_DESC rDesc ; // cd3d は ID3D11DeviceContext です cd3d->RSGetState( &rState ) ; // 現在の状態を取得する rState->GetDesc( &rDesc ) ; // 状態の説明を取得します rDesc.FillMode = D3D11_FILL_WIREFRAME ; // ONE 設定を変更します // まったく新しいラスタライザの状態を作成します // d3d は ID3D11Device です d3d->CreateRasterizerState( &rDesc, &rState ) ; cd3d->RSSetState( rState ); // 新しいラスタライザーの状態を設定します
9'sよりずっと長いようです
cd3d->SetRenderState( D3DRS_FILLMODE, D3DFILL_WIREFRAME ) ;