For a complete list of what a Direct3D 11 device context is used for see ID3D11DeviceContext and ID3D11DeviceContext1.
#Directx 9 vs 10 vs 11 update#
The device context is used to access (map) video memory used by Direct3D device resources it's also used to update subresource data, for example constant buffer data. For example, a Direct3D 11 rendering chain uses a device context to set up the rendering chain and draw the scene (see below). device context is used to set pipeline state and generate rendering commands. For a complete list of what a Direct3D 11 device interface is used for see ID3D11Device and ID3D11Device1.Ī Direct3D 11. It's used to create resources in video memory, for example: uploading textures to the GPU, creating views on texture resources and swap chains, and creating texture samplers. Devices and device contextĪ Direct3D 11 device represents a virtualized graphics adapter. In your Direct3D 11 Universal Windows Platform (UWP) game, you call a static function called D3D11CreateDevice to create the device and the device context. In Direct3D 9 you had to create an interface to the Direct3D API before you could start using it. Resources stored on the Direct3D device have a novel mechanism for data polymorphism called a resource view. The layout of the graphics API has changed since Direct3D 9 the concept of a device context has been expanded, and an API has been added specifically for graphics infrastructure. It still allows you to perform graphics drawing operations on a variety of hardware implementations. This topic explains the high-level differences between DirectX 9 and DirectX 11.ĭirect3D 11 is fundamentally the same type of API as Direct3D 9 - a low-level, virtualized interface into graphics hardware. Important changes from Direct3D 9 to Direct3D 11.