Войти
ПрограммированиеФорумГрафика

Волновая оптика вместо уравнения рендеринга (3 стр)

Страницы: 1 2 3 4 519 Следующая »
#30
(Правка: 13:21) 13:15, 11 дек 2022

=A=L=X=
> Насколько я понимаю ты как бы сразу контр-волны на этих диполях запрограммировал как данность.
> А мне бы хотелось чтобы симуляция сама их породила исходя из базовых свойств пружинок органически.
на самом деле я их примерно так и считаю. каждый диполь ориентируется по градиенту поля и тем самым его ослабляет. таких диполей на поверхности непрозрачных материалов дофига, поэтому они ориентируются против поля до тех пор, пока не сведут его на нет. интересный момент здесь заключается в том, что поведение каждого отдельно взятого диполя чисто локально — он просто подчиняется локальным силам электростатики. в акустике таких сил нет, поэтому его нужно руками крутить по ориентации градиента поля.

PS на самом деле формирование диполей под действием сил давления, которые поглощают акустические волны, тоже можно так же считать. однако, я в принципе хочу только установившееся решение без переходных процессов, то есть хочу избавляться от времени, наоборот отбрасывая все переходные процессы для эффективности расчёта.

#31
(Правка: 13:49) 13:40, 11 дек 2022

Suslik
> я примерно про это в нульпосте и рассказываю, только поглощение энергии
> происходит не трением, а специальными парами противоположных пружинок
  Вообще-то поглощение энергии происходит в черных полосках на картине интерференции без всяких пружинок.
  И еще, решать волновое уравнение лучше графическим методом, а не механическим.

#32
13:52, 11 дек 2022

Suslik
> в акустике нет фотонов.

в электомагнетизме нет акустики. о чем речь - да хрен знает.

#33
15:10, 11 дек 2022

равен
> Вообще-то поглощение энергии происходит в черных полосках на картине интерференции без всяких пружинок.

Чёрные полоски происходят не из поглощения энергии, а от перенаправления её воздействия. Срикошетила от детектора и тот проспал вспышку - значит чёрная полоса, а если хорошее попадание, то цветная. То есть механическая аналогия там есть.

>И еще, решать волновое уравнение лучше графическим методом, а не механическим.

Но как показали в видео, можно сделать модельки фотонов, а потом прилепить к ним испускаемые ими волны, высчитать сколько как долетит и просчитать свет в нужной точке:)))) Конечно, волнами из соседних областей придётся пренебречь, но это можно постэффектом подмылить.

#34
15:55, 11 дек 2022

Panzerschrek[CN]
> А почему на уравнения Максвелла? Считать сложнее?
В уравнениях Максвелла слишком много информации:
1. Они хранят динамику света, тогда как нас интересуют только стационарные состояния (мы считаем, что все переходные процессы проходят значительно быстрее времени кадра, что справедливо).
2. Они хранят поляризацию света, тогда как в Задаче Суслика (также известной как "global illumination") поляризация нас не интересует.
3. Они хранят широкий спектр частот, тогда как нас интересует только три конкретные частоты - эр, гэ и бэ.

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

Вариант Суслика с диполями, как я понял - он ещё экономит память за счёт того, что пропускает однородные внутренности пустого пространства и окклюдеров, и хранит только "интересную" часть поля - границы разделов сред.

Panzerschrek[CN]
> Зато с ними бы были честные эффекты для разных частот - можно было бы создавать
> белый источник света и он раскладывался бы в радугу при преломлении.
В обработке сигналов есть такая теорема Найквиста - максимальная частота, представимая в дискретном сигнале, равна половине частоте дискретизации.
Периоды реальных световых волн - от 400 до 700 нанометров, то есть, частота в пространстве - порядка миллионов длин волн на метр. И если ты хочешь решать их полным максвеллом - тебе понадобится 3д-сетка с частотой не меньше 1е7 1/м.

А всё, что влезет на реально существующий компьютер - это разные приближения и фейки.

#35
18:04, 11 дек 2022

THE_MASTER
> Суслик, твоя проблема в том, что ты не умеешь изъясеятся простым языком. Вот
> слабо описать свою теорию волновало рендера одним предложением?
"Находим стационарное состояние скалярного поля в среде с точечными монохроматическими источниками и поглощающими поверхностями, выраженными в виде источников-диполей."

#36
(Правка: 18:11) 18:09, 11 дек 2022

Пока делал подробное описание, придумал, как можно довольно близко описать принцип для 8-летних: на освещённой границе непрозрачных предметов мы генерируем "отрицательные направленные источники света" ("диполь" - это специфический вид направленности с мягкими границами), затем считаем итоговую картинку как сумму настоящих и "отрицательных" источников, и в области теней эта сумма компенсируется в ноль.

#37
(Правка: 20:08) 19:25, 11 дек 2022

Имбирная Ведьмочка
>Пока делал подробное описание, придумал, как можно довольно близко описать принцип для 8-летних: на освещённой границе непрозрачных предметов мы генерируем "отрицательные направленные источники света"

Заверните пожалуйста пару фонариков светящих тьмой. Такую лампочку вкрутить в светильник - вот хохма будет:) Включил свет и звиздец.

>затем считаем итоговую картинку как сумму настоящих и "отрицательных" источников, и в области теней эта сумма компенсируется в ноль.

Правильно, засорять мозги нужно с детства! Чем меньше в формулах нормального смыла, тем дольше их будут помнить;)
Здесь диполь это просто отрицательный вектор механической силы, который нейтрализует положительный, типа дующих с противоположных сторон на кирпич двух вентиляторов.

#38
21:09, 11 дек 2022

Суслик, когда ж ты наконец поймешь что програмист графики должен быть художником?

#39
21:23, 11 дек 2022

Имбирная Ведьмочка

> придумал, как можно довольно близко описать принцип для 8-летних:

давай еще затяжечку и попробуй еще раз, и для 12 летних

#40
(Правка: 2:09) 2:06, 12 дек 2022

slepov
> давай еще затяжечку и попробуй еще раз, и для 12 летних
Почти то же самое, только на самом деле, интенсивность света - это не действительное число, а произвольное комплексное; соответственно - они не просто "компенсируются", а именно интерферируют. В тени - разумеется, интерферируют в ноль, а вот на границе - не совсем, отсюда и характерные артефакты.

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

#41
(Правка: 3:43) 3:33, 12 дек 2022

Имбирная Ведьмочка
> Периоды реальных световых волн - от 400 до 700 нанометров, то есть, частота в пространстве - порядка миллионов длин волн на метр.
тут два важных "но":
- во-первых, если просто считать длину волны в 1000000 больше, чем она в реальности, то артефакты такого процесса могут будут гораздо меньше артефактов тех процессов, что моделируются геометрической оптикой
- во-вторых, пусть даже сетка будет с шагом в 1-10см, в волновой оптике ты хранишь o(1) величин в каждой точке, чтобы хранить информацию об освещении. в геометрической оптике локальная информация описывается угловым распределением освещённости \(L(\vec \omega), \vec \omega \in R^3\), то есть суммарный объём памяти растёт как R^5. волновая оптика просто лучше масштабируется.

> Основной прикол в том, что для того, чтобы посчитать свет в произвольной точке - достаточно только сложить вклад от всех источников вместе, при этом не тратя время на геометрические проверки пересечений.
собственно, да. я забыл об этом явно указать, но это — действительно один из самых главных аспектов. благодаря нему освещение можно описать свёрткой, то есть решать через fft.

Имбирная Ведьмочка
толку им объяснять основы физики? ладно бы им было действительно интересно понять или разобраться. нет же, они считают, что они уже знают всё что им нужно знать, и в лучшем случае интересуются, чтобы оправдать для себя, почему им это не интересно. плюс чем больше ты им внимания уделяешь, тем им радостнее тут тусоваться. иди лучше прогать.

#42
10:37, 12 дек 2022

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

Самообман. Вся геометрия сцены делает вклад. Не будешь проводить лучи - станешь обсчитывать состояние каждой точки пространства. Потому что переотражения затенения, то ради чего и весь сыр бор. Суслик ухватился за тот факт что состояние поверхности вокруг сцены определяет дальнейшее распространение света. Да ,это верно, голограммы это состояние и записывают. Только вот он потратит на это состояние еще больше мегабайт.

#43
10:50, 12 дек 2022

slepov
> Имбирная Ведьмочка
> > Основной прикол в том, что для того, чтобы посчитать свет в произвольной
> > точке
> > - достаточно только сложить вклад от всех источников вместе, при этом не
> > тратя
> > время на геометрические проверки пересечений.
> >
>
> Самообман. Вся геометрия сцены делает вклад. Не будешь проводить лучи - станешь
> обсчитывать состояние каждой точки пространства. Потому что переотражения
> затенения, то ради чего и весь сыр бор. Суслик ухватился за тот факт что
> состояние поверхности вокруг сцены определяет дальнейшее распространение света.
> Да ,это верно, голограммы это состояние и записывают. Только вот он потратит на
> это состояние еще больше мегабайт.

Проблема в том что кекобайт жопой жуй, с ними проблем нет, а кекофлопс не хватает.

#44
10:51, 12 дек 2022

Asdpoi
> кекобайт жопой жуй, с ними проблем нет, а кекофлопс не хватает

сам допетрай дальше что на каждый кекобайт по какофлопсу надо

Страницы: 1 2 3 4 519 Следующая »
ПрограммированиеФорумГрафика