| netlib.narod.ru | < Назад | Оглавление | Далее > |
Файл эффекта состоит из одной или нескольких техник (techniques). Техникой называется конкретный способ реализации спецэффекта. Другими словами, файл эффекта описывает один или несколько способов реализации одного и того же спецэффекта. Зачем надо несколько различных реализаций одного и того же эффекта? Дело в том, что установленное на компьютере оборудование может не поддерживать определенную реализацию эффекта. Следовательно необходимо реализовать несколько версий одного и того же эффекта, ориентированных на различное оборудование.
Возможность реализовать все версии эффекта в одном файле дает нам более полную инкапсуляцию эффекта в целом, а объединение реализации эффекта это и есть одна из целей каркаса эффектов.
Каждая техника объединяет один или несколько проходов визуализации (rendering passes). Проход визуализации объединяет режимы устройства, режимы выборки и шейдеры, используемые для визуализации на данном этапе.
Причина наличия нескольких проходов в том, что для реализации некоторых эффектов необходимо визуализировать один и тот же объект несколько раз с различными режимами визуализации, шейдерами и т.д. для каждого прохода. Вспомните, например, как в главе 8 чтобы получить эффект отражения мы несколько раз визуализировали один и тот же объект с различными состояниями устройства.
В качестве примера приведем скелет файла эффектов с двумя техниками, где первая техника состоит из одного прохода, а вторая — из двух:
// effect.txt
...
technique T0
{
// Первый и единственный проход для данной техники
pass P0
{
...[указываем состояния устройства, шейдеры, выборки и т.д. для прохода]
}
}
technique T1
{
// Первый проход
pass P0
{
...[указываем состояния устройства, шейдеры, выборки и т.д. для прохода]
}
// Второй проход
pass P1
{
...[указываем состояния устройства, шейдеры, выборки и т.д. для прохода]
}
}
| netlib.narod.ru | < Назад | Оглавление | Далее > |