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

алгоритм просчета преломлений?

Тема в разделе "LightWave", создана пользователем Vladlen, 19 июн 2001.

Модераторы: logosman
  1. Vladlen

    Vladlen Активный участник

    С нами с:
    26.10.2001
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    16
    Всегда у меня вызывал жуткий интерес тот как приходится делать реальное стекло в LW. Но хоть убейте не могу понять зачем именно так, почему так неинтуитивно.

    Установки такие поверхность стекла входящая наружу коэфф 1,5 внутрь 1,0
    следующая поверхность на выходе коэффициенты внутрь 1,0 наружу 1,5

    Смотрите луч света падает на поверхность поду углом к примеру 45, материал с коэфф 1,5. Дальше уже луч идет под углом ну к примеру 30 (вроде) далее попадает на поверхность с коэфф 1,0 и почему я не могу понять она должна вновь выходить под углом 45

    Может я чего не понимаю
     
  2. green.7

    green.7 Мастер

    С нами с:
    16.07.2002
    Сообщения:
    286
    Симпатии:
    0
    Баллы:
    138
    какая разница ??? :)
     
  3. Guest

    А кто тебе сказал что он выходит под тем же углом что и входил?
     
  4. Vladlen

    Vladlen Активный участник

    С нами с:
    26.10.2001
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    16
    To ShadowBG
    так а смысл тогда писать везде (к примеру Флеминг тоже описывал это так) что реальное стекло.

    To Green

    разница в понимании того что делаешь, когда понимаешь как это работает и какие ограниченичя есть легче получить предсказуемый результат, а это сэкономленное время, а время это деньги, а деньги это...
     
  5. Guest

    Открываеш учебник физики приблизительно за 8 класс и там все подробно написано, в том числе и почему луч выходит под тем же самым углом.
     
  6. Vladlen

    Vladlen Активный участник

    С нами с:
    26.10.2001
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    16
    Дмитрий почитайте первое письмо прежде чем советовать

    Исходя из физичиских законов луч попадая на выходе на полигон с коэфф 1,0 как раз таки и должен выходит под тем же углом что и вошел в него но в ре-те получается что свет попадая на LW стекло из примера должно проходить и на выходе из стекла должно иметь угол оличный от того что был при входе но этого не происходит, ведь понятия объема для простых обёектов в ЛВ не существует.
     
  7. Guest

    Дорогой Vladlen я внимательно проичитал вопрос из первого письма перед тем как писать ответ. Так как LW (как впрочем и большинсво других пакетов) не имеет "понятия объема" то его приходиться моделировать при помощи вот таких "маленьких" хитростей. Фактически схема 1.5 /1 > 1/1.5 моделирует прохождение луча через объем. Ничего удивительного тут нет.

    PS А если ты действительно хочешь получить настоящее стекло да плюс ко всему работать с ним без всяких вышеперечисленный условностей, то тебе надо искать пакет работающий с Solid объектами. Так все это делается намного просще и с экономией времени ну всего сопутсвующего ему ....:)


    Успехов.
     
  8. Vladlen

    Vladlen Активный участник

    С нами с:
    26.10.2001
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    16
    Не меня это не пугает просто хочется понять как это у ЛВ устроено

    но выходит то что ЛВ помнит коэфф предыдущей поверхности
    так как в нашем случае луч попадая на поверхн. с коэфф 1 выпрямляется
    а в других случаях он как ни в чем небывало проходит прямо без отклонений.
     
  9. Vladlen

    Vladlen Активный участник

    С нами с:
    26.10.2001
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    16
    Не меня это не пугает просто хочется понять как это у ЛВ устроено

    но выходит то что ЛВ помнит коэфф предыдущей поверхности
    так как в нашем случае луч попадая на поверхн. с коэфф 1 выпрямляется
    а в других случаях он как ни в чем небывало проходит прямо без отклонений.
     
  10. Микита Нихалков

    Микита Нихалков Мастер

    С нами с:
    12.03.2001
    Сообщения:
    982
    Симпатии:
    0
    Баллы:
    81
    Он не помнит коэффициент предыдущей поверхности. Когда луч идет от камеры (образно говоря), он искривляется в зависимости от направления нормали поверхности с коэффициентом преломления, отличным от 1. А когда он попадает снова в воздух (его коэффициент преломления близок к 1), то он снова искривляется, вновь в зависимости от направления нормали новой поверхности (во второй раз это будет уже воздух). Таким обрахом, происходит два искривления пути луча. Эти искривления, можно сказать, дополняют друг друга, и поэтому луч после выхода из стекла идет в том же направлении, что и шел до стекла.

    Надеюсь, я все правильно сказал... :)
     
  11. Vladlen

    Vladlen Активный участник

    С нами с:
    26.10.2001
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    16
    Так в этом и есть весь вопрос

    как в одном случае материал с коэфф 1,0 не преломляет и НЕ ИСКАЖАЕТ луч,

    а в другом случае это происходит
    (от того что он выпрямляет луч смысл не меняется ведь он его всеравно искажает)
     
  12. Микита Нихалков

    Микита Нихалков Мастер

    С нами с:
    12.03.2001
    Сообщения:
    982
    Симпатии:
    0
    Баллы:
    81
    Хмм... давай начнем сначала. :)

    луч идет в воздухе с коэффициентом преломления (КП) = 1. Потом он встречается со стеклом, у которого КП=1.3 и искривляет свой путь в зависимости от направления нормали к границе этих двух сред. После того, как его путь искривился на границе воздух-стекло, он идет в стекле прямолинейно. Идет до тех пор, пока не встретит другую среду, с другим КП. В нашем случае это опять воздух. Луч, встретившись на выходе из стекла с воздухом, снова искривляет свой путь, но по другому - если КП у среды, в которой идет луч больше, чем КП у среды, куда он попадет, то он искривляет его в одну сторону. Если наоборот - в другую (когда в какую - это я не знаю, физику помню плохо. Тангенсы, косинусы...). Оба эти искривления (одно на входе, а другое - на выходе) компенсируют друг друга, поэтому после выхода из стекла направление луча до и после стекла - совпадает. Если, конечно, стенки стекла параллельны. Если нет - то не будет совпадать, но алгоритм останется тот же.
     
  13. Vladlen

    Vladlen Активный участник

    С нами с:
    26.10.2001
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    16
    Так ведь по физике именно так и происходит

    но у ЛВ отсутствует понятие объема для простых объектов.

    И по логике ему абсолютно без разницы что за полигон ты ему подсовываешь (в обычном случае)
    будь это полигонс коэфф. 1,5 он свет преломляет
    если это полигон с коэфф 1,0 он обязан его НЕПРЕЛОМЛЯТЬ так как иначе объекты с коэфф преломления 1,0 к примеру мыльные пузыри у нас станут лучи изгибать.8)

    Вот и получается что ЛВ должен помнить с коэфф последнего полигона через который проходил луч ,чтобы в случае со стеклом искажать свет.

    PS: Тут эксперементировал с коэф преломления и обнаружил что можно задавать значения меньшие 1 (к пр. 0,5) и отрицательные значения (-1,5). Математика летит к чертям, результат рендеринга разумный но непонятно что всетаки происходит в этих случаях.
     
  14. Микита Нихалков

    Микита Нихалков Мастер

    С нами с:
    12.03.2001
    Сообщения:
    982
    Симпатии:
    0
    Баллы:
    81
    Искажение света - это уже каустика. А что касается трассировки лучей - так тут он все помнит. Луч идет, преломляется в предметах не на 100% прозрачных, пока не доходит до непрозрачного объекта, или до бэкграунда.

    Точнее, нет! Не помнит он ничего. Он изгибает луч и все. Зачем ему помнить КП поверхности, которую он уже прошел?

    А еще можно и черные источники света делать! Прикольно... Тоже вся математика с физикой нафиг. :)
    А прозрачность "-100" - это я вообще не въезжаю... :)

    Кстати, никто не знает, как в ЛВ 5.6 задать, чтобы больше четырех плагинов для Dispasement Maps (ну или ему подобным закладкам)?

    И как обеспечить плавную прокрутку плагинов в Surface, например? Или вычистить их все в пень...
     
  15. Vladlen

    Vladlen Активный участник

    С нами с:
    26.10.2001
    Сообщения:
    163
    Симпатии:
    0
    Баллы:
    16
    >Точнее, нет! Не помнит он ничего. Он изгибает луч и все.
    >Зачем ему помнить КП поверхности, которую он уже прошел?

    Так для того чтобы в одних случаях на пов-ти с коэфф 1,0 неискажать луч (в большинстве случаев)
    а в других случаях искажать (стекло) ;)
     
  16. Микита Нихалков

    Микита Нихалков Мастер

    С нами с:
    12.03.2001
    Сообщения:
    982
    Симпатии:
    0
    Баллы:
    81
    Искажения формируются сами собой. Когда луч искривляется, он смотрит уже в другую сторону, и рисуется уже другая часть предмета.
     
Модераторы: logosman

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