TGViewer
Channel Public Channel
Прогаем с кенгурой

Прогаем с кенгурой

@coding_with_kangaroo

Сидим с кенгурой под горой, запекаем текстуры...

{ программирование, процедурная генерация, графика, аудио, образование и немного про специфичные игры }

https://gostrobrod.dev

https://boosty.to/gostrobrod
Subscribers
236
Photos
224
Videos
201
Links
184

Showing posts older than #360 · Back to latest

Older Posts 17 shown
Post #359 116
Нестабильность горизонтальной развёртки
Дрожание строк (смещение/гребенка и тд)

Принцип
Тут уже вопрос не только к самой трубке, но и к системе развертки/синхронизации. Из-за сбоя/реальности мира/плохой настройки строки не синхронизированы с лучом и строки съезжают

Алгоритм
Смещаем x по y и чему еще хотите перед чтением с текстуры. Я вот такого например наворотил:

uv.x += 0.01 * U.amplitude * (sin(U.frequency * uv.y * U.height + U.time) + rand(float2(uv.y, fract(U.time))) * 2 - 1);
  • ⚡ 3
  • 👍 1
Post #358 108
Затемнение на краях
На краях экрана (слева и справа яркость падает) (это не виньетка!)

Принцип
Из-за большего отклонения на краях строки луч обладает меньшей энергией из-за более длинной траектории и расфокусировки. Как результат, ток падает и визуально края кажутся темнее.

Алгоритм
По гладкой кривой занижаем яркость по x, например:

float k = 1.0 - 5 * U.amount * pow(in.uv.x - 0.5, 4);
src.rgb *= k;
  • 👍 3
Post #357 100
Шлейф
Светлые области оставляют шлейф/след на следующих кадрах

Принцип
Мишень не успевает восстановиться (разрядиться) и остаточный заряд переходит на следующий кадр, добавляя яркости

Алгоритм
Храним предыдущий кадр после смешения и по его яркости мешаем с ним текущий
  • 👍 4
Post #356 108
Bloom
Светлые области "засвечивают", растекаются на близлежащие темные.

Принцип
Из-за того, что луч имеет размер, он задевает яркие участки и засвечивает темные.

Алгоритм
Смешиваем картинку с блюренной по яркости блюренной (чем ярче, тем больше намешиваем. Есть два пути:
1. Правильный - по строкам
2. Простой - просто блюрим и мешаем
  • 👍 1
Post #355 108
Шум в тени
Во всех сенсорах, основанных на электрических процессах, присутствует шум на малоосвещенных участках картинки.

Принцип
Даже при отсутсвии засвета в системе протекают слабые токи, к которым добавлются тепловые флуктуации.

Алгоритм
Добавляем шум с коэффициентом (1-яркость), чтобы зашумить именно темные участки (светлые на самом деле тоже зашумляются, но не так заметно)
  • 👍 3
Post #354 126
Мягкость картинки
На аналоговой камере картинка получается достаточно мягкой - без резких границ (хотя это зависит от трубки)

Принцип
Из-за того, что у нас нет как таковых зерен/пикселей, а только уровень сигнала в момент времени + сканирующий луч имеет толщину и размытие, у нас будут подблюрены строки

Алгоритм
1. Правильный: блюрим строки по горизонтали (луч идет по строкам, соответственно и блюрится будет внутри строки в основном)
2. Простой: просто слегка подблюриваем гауссом весь кадр - эффект будет не такой классный, но мы потом попячим дополнимтельно
  • ❤ 2
  • 👀 2
Post #353 122
Прогаем с кенгурой Самое красивое и интересное тут (ИМХО) это передающие телевизионные трубки: 1 - иконоскоп 2 - супериконоскоп 3 - ортикон 4 - суперортикон 5 - видикон 6 - много их разных еще есть Вообще там еще катушки должны быть фокусирующие и отклоняющие, но на картинке…
Мне полегчало и я накидал эффектов по трубкам
  • 👍 2
  • ❤ 1
Post #352 137
математически обоснованный костыль не является костылем
  • 🔥 3
  • 💘 2
  • ❤ 1
  • 😁 1
Post #351 201
Псевдо-жидкость


float2 uv = -1. + 2. * In.v_texcoord;
for(int i = 0; i < 10; ++i) {
uv.y += sin(uv.x * i * 4 + 6 * sin(0.3 * U.time)) * 0.01 * i;
uv.x += sin(uv.y * i * 3 + 8 * cos(0.1 * U.time)) * 0.01 * i;
}
uv = uv * 0.5 + 0.5;
float4 a = mix(float4(1,0,0,1), float4(1,1,0,1), uv.x);
float4 b = mix(float4(0,0,1,1), float4(0,1,0,1), uv.x);
float4 c = mix(a, b, uv.y);
return pow(c,0.75);
  • 🔥 6
  • 👍 1
Post #350 193
Post #349 167
я зачем-то заболел, потому посты пока на паузе
  • 😢 2
  • 🙏 2
  • ❤ 1
Post #348 179
Post #347 165
Прогаем с кенгурой Зачем-то решил в ходе прокрастинации смоделировать звук инструмента по его геометрии. Так как есть куча параметров кроме геометрии, а физический мир на практике чуть сложнее трех формул из теории для разных видов вибраторов, пришлось эту кучу параметров подбирать…
Обернул модель вот этого безобразия в дезмос

https://www.desmos.com/calculator/foeis5maji
Desmos String model Explore math with our beautiful, free online graphing calculator. Graph functions, plot points, visualize algebraic equations, add sliders, animate graphs, and more.
  • ❤ 2
Post #346 160
Зачем-то решил в ходе прокрастинации смоделировать звук инструмента по его геометрии. Так как есть куча параметров кроме геометрии, а физический мир на практике чуть сложнее трех формул из теории для разных видов вибраторов, пришлось эту кучу параметров подбирать торчом. Результат синтеза все равно - говно. Завтра (уже 2 часа как сегодня) буду искать пакеты для физического моделирования акустических систем.
  • 😁 3
Post #344 158
Кстати за вот это вот все и дальше скажите спасибо Эйнштейну, который открыл фотоэффект и получил за это нобелевку более ста лет назад.
  • 🔥 5
  • ❤ 3
Post #339 168
Самое красивое и интересное тут (ИМХО) это передающие телевизионные трубки:
1 - иконоскоп
2 - супериконоскоп
3 - ортикон
4 - суперортикон
5 - видикон
6 - много их разных еще есть

Вообще там еще катушки должны быть фокусирующие и отклоняющие, но на картинке их нет.

Принцип их +/- похожий:
- свет с объектива заряжает мишень
- при сканировании мишени лучом тот дозаряжает каждый участок, при этом если он уже был заряжен, но этот заряд идет в сигнал

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

Из-за того, что у нас мишень, а не матрица, то в зависимости от устройства у нас либо не будет пикселей вообще, либо будет зерно, либо какая-то маска.
  • ❤ 2
  • 👀 2
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →