Тогда источник ваще не нужен.
Нужна только координатная система или камера которая
генерит эту тень.
Впоследствии эта тень цепляется на тот источник который все же светит.
Такова уж природа рендерменовских теней что она помнит где ее генерили.
Так что светящий источник будет бросать тень как бы от того самого...несветящего
Нужна только координатная система или камера которая
генерит эту тень.
Впоследствии эта тень цепляется на тот источник который все же светит.
Такова уж природа рендерменовских теней что она помнит где ее генерили.
Так что светящий источник будет бросать тень как бы от того самого...несветящего
Тогда источник ваще не нужен.
Нужна только координатная система или камера которая
генерит эту тень.
Впоследствии эта тень цепляется на тот источник который все же светит.
Такова уж природа рендерменовских теней что она помнит где ее генерили.
Так что светящий источник будет бросать тень как бы от того самого...несветящего
Нужна только координатная система или камера которая
генерит эту тень.
Впоследствии эта тень цепляется на тот источник который все же светит.
Такова уж природа рендерменовских теней что она помнит где ее генерили.
Так что светящий источник будет бросать тень как бы от того самого...несветящего
A na skol`ko ya pomnyu PRMan voobshe teni v odin prohod ne delaet. On v nachale SHADOWMAP a potom kartinku. A esli eto pro BMRT i podobnye to v odin prohod s raytraced shadows. A potom berem i pishem shader dlya sveta i smeshyaem teni kuda nado. A voobshe chego aftor voprosa dobit`sya hochet. Ato tak i ne ponyat` na chto otvechyat`. Esli vopros pro mojno, to otvet DA tol@ko ostorojno.
Чото я ничо не понял. На кой что то переписывать?
Тень есьм порождение света...нет света - нет тени.
Просто подсунь лампочке которая СВЕТИТ (ну хоть одна то должна быть)
тень от любой другой лампочки которая не светит...которая посути и не нужна...вместо которой поставь
шэдов генератор...получиш все за один проход....без переписок шейдеров...
вот....
Тень есьм порождение света...нет света - нет тени.
Просто подсунь лампочке которая СВЕТИТ (ну хоть одна то должна быть)
тень от любой другой лампочки которая не светит...которая посути и не нужна...вместо которой поставь
шэдов генератор...получиш все за один проход....без переписок шейдеров...
вот....
"Хех... все очень просто... переписываем немного лайтшейдер: в конце illuminate вставляем Cl -= color(intensity, intensity, intensity);
То есть там где свет, Cl будет 0, а в тени - минус intensity, то есть будет "вычитать" из того, что другие лампочки "насветили" "
Подожди, Алекс, а как ты узнаешь, _сколько_ свету насветили другие лампочки? Ну, откуда это "intensity" возьмётся? Ведь ты не можешь даже сказать, какой по счёту будет твоя лампочка в цикле....или я чего-то не тово....?
То есть там где свет, Cl будет 0, а в тени - минус intensity, то есть будет "вычитать" из того, что другие лампочки "насветили" "
Подожди, Алекс, а как ты узнаешь, _сколько_ свету насветили другие лампочки? Ну, откуда это "intensity" возьмётся? Ведь ты не можешь даже сказать, какой по счёту будет твоя лампочка в цикле....или я чего-то не тово....?
intensity - это просто интенсивность самого источника света, к которому подцеплен этот модифицированный шейдер, а, следовательно и глубина "тени". И нам, по идее, абсолютно наплевать на остальные источники, просто эта intensity будет _вычтена_ из суммарного света на поверхностях, как была бы _прибавлена_ в случае обычного, немодифицированного, лайтшейдера.
Я не знаю как народ эту задачу решал (надо поковыряться, небось чего-нить интересненькое придумали), а я переписал shadowMap (float), добавив туда несколько (конкретно четыре) имени файла, а потом использовал MapGen( Shadow), назначил этот мапген на источники, которые светят, но не отбрасывают тени (я у них закрутил intensity в 0), а далее в своем shadowMap сделал референсные ссылки на те камеры, которые генерят тени например [shdmap cam1], а тень от моего источника отключил (frequency>Never) и усе (так можно сделать много теней).
P.S. А спать действительно не помогает ))) Сам пробовал ))
P.S. А спать действительно не помогает ))) Сам пробовал ))