Пошаговое руководство: перенос простого приложения Direct3D 9 в DirectX 11 и UWP
Из этого упражнения вы узнаете, как перенести простую платформу отрисовки из Direct3D 9 на Direct3D 11 и универсальную платформу Windows (UWP).
Раздел | Описание |
---|---|
Здесь показано, как перенести код инициализации Direct3D 9 в Direct3D 11, в том числе как получить дескрипторы и контекст устройства Direct3D, а также как использовать DXGI для создания цепочки буферов. |
|
Здесь показано, как перенести простую инфраструктуру отрисовки с Direct3D 9 на Direct3D 11, включая перенос геометрических буферов, компиляцию и загрузку программ-шейдеров на языке HLSL, а также реализацию цепочки отрисовки в Direct3D 11. |
|
Здесь показано, как реализовать окно для игрового приложения UWP и перенести игровой цикл, включая создание интерфейса IFrameworkView для управления полноэкранным CoreWindow. |
В этой статье подробно разобраны две ветви кода, выполняющие одну и ту же базовую задачу обработки графики: отображение вращающегося куба с затененными вершинами. В обоих случаях код включает следующий процесс.
- Создание устройства Direct3D и цепочки буферов.
- Создание буфера вершин и буфера индексов для отображения цветной кубической сетки.
- Создание вершинного шейдера для преобразования вершин в экранное пространство и пиксельного построителя текстуры для смешения значений цвета, компиляция построителей текстуры и их загрузка в качестве ресурсов Direct3D.
- Реализация цепи отрисовки и отображение отрисованного куба на экране.
- Создание окна, запуск основного цикла и обработка оконных сообщений.
По завершении этого пошагового руководства вы получите представление о следующих основных различиях между Direct3D 9 и Direct3D 11:
- Разделение устройства, контекста устройства и графической инфраструктуры.
- Процесс компиляции шейдеров и загрузки их байт-кода во время выполнения.
- Настройка данных по каждой вершине для этапа сборщика входных данных (IA).
- Использование IFrameworkView для создания представления CoreWindow.
Обратите внимание, что пошаговое руководство использует CoreWindow для простоты и не описывает межпрограммное взаимодействие XAML.
Предварительные требования
Вам нужно подготовить среду для разработки игр UWP с использованием DirectX. Шаблон пока не нужен, но потребуется Microsoft Visual Studio 2015, чтобы загрузить примеры кода для этого руководства.
Чтобы лучше понять принципы программирования для DirectX 11 и UWP, которые демонстрируются в этом руководстве, ознакомьтесь с разделом Принципы и аспекты переноса.
Связанные темы
Direct3D
Microsoft Store
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по