serj | Дата: Среда, 23.11.2011, 20:53 | Сообщение # 1 |
Уровень 6
Группа: Модераторы
Сообщений: 210
Награды: 9
Репутация: 35
Статус: Offline
| Пример работы шейдеров: Для начала, у каждой модели, интегрированной в FPS Creator, есть файл с её свойствами, обычно он имеет расширения .fps и открывается простым блокнотом. Открыв его, можно увидеть множество параметров, включая effect. Именно этот параметр несёт информацию о том, какой шейдер будет использоваться на модели (в параметре следует указывать существующий шейдер-файл, который обычно имеет расширение .fx и находится внутри структуры FPS Creator, например "effectbank\bumpent\bumpent.fx").
Шейдеры бывают разные. И многие из них требуют специальные текстуры или рисунки (деколи, спрайты), которые обычно должны лежать вместе с моделью, которой требуется их обработка. Узнать какие файлы нужны для конкретного шейдера, можно открыв этот самый шейдер любым (например блокнотом) текстовый редактором, или если вы продвинуты в шейдерах, специальным редактором шейдеров. Открыв файл программы шейдера, можно увидеть множество непонятных команд. Если вам интересно узнать, что значат все эти команды, то вам следует заняться изучением шейдеров более подробно, т.к. синтаксис их языка програмирования (например HLSL) имеет иные структуру и правила.
Если открыть, например шейдер effectbank\bumpent\bumpent.fx, то можно увидеть строку (обычно эта строка отмечена специальным комментарием типа /************* TEXTURES **************/ ) обозначающую требуемые для работы шейдера текстуры.
texture colorTexture2 : DiffuseMap < string Name = "D.tga"; string type = "2D"; >;
texture normalTexture : DiffuseMap < string Name = "N.tga"; string type = "2D"; >;
Значение типа "N.tga" значит, что для работы шейдера нужна текстура (ресурсы для работы шейдеров обычно должны лежать вместе с моделью, на который они применяются) с префиксо N и расширением .tga (например: texture_1_bump_N.tga).
лучшее "спасибо" - это + в репутацию <a href="http://advego.ru/8CwhgVRcp4">Общайся на форумах и получай деньги - Advego.ru</a>
|
|
| |