В документации SDK есть раздел о переходе на 11, который охватывает как 9, так и 10. Также есть страница функций D3D11 .
Одно из самых больших изменений с точки зрения формы API между 10 и 11 заключается в том, что 11 перемещает группу методов из самого устройства в новый интерфейс, называемый контекстом устройства (в ID3D11DeviceContext
частности), для поддержки новых многопоточных функций.
Однако, как только вы узнаете об изменении, к нему довольно легко адаптироваться: там, где вы бы в 10 назвали « someDevice->Draw()
», вместо этого вы получите непосредственный контекст для устройства и позвоните « immediateContext->Draw()
».
Другое большое изменение заключается в том, что API-интерфейс Effects извлечен из ядра и сделан из независимого исходного кода, который вы должны скомпилировать и связать самостоятельно. Вы также можете заметить некоторые интерфейсы и функции D3DX, которые устарели или удалены.
Помимо этого, есть несколько новых параметров для некоторых функций и несколько дополнительных полей в структурах и так далее. Например, объект описания буфера в 11 имеет дополнительное StructureByteStride
поле, которое не в 10 , и создание устройства включает передачу информации об уровне возможностей . Плюс есть очевидные и вышеупомянутые изменения в именах интерфейсов (10 заменены на 11).