netlib.narod.ru< Назад | Оглавление | Далее >

Первый взгляд на RenderMonkey

Как видно на рис. 3.1, в главном окне RenderMonkey располагается множество дополнительных окон! Их назначение достаточно понятно, и сейчас я опишу их одно за другим.


Рис. 3.1. RenderMonkey выполняет визуализацию простого шейдера

Рис. 3.1. RenderMonkey выполняет визуализацию простого шейдера


Я настоятельно рекомендую сейчас установить RenderMonkey и запустить его, чтобы следовать дальше. Благодаря этому вы сможете сами увидеть как работает RenderMonkey и исследовать его. Инструкции по установке RenderMonkey вы найдете в приложении B «Руководство пользователя RenderMonkey 1.5».

Первое и наиболее важное из всех окон — это окно рабочего пространства, расположенное в левой части главного окна приложения. Это та область, где вы будете собирать ваш шейдер, комбинируя различные элементы в итоговую структуру. Взглянув на увеличенное изображение на рис. 3.2, вы увидите, что в окне есть много различных типов элементов, которые могут быть объединены в четыре группы:


Рис. 3.2. Окно рабочего пространства в RenderMonkey

Рис. 3.2. Окно рабочего пространства в RenderMonkey


Чтобы построить шейдер просто поместите требуемый набор элементов в окно рабочего пространства; RenderMonkey сразу же покажет результат. Сейчас не следует волноваться о том, что делает каждый из элементов; мы обсудим их все в этой главе чуть позже. Пока вам достаточно знать, что рабочее пространство состоит из набора групп эффектов (effect group). Каждая группа эффектов, в свою очередь, состоит из набора эффектов (effect), каждый из которых может включать один или несколько проходов (pass). И, наконец, каждый проход визуализации содержит параметры, состояния и ресурсы, используемые шейдером.

ПРИМЕЧАНИЕ
RenderMonkey сохраняет данные рабочего пространства в файл .RFX, который является XML-файлом. Если вы хорошо знакомы с XML, можете открыть этот файл в текстовом редакторе и редактировать его вручную. Если вы программируете игру или приложение, можно включить в код поддержку для этого формата, что значительно сократит время разработки от прототипа до конечного продукта.

Мы подошли ко второму по значимости окну RenderMonkey — окну предварительного просмотра, показанному на рис. 3.3. В этом окне вы видите плоды вашего труда. Здесь RenderMonkey рисует финальную версию вашего шейдера, основываясь на указанных вами элементах.


Рис. 3.3. Окно предварительного просмотра, показывающее результат работы простого шейдера

Рис. 3.3. Окно предварительного просмотра, показывающее результат работы простого шейдера


Используя клавиши мыши, вы можете вращать камеру вокруг объектов, что позволяет взглянуть на шейдер под любым углом. Правая кнопка мыши вызывает контекстное меню, позволяющее вернуть камеру в исходную позицию и выполнить ряд других задач, таких как отображение ограничивающих параллелепипедов для объектов и изменение масштаба изображения, чтобы объект полностью помещался на экране. С помощью кнопок, расположенных на панели инструментов, находящейся в верхней части главного окна RenderMonkey, вы можете изменить реакцию камеры на манипуляции с мышью. Ну и наконец, если вы не видите в окне предварительного просмотра то, что ожидали, проверьте окно отладки — нет ли там сообщений об ошибках в коде, и дважды проверьте код вашего шейдера на отсутствие логических ошибок.

ПРИМЕЧАНИЕ
Вы, возможно, заметили небольшую вкладку над окном предварительного просмотра. Когда окно раскрыто на весь экран, навигация между отдельными окнами может быть затруднена. Эта вкладка позволяет увидеть все открытые окна и предоставляет простой и удобный способ доступа к ним.

Это очевидным образом приводит нас к окну отладки. Оно весьма полезно, особенно в том случае, если вы склонны допускать ошибки в коде! В этом окне RenderMonkey отображает сообщения об ошибках компиляции шейдера и другие полезные предупреждения о процессе сборки вашего шейдера. На рис. 3.4 показано, как может выглядеть выводимая в окно отладки информация.


Рис. 3.4. Информация, выводимая в окне отладки

Рис. 3.4. Информация, выводимая в окне отладки


 

СОВЕТ
Если в окне отладки отображается сообщение об ошибке, дважды щелкните по этой строке левой кнопкой мыши и RenderMonkey откроет окно редактирования, в котором курсор будет установлен на ту строку кода шейдера, которая вызвала проблемы.

Следующее окно в нашем исследовании RenderMonkey — это окно редактирования, которое отсутствует на рис. 3.1. В нем вы вводите код ваших шейдеров. В текущей версии RenderMonkey вы можете вводить код либо целиком на HLSL, либо, для вершинных и пиксельных шейдеров, на языке ассемблера. В этой книге я сосредотачиваюсь только на использовании высокоуровневого языка программирования шейдеров HLSL, поскольку он проще для изучения и понимания. HLSL проще еще и по той причине, что он позволяет сосредоточиться на процессе создания шейдера и меньше отвлекаться на такие незначительные детали, как оптимизация инструкций и распределение регистров.

Как видно на рис. 3.5, окно редактирования состоит из двух частей. В верхней части приводятся общие и вспомогательные параметры шейдера, такие как целевая версия шейдеров для компиляции и точка входа шейдера. В нижней части окна приведен исходный код шейдера в удобном для редактирования виде с подсветкой синтаксиса. Можно также обратить внимание на строку состояния внизу окна редактирования, где отображается статистическая информация о вашем шейдере, такая как количество инструкций и производительность.


Рис. 3.5. Окно редактирования в RenderMonkey

Рис. 3.5. Окно редактирования в RenderMonkey


 

СОВЕТ
Обратите внимание на вкладки и выпадающий список в верхней части окна редактирования; они позволяют быстро переключаться между любыми шейдерами из рабочего пространства. Это действительно экономит время!

Последнее окно, которое мы должны рассмотреть — окно художника. Как видно на рис. 3.6, это окно облегчает работу художника, позволяя ему управлять параметрами шейдера не запачкав руки. Все параметры элемента, отмеченного в окне рабочего пространства, представлены здесь в виде набора полей редактирования, ползунков и панелей выбора цвета. Вы можете изменить любой из параметров и сразу же увидите результат. Это замечательная возможность для художников, позволяющая им экспериментировать с шейдерами и сразу же видеть результат до того, как шейдеры будут помещены в реальную программу.


Рис. 3.6. Окно художника

Рис. 3.6. Окно художника



netlib.narod.ru< Назад | Оглавление | Далее >

Сайт управляется системой uCoz