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