|
|
|||||||||||||||||||||||||||||
|
Visual Studio vNext для разработчика игрИсточник: habrahabr habrahabr
Visual Studio vNext для разработчика игрВ этой статье я хотел бы рассказать о некоторых нововведениях в Visual Studio 11 Developer Preview, касающихся разработки DirectX-приложений.
DirectXНи для кого не будет сюрпризом тот факт, что видеоигры сегодня являются огромной индустрией и значительная их часть базируется на технологии DirectX. В Visual Studio 11 мы серьёзно поработали над тем, чтобы сделать процесс разработки таких игр проще, удобнее и быстрее. Основной упор был сделан на следующие три вещи: шейдеры, ресурсы, отладка.
ШейдерыШейдер - это кусочек кода, который выполняется на GPU (например для рассчета какого-нибудь эффекта). При использовании DirectX шейдеры, как правило, пишутся на HLSL (высокоуровневый шейдерный язык). Visual Studio 11 включает несколько улучшения для HLSL - от написания и компиляции до подсветки и форматирования кода:
Кроме возможности писать код вручную у разработчика теперь есть возможность воспользоваться визуальным инструментом, который позволит создавать эффекты графически, без необходимости писать код. Это очень удобно - можно экспериментировать и видеть, что получается на каждом шаге. Вот, например, простой пример шейдера, который берёт два константных цвета и соединяет их вместе:
Далее Visual Studio позволяет экспортировать этот граф в HLSL:
Вы можете создавать довольно сложные эффекты в этом редакторе, который также имеет режим реального времени, позволяющий наблюдать эффекты, изменяющиеся во времени. Вот пример, который наша команда разработки использует в качесте тест-кейса. К сожалению, скриншот этого не передаёт, но многие из узлов данного графа содержат анимацию:
РесурсыОдной из главных особенностей разработки игр является большое количество ресурсов, не встроенных непосредственно в код. Исторически сложилось так, что работать с этими файлами программисту часто было не очень удобно. Если он хотел просмотреть\подправить какую-то текстуру или модель - приходилось запускать совсем другие инструменты (а то и вовсе привлекать дизайнера). Теперь с Visual Studio 11 многие из этих ресурсов (например .FBX 3D-модели или .DDS текстуры) могут быть просмотрены и отредактированы непосредственно в IDE. Хотя Visual Studio по прежнему не является полноценным средством создания таких ресурсов, её новые инструменты всё-же позволяют сэкономить время на некоторых простых операциях.
ОтладкаПри разработке DirectX-приложений, традиционные CPU-ориентированные отладчики часто неэффективны, поскольку разработчикам необходимо проследить работу GPU, а не процессора. Например, может понадобиться понять, почему некоторая часть сцены не видна, или почему определенный пиксель имеет неверный цвет. Visual Studio 11 предлагает целый набор средств отладки подобных ошибок в коде, использующем DirectX. Среди них стоит отметить средства захвата фреймов, получения истории всех команд, отосланных GPU, просмотр всех событий, которые повлияли на процесс рендеринга каждого отдельного пикселя и т.д. Вы можете узнать больше об этих средствах отладки из блога Visual C++.
В качестве вывода можно сказать, что Visual Studio 11 предлагает разработчику игр приличное количество новых полезных инструментов и они стоят того, чтобы на них взглянуть. Ссылки по теме
|
|