Сопоставление света с текстурами (Direct3D 9)
Чтобы приложение реалистично отображало трехмерную сцену, оно должно учитывать влияние, которое источники света имеют на внешний вид сцены. Хотя такие методы, как плоское и Гуруд затенение, являются ценными инструментами в этом отношении, они могут быть недостаточными для ваших нужд. Direct3D поддерживает многопроходную обработку и смешивание нескольких текстур. Эти возможности позволяют приложению отображать сцены с более реалистичным внешним видом, чем сцены, отрисованные только с помощью методов заливки. Применяя одну или несколько карт света, приложение может сопоставлять области света и тени с его примитивами.
Световая карта — это текстура или группа текстур, содержащая сведения о освещении в трехмерной сцене. Вы можете хранить сведения о освещении в альфа-значениях карты света, в значениях цвета или в обоих значениях.
Если вы реализуете сопоставление света с помощью многопассного смешения текстур, приложение должно отобразить карту света на примитивы на первом проходе. Он должен использовать второй проход для отрисовки базовой текстуры. Исключением из этого является спектрочное сопоставление света. В этом случае сначала отрисуйте базовую текстуру; затем добавьте световую карту.
Сочетание нескольких текстур позволяет приложению отображать световую карту и базовую текстуру в одном проходе. Если аппаратное обеспечение пользователя поддерживает несколько текстурных смешиваний, ваше приложение должно воспользоваться этим при выполнении лайтмаппинга. Это значительно повышает производительность приложения.
С помощью карт освещения приложение Direct3D может достичь различных эффектов освещения при отрисовки примитивов. Он может отображать не только монохромные и цветные источники света в сцене, но и добавлять детали, такие как зеркальные блики и диффузное освещение.
Информация об использовании смешивания текстур Direct3D для выполнения световой карты представлена в следующих разделах.
- Монохромные световые карты (Direct3D 9)
- Карты освещения (Direct3D 9)
- Карты зеркального света (Direct3D 9)
- карты диффузного света (Direct3D 9)
Связанные разделы