Работа с трехмерными ресурсами для игр и приложений

В этой статье описываются средства Visual Studio, которые можно использовать для создания или изменения трехмерных моделей, текстур и шейдеров для игр и приложений на базе DirectX.

Разработка приложений DirectX в Visual Studio

Приложение DirectX обычно сочетает в себе программную логику, API DirectX и программы на языке HLSL (High Level Shading Language) со звуковыми и трехмерными визуальными ресурсами, чтобы обеспечить многофункциональное интерактивное мультимедийное взаимодействие. Visual Studio включает в себя средства, позволяющие работать с изображениями и текстурами, трехмерными моделями и шейдерами, не выходя из интегрированной среды разработки. Эти средства Visual Studio особенно хорошо подходят для создания ресурсов заполнителя, которые можно использовать для тестирования кода или создания прототипов перед переводом готовых ресурсов в рабочую среду, а также для проверки и изменения готовых ресурсов при отладке приложения.

Ниже приведены дополнительные сведения о типах ресурсов, с которыми вы можете работать в Visual Studio.

Изображения и текстуры

Изображения и текстуры предоставляют сведения о цветах и визуальном оформлении в играх и приложениях. В области трехмерной графики существуют текстуры самых разных форматов, типов и геометрических форм, чтобы удовлетворить самые разные потребности. Например, карты нормалей предоставляют нормали к поверхности каждого пикселя, обеспечивая более детальное освещение трехмерных моделей, а кубические карты распространяют текстуру во всех направлениях, что находит применение при реализации скайбоксов, отражений и сферического наложения текстур. Текстуры могут предоставлять MIP-карты для обеспечения эффективной визуализации с различными уровнями детализации и поддерживать различные цветовые каналы и очередности цветов. Текстуры можно хранить в различных сжатых форматах, так они занимают меньше выделенной графической памяти и эффективнее обрабатываются GPU.

Редактор изображений Visual Studio позволяет работать с изображениями и текстурами многих распространенных типов и форматов.

Трехмерные модели

Трехмерные модели создают пространство и формы в играх и приложениях. Если не углубляться в детали, модели кодируют положение точек, называемых вершинами, в трехмерном пространстве, а также данные индексирования, определяющие линии или треугольники, которые образуют форму модели. С этими вершинами могут быть связаны дополнительные данные, например цвета, векторы нормали или атрибуты, зависящие от конкретного приложения. Каждая модель также может определять атрибуты, относящиеся ко всему объекту, например, какой шейдер используется для вычисления внешнего вида поверхности объекта и какая текстура к ней применяется.

Редактор моделей Visual Studio можно использовать для работы с трехмерными моделями в нескольких распространенных форматах.

Шейдеры

Шейдеры — это небольшие специализированные программы, которые выполняются на GPU. Шейдеры определяют, как трехмерные модели преобразуются в фигуры на экране и как окрашивается каждый из пикселей этих фигур. Создав шейдер и применив его к объекту в игре или приложении, вы можете сделать внешний вид этого объекта уникальным.

Вы можете использовать конструктор шейдеров Visual Studio, который представляет собой основанное на графах средство разработки шейдеров, чтобы создавать настраиваемые визуальные эффекты без навыков программирования на HLSL.

Примечание.

Дополнительные сведения о том, как начать программировать на DirectX, см. в разделе DirectX. Дополнительные сведения об отладке приложений на основе DirectX см. в разделе Диагностика графики (отладка графики DirectX).

Совместимость версий DirectX

Visual Studio использует DirectX для отрисовки двумерных и трехмерных ресурсов. Вы можете выбрать отрисовщик DirectX 11 или программный отрисовщик WARP (Windows Advanced Rasterization Platform). Отрисовщик DirectX 11 обеспечивает высокопроизводительную отрисовку с аппаратным ускорением на базе GPU с поддержкой DirectX 11 и DirectX 10 Отрисовщик WARP позволяет убедиться, что ваш ресурс работает на широком спектре компьютеров, включая компьютеры с устаревшим или интегрированным графическим оборудованием. Дополнительные сведения о WARP см. в руководстве по Windows Advanced Rasterization Platform (WARP).

Заголовок Description
Работа с текстурами и изображениями Описывается работа с изображениями и текстурами в Visual Studio.
Работа с трехмерными моделями Описывается работа с трехмерными моделями в Visual Studio.
Работа с шейдерами Описывается, как создавать и изменять настраиваемые эффекты шейдеров в конструкторе шейдеров Visual Studio.
Использование трехмерных ресурсов в игре или приложении Описывает, как использовать ресурсы, созданные с помощью редактора изображений, редактора моделей или конструктора шейдеров, в игре или приложении.