Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование мультимедиа
Войти
Регистрация
Восстановить пароль
 
heymdall
7 / 7 / 2
Регистрация: 12.02.2012
Сообщений: 47
1

Сложение освещения

29.10.2015, 22:25. Просмотров 349. Ответов 4
Метки нет (Все метки)

Как в пиксельном шейдере сложить освещение от нескольких источников света ?

по классике:

C++
1
2
3
4
5
6
7
8
9
10
...
float4 main(PS_INPUT In): COLOR
{
float4 Out = (float4)0;
...
Out =
ambient_color * ambient_intensity +
diffuse_color    * diffuse_Koef +
specular_color* specular_Koef;
return Out;}

так при одном источнике света, а если их два, три ?
ambient составляющая остаётся без изменений, на все все источники света будет одно слагаемое ambient.

а как складывать диффузную составляющую и бликовую ?
просто сложить диффузную составляющую чушь получается:
Out =
ambient_color * ambient_intensity +
diffuse_color * diffuse_Koef_1+
diffuse_color * diffuse_Koef_2+
...
diffuse_color * diffuse_Koef_X+
specular_color* specular_Koef;

Есть ли какие то уже готовые формулы ? погуглил ничего нет...

потом шейдер накладывает тень, всё понятно когда источник света один.
а по какому закону складываются интенсивности совпадающих теней ?
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.10.2015, 22:25
Ответы с готовыми решениями:

Убрать освещения
Доброго времени суток, как можно убрать освещения, т.е. что бы блок был со всех сторон одинаково...

ON/OFF наружного освещения
Доброго времени суток :) Есть желание сделать включение/выключение наружного освещения дома от...

Настройка освещения
Всем привет.Столкнулся с проблемой освещения.В помещении у меня есть 3 источника света.Они светят...

Регулятор освещения
Добрые люди, здравствуйте! Очень понравился сайт и форум, прочитал почти все, до чего до...

Контроль освещения и вытяжки
Друг распаял для меня плату кухонной вытяжки. У нее 4 кнопки. Необходимо чтобы d2 просто включало...

4
globalhost
32 / 24 / 7
Регистрация: 01.08.2014
Сообщений: 115
30.10.2015, 14:44 2
Методика отложенного рендеринга допускает использование неограниченного количества источников света.
http://steps3d.narod.ru/tutorials/ds-tutorial.html
0
heymdall
7 / 7 / 2
Регистрация: 12.02.2012
Сообщений: 47
30.10.2015, 19:19  [ТС] 3
Слишком это большая пушка G-буффер чтобы стрелять по таким воробьям как пара тройка источников света.
я интуитивно вывел формулу правдоподобную сложения интенсивностей источников освещения.
с тенями оказалось ещё проще.
0
Fulcrum_013
1487 / 1245 / 143
Регистрация: 14.12.2014
Сообщений: 10,938
Завершенные тесты: 3
27.12.2015, 18:44 4
Цитата Сообщение от heymdall Посмотреть сообщение
Есть ли какие то уже готовые формулы ?
Дык есть естественно. Модель освещения Фонга гуглил? Все вобщем то просто суммируется. Ambient прибавляется один раз. Для каждого источника вычисляется Diffuse и Specular (естественно для каждого получается с подстановкой своего вектора направления на источник света). Потом все суммируется. Источники и/или коэффициенты материала следует приглушит, так как выше 1 в сумме все равно не прыгнешь.
т.е. если у тебя 4 источника с силой 1 то они дают в 4 раза больше света чем один с силой 1. соответственно чтобы получить тоже (по цвету) освещение от четырех источников светящих в одну точку надо чтобы их сила в сумме была 1
0
snake32
1846 / 1157 / 204
Регистрация: 26.02.2009
Сообщений: 4,338
Записей в блоге: 5
29.12.2015, 13:02 5
Цитата Сообщение от heymdall Посмотреть сообщение
Слишком это большая пушка G-буффер
Зато посмотрите насколько реальные материалы можно получить с его использованием:
http://habrahabr.ru/company/mailru/blog/248873/
0
29.12.2015, 13:02
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.12.2015, 13:02

Вычисление карты освещения
Приветствую. Имеется следующая задача - необходимо вычислить карту освещения. На входе мы получаем...

Моделирование освещения в помещении
Мне нужно написать програму к курсовом. Тема такова: Моделирования освещения в помещении. Я тут...

Автоматизация освещения на 4-х объектах
Посоветовали обратиться на этот сайт, говорят здесь очень толковые ребята. Так что надеюсь на Вашу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru