Получи случайную криптовалюту за регистрацию!

sleeping рассказала, как в GLSL использовать комплексные числа | Канал Ильи Бирмана

sleeping рассказала, как в GLSL использовать комплексные числа. Всё, я знаю, что на следующий ливкодинг буду делать.

Координаты пикселя на экране можно воспринимать как комплексное число. Положение по оси x воспринимаем как действительную часть, по y — как мнимую.

Казалось бы, ничего не поменялось, было две цифры, две и осталось. Но нет. Координаты пикселей на экране можно складывать и вычитать, например (2,3) + (1,1) = (3,4). А вот умножать и делить нельзя. А комплексные числа можно.

Так что берём координаты пикселя, комплексим, в цикле возводим в квадрат, складываем, инвертируем, и в конце концов, искажённые координаты используем для рендера простой сцены с шариками.

И выходит прямо весело. А главное, кода всего ничего. Вот, например, как этот фрактал делается:


for(int j=0;j<8;j++){
z = inverse(z*z+a);
z = z + a;
}