0

私は DirectX11 が初めてで、それを学んでいます。(私はopenGLのバックグラウンドから来ました)。

私は混乱しており、次の API 呼び出しが正確に何を行い、それらの違いは何なのかを理解しようとしています。

ID3D11Texture2D* pBackBuffer = NULL;
hr = g_pSwapChain->GetBuffer( 0, __uuidof( ID3D11Texture2D ), ( LPVOID* )&pBackBuffer );

hr = g_pd3dDevice->CreateRenderTargetView( pBackBuffer, NULL, &g_pRenderTargetView );
pBackBuffer->Release();

とはどういう意味GetBufferですか? pBackBufferでは、 inをどのように使用していCreateRenderTargetViewますか? また、誰かが説明したり、レンダー ターゲット ビューとは何かを説明するリンクを教えてもらえますか? msdn docは私にはあまり意味がありませんでした。

4

1 に答える 1

1

私が思い出したように、 GetBuffer()はデバイスが使用する内部バックバッファへのポインタを返します。次に、そこから、ターゲットRenderTargetとしてバインドできるを作成します"Real backbuffer"

それを次のように考えてください: pBackbuffer = glBindFramebuffer(GL_FRAMEBUFFER, 0);

それは私がそれを覚えている方法です。(少し前に私はdx11でこれを行いました)

編集*そしてrendertargetview、はframebuffer。です。バインドして読み取りと書き込みを行うことができるテクスチャです。

于 2012-10-04T11:52:43.367 に答える