1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

Свет и Тени

Тема в разделе "RenderMan", создана пользователем -, 5 сен 2002.

Модераторы: Moderator.
  1. Guest

    Привет.
    Можно в рендермане непосредственно в МТОР поставить источник света с тем условием что он не светит но тень отбрасывает ?
    Спасибо.
     
  2. Guest

    Поставь цвет источника - черный, а цвет тени - белый, вот и получишь белые тени на неосвещенном объекте...
     
  3. Guest

    Тогда источник ваще не нужен.
    Нужна только координатная система или камера которая
    генерит эту тень.
    Впоследствии эта тень цепляется на тот источник который все же светит.
    Такова уж природа рендерменовских теней что она помнит где ее генерили.
    Так что светящий источник будет бросать тень как бы от того самого...несветящего
     
  4. Guest

    Тогда источник ваще не нужен.
    Нужна только координатная система или камера которая
    генерит эту тень.
    Впоследствии эта тень цепляется на тот источник который все же светит.
    Такова уж природа рендерменовских теней что она помнит где ее генерили.
    Так что светящий источник будет бросать тень как бы от того самого...несветящего
     
  5. Guest

    Так просто непосредственно - сразу и не скажу. Но можно отрендерить тень в отдельный слой, а потом просто скомпозитить с рендерером без тени и без источника света.
     
  6. Guest

    Меня интересует возможно ли бобиться подобного эффекта в один проход или же нет ?
    Спасибо.
     
  7. Guest

    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.
     
  8. Guest

    Хех... все очень просто... переписываем немного лайтшейдер: в конце illuminate вставляем
    Cl -= color(intensity, intensity, intensity);
    То есть там где свет, Cl будет 0, а в тени - минус intensity, то есть будет "вычитать" из того, что другие лампочки "насветили" :)
     
  9. Guest

    Чото я ничо не понял. На кой что то переписывать?
    Тень есьм порождение света...нет света - нет тени.
    Просто подсунь лампочке которая СВЕТИТ (ну хоть одна то должна быть)
    тень от любой другой лампочки которая не светит...которая посути и не нужна...вместо которой поставь
    шэдов генератор...получиш все за один проход....без переписок шейдеров...
    вот....
     
  10. Guest

    Да нет, это все понятно, в случае, когда у тебя 2 лампочки, можно и так. А если у тебя там два десятка других светильников, и еще каждый со своими тенями и аттенюейшенами, то может оказаться, что проще один раз _вычесть_ тень из всего, чего они насветили...
     
  11. Guest

    Попытаюсь осветить вопрос.Тоесть к примеру ставим сферу на план , с одной стороны ставим один спот с другой другой , оба отбрасывают тень но светит только первый.
    Тоесть то что ты сказал может к этому подойти ? Попробую. Спасибо.
     
  12. Guest

    Аааааа....понятна.....
    Мдасс...клинит порой...нужно всетаки иногда спать:)
     
  13. Guest

    > Мдасс...клинит порой...нужно всетаки иногда спать:)

    Я пробовал, не помогает :)))
     
  14. Guest

    Странные вы парни .
     
  15. Guest

    даже не знанию как это воспринимать...озадачил.
    Типа диагноз поставил?
    На кой этот пост был?
     
  16. Guest

    Я чего-то тоже не понял.. Наверно это так витиевато благодарность выражена была..
     
  17. Guest

    "Хех... все очень просто... переписываем немного лайтшейдер: в конце illuminate вставляем Cl -= color(intensity, intensity, intensity);
    То есть там где свет, Cl будет 0, а в тени - минус intensity, то есть будет "вычитать" из того, что другие лампочки "насветили" :)"

    Подожди, Алекс, а как ты узнаешь, _сколько_ свету насветили другие лампочки? Ну, откуда это "intensity" возьмётся? Ведь ты не можешь даже сказать, какой по счёту будет твоя лампочка в цикле....или я чего-то не тово....?
     
  18. Guest

    intensity - это просто интенсивность самого источника света, к которому подцеплен этот модифицированный шейдер, а, следовательно и глубина "тени". И нам, по идее, абсолютно наплевать на остальные источники, просто эта intensity будет _вычтена_ из суммарного света на поверхностях, как была бы _прибавлена_ в случае обычного, немодифицированного, лайтшейдера.
     
  19. Guest

    Всё, понял, торможу ;)
     
  20. Guest

    Я не знаю как народ эту задачу решал (надо поковыряться, небось чего-нить интересненькое придумали:)), а я переписал shadowMap (float), добавив туда несколько (конкретно четыре) имени файла, а потом использовал MapGen( Shadow), назначил этот мапген на источники, которые светят, но не отбрасывают тени (я у них закрутил intensity в 0), а далее в своем shadowMap сделал референсные ссылки на те камеры, которые генерят тени например [shdmap cam1], а тень от моего источника отключил (frequency>Never) и усе (так можно сделать много теней).


    P.S. А спать действительно не помогает :)))) Сам пробовал :)))
     
Модераторы: Moderator.

Поделиться этой страницей