


Tracking of resources by the driver is often unnecessary if it can be assumed that the application programmer can perform this task with much less overhead. Drivers needed to track the lifetime of every resource that was used by the rendering pipeline. One example of the driver overhead that is present in previous versions of the DirectX SDK is resource management. Much of this overhead could be avoided if you give control back to the developers. Vendor-specific driver implementations were often complex and imposed a CPU performance overhead that the developer had no control over.

The primary reason for this change is the demand from the gaming industry to provide a rendering SDK that gives more power and control to the graphics programmer. DirectX 12 is the successor of the DirectX 11 SDK and represents the largest architectural change to the SDK since the inception of DirectX.
