を介してレンダー ターゲットが作成されたとしID2D1Factory::CreateDxgiSurfaceRenderTargetます。
次に、レンダー ターゲットが関数に渡されました。ターゲットのみがあり、IDXGISurface はありません。
IDXGISurfaceターゲットからアクセスする方法はありますか?QueryInterface はそれを取得しません。
DirectX 10. Windows 7.
ありがとうございました。
残念ながら、これは利用できません。レンダー ターゲットと DXGI サーフェスは異なるオブジェクトであるため、機能しQueryInterfaceません。内部的に、レンダー ターゲットは基になる DXGI サーフェスへのポインターを保持します。
これは、Direct2D 1.1 (DirectX 11.1) ではより明示的で管理しやすく、DXGI サーフェスを Direct2D ビットマップ ( ) でラップできます。これは、Direct2D 1.1 レンダー ターゲット ( )CreateBitmapFromDxgiSurfaceのターゲット ( ) として設定されます。次に、ターゲットにビットマップを要求し ( )、ビットマップに基になる DXGI サーフェスを要求できます ( )。SetTargetID2D1DeviceContextGetTargetID2D1Bitmap1::GetSurface