По иконке текстурпаков фанаты вычислили seed мира Minecraft через десять лет после скриншота
pack.png видел каждый фанат майнкрафта: холм, озеро, водопад. Откуда кадр — было неизвестно, пока в 2020-м ютубер SalC1 не спросил об этом вслух. Дальше сообщество устроило расследование.
По облакам и ориентации текстур блоков восстановили ракурс, заодно вычислили способ съёмки: Print Screen и кроп до 512×512. Ключевой факт: рельеф зависит только от нижних 48 бит сида — пространство перебора 2⁴⁸, 281 триллион вариантов. Фильтром стало перемешивание песка с землёй в кадре: сгенерировал кусок мира — сравнил. Подняли распределённый счёт на BOINC, 3700 добровольцев, три дня — seed найден: 3257840388504953787. В этот мир можно зайти и встать в точку, откуда сделан кадр.
Что важно для геймдева: детерминированную генерацию игроки вскрывают реверс инжинирингом. Мод SeedCrackerX вычисляет seed сервера по паре данжей, после чего руды и крепости видны насквозь. Это цена детерминизма — правда, он слишком удобен для разработки, без него не было бы ни сидов, ни RNG-манипуляций в спидранах.
В статье — что у таких генераторов внутри.
#мат_геймдев #МатРазбор #алгоритмы
pack.png видел каждый фанат майнкрафта: холм, озеро, водопад. Откуда кадр — было неизвестно, пока в 2020-м ютубер SalC1 не спросил об этом вслух. Дальше сообщество устроило расследование.
По облакам и ориентации текстур блоков восстановили ракурс, заодно вычислили способ съёмки: Print Screen и кроп до 512×512. Ключевой факт: рельеф зависит только от нижних 48 бит сида — пространство перебора 2⁴⁸, 281 триллион вариантов. Фильтром стало перемешивание песка с землёй в кадре: сгенерировал кусок мира — сравнил. Подняли распределённый счёт на BOINC, 3700 добровольцев, три дня — seed найден: 3257840388504953787. В этот мир можно зайти и встать в точку, откуда сделан кадр.
Что важно для геймдева: детерминированную генерацию игроки вскрывают реверс инжинирингом. Мод SeedCrackerX вычисляет seed сервера по паре данжей, после чего руды и крепости видны насквозь. Это цена детерминизма — правда, он слишком удобен для разработки, без него не было бы ни сидов, ни RNG-манипуляций в спидранах.
В статье — что у таких генераторов внутри.
#мат_геймдев #МатРазбор #алгоритмы
👍5🔥2
Шанс 50/50 выбить нож в CS стоит 660 $
Шанс ножа в кейсе — 0,26%. Эту цифру Valve не публиковала: сообщество годами восстанавливало её по статистике анбоксингов. В 2017-м Министерство культуры Китая обязало раскрывать вероятности лутбоксов, и таблицу выложил Perfect World — издатель, через которого Valve работает в Китае.
Чтож, посчитаем. Памяти у кейсов нет, попытки независимы: шанс хотя бы одного ножа за N кейсов — 1−(1−0,0026)^N. Сотня кейсов — должно же хватить? Конечно же нет: 23%. Монетка 50/50 набегает только к 267-му кейсу — те самые 660 $ ключами. Уверенные 99% — 1769 кейсов, около 4 400 $.
Ну и моё любимое: остаться без ножа после двух тысяч кейсов вдвое вероятнее, чем выбить его из первого же. Не верите — посчитайте. Пустой кейс — это 99,74%. Возведите в степень 2000: остаётся 0,55%. А нож с первой попытки — те самые 0,26%. Шанс «всё ещё пусто» тает вдвое каждые 266 кейсов и нуля не достигает никогда: из 100 000 человек, открывших по 2000 кейсов, около 550 останутся ни с чем — хотя «в среднем» нож выпадает на 385-м.
И вот что я в этой истории так же люблю: та же Valve в Dota подкручивает криты в вашу пользу, лишь бы серия промахов не испортила вам вечер. В кейсах серия неудач продаёт ключи, поэтому кейс номер 2000 ничем не отличается от первого. Даже Genshin даёт гарантию на 90-й крутке. Тут — ни на какой.
Шансы при этом честные, жульничать тут и не нужно.
#мат_геймдев #МатРазбор #геймдизайн
Шанс ножа в кейсе — 0,26%. Эту цифру Valve не публиковала: сообщество годами восстанавливало её по статистике анбоксингов. В 2017-м Министерство культуры Китая обязало раскрывать вероятности лутбоксов, и таблицу выложил Perfect World — издатель, через которого Valve работает в Китае.
Чтож, посчитаем. Памяти у кейсов нет, попытки независимы: шанс хотя бы одного ножа за N кейсов — 1−(1−0,0026)^N. Сотня кейсов — должно же хватить? Конечно же нет: 23%. Монетка 50/50 набегает только к 267-му кейсу — те самые 660 $ ключами. Уверенные 99% — 1769 кейсов, около 4 400 $.
Ну и моё любимое: остаться без ножа после двух тысяч кейсов вдвое вероятнее, чем выбить его из первого же. Не верите — посчитайте. Пустой кейс — это 99,74%. Возведите в степень 2000: остаётся 0,55%. А нож с первой попытки — те самые 0,26%. Шанс «всё ещё пусто» тает вдвое каждые 266 кейсов и нуля не достигает никогда: из 100 000 человек, открывших по 2000 кейсов, около 550 останутся ни с чем — хотя «в среднем» нож выпадает на 385-м.
И вот что я в этой истории так же люблю: та же Valve в Dota подкручивает криты в вашу пользу, лишь бы серия промахов не испортила вам вечер. В кейсах серия неудач продаёт ключи, поэтому кейс номер 2000 ничем не отличается от первого. Даже Genshin даёт гарантию на 90-й крутке. Тут — ни на какой.
Шансы при этом честные, жульничать тут и не нужно.
#мат_геймдев #МатРазбор #геймдизайн
🔥6😁3👎1
Математика невезения: как игры подкручивают случайность, чтобы она ощущалась честной
https://dev-math.ru/articles/lootboxes/
Всю неделю мы разбирали рандом по кусочкам — сегодня забираем всю кухню разом. Внутри вывод констант, пять интерактивов прямо в браузере и цифры, после которых надпись «шанс 1%» читается иначе. Жду🔥 и репостов друзьям 😆
Игроки читают «1% дропа» как «1 из 100», а random в игре считают честным броском — оба утверждения неверны, и на этом зазоре держатся и фрустрация, и часть монетизации. В статье случайность разобрана как три слоя.
Первый — генератор: LCG в одну строку, детерминизм seed и история pack.png с перебором 2⁴⁸, спектральный тест Кнута и провал RANDU.
Второй — искажение распределения под восприятие: PRD в Dota с численным выводом константы C, pity-системы Genshin и Hearthstone, true hit Fire Emblem, aim assist XCOM и shuffle bag Тетриса.
Третий — экономика дропрейта: геометрическое распределение, 385 против 267 кейсов до ножа CS, кривая 1−(1−p)^N и регулирование лутбоксов от Китая 2017-го до отменённого штрафа EA в Нидерландах. Разработчик получает карту выбора инструмента — голый PRNG, PRD, pity или shuffle bag — и честный список цен, которыми оплачивается каждое сглаживание дисперсии.
#мат_геймдев #МатРазбор #алгоритмы #геймдизайн
https://dev-math.ru/articles/lootboxes/
Всю неделю мы разбирали рандом по кусочкам — сегодня забираем всю кухню разом. Внутри вывод констант, пять интерактивов прямо в браузере и цифры, после которых надпись «шанс 1%» читается иначе. Жду
Игроки читают «1% дропа» как «1 из 100», а random в игре считают честным броском — оба утверждения неверны, и на этом зазоре держатся и фрустрация, и часть монетизации. В статье случайность разобрана как три слоя.
Первый — генератор: LCG в одну строку, детерминизм seed и история pack.png с перебором 2⁴⁸, спектральный тест Кнута и провал RANDU.
Второй — искажение распределения под восприятие: PRD в Dota с численным выводом константы C, pity-системы Genshin и Hearthstone, true hit Fire Emblem, aim assist XCOM и shuffle bag Тетриса.
Третий — экономика дропрейта: геометрическое распределение, 385 против 267 кейсов до ножа CS, кривая 1−(1−p)^N и регулирование лутбоксов от Китая 2017-го до отменённого штрафа EA в Нидерландах. Разработчик получает карту выбора инструмента — голый PRNG, PRD, pity или shuffle bag — и честный список цен, которыми оплачивается каждое сглаживание дисперсии.
#мат_геймдев #МатРазбор #алгоритмы #геймдизайн
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8
Честно — как статья про дропрейты?
Anonymous Poll
56%
🔥 Понятно и полезно
11%
👍 Полезно, но местами сложно
22%
🤔 Интересно, но не всё понятно
11%
😴 Не зашло
❤1
Горы, облака и мрамор в играх никто не рисовал — это одна функция
Откройте Minecraft и полетайте над миром. Горы, пещеры, береговые линии — этого рельефа нет ни в одном файле. Его никто не рисовал и не сканировал. Это значения функции: подаёте ей координаты точки — получаете высоту.
Казалось бы, чтобы получить такую «природную» случайность, достаточно взять random на каждую точку. Ну попробуйте — получите белый шум, ту самую телевизионную «снежинку». Для ландшафта это мусор: каждая точка живёт сама по себе, ни холмов, ни долин, один хаос. Фокус,
собственно, не в случайности, а в ГЛАДКОЙ случайности — у соседних точек значения близкие. Вот из этого и получается логичный рельеф.
Имя у фокуса есть: шум Перлина. Кен Перлин придумал его ещё в 1982-м. Он бесился от «пластмассового» вида графики, над которой работал для «Трона», и захотел управляемую случайность (позже за неё дали
технический «Оскар»). Сегодня на ней стоит половина видимой природы в
играх: рельеф и пещеры Minecraft (тот же seed — тот же мир у всех), облака в Horizon Zero Dawn, мрамор и огонь в текстурах.
На неделе разберём, как функция от (x, y) превращается в горный хребет и почему один и тот же seed в Minecraft всегда даёт один и тот
же мир. 🔥
#мат_геймдев #МатРазбор #procgen #шейдеры
Откройте Minecraft и полетайте над миром. Горы, пещеры, береговые линии — этого рельефа нет ни в одном файле. Его никто не рисовал и не сканировал. Это значения функции: подаёте ей координаты точки — получаете высоту.
Казалось бы, чтобы получить такую «природную» случайность, достаточно взять random на каждую точку. Ну попробуйте — получите белый шум, ту самую телевизионную «снежинку». Для ландшафта это мусор: каждая точка живёт сама по себе, ни холмов, ни долин, один хаос. Фокус,
собственно, не в случайности, а в ГЛАДКОЙ случайности — у соседних точек значения близкие. Вот из этого и получается логичный рельеф.
Имя у фокуса есть: шум Перлина. Кен Перлин придумал его ещё в 1982-м. Он бесился от «пластмассового» вида графики, над которой работал для «Трона», и захотел управляемую случайность (позже за неё дали
технический «Оскар»). Сегодня на ней стоит половина видимой природы в
играх: рельеф и пещеры Minecraft (тот же seed — тот же мир у всех), облака в Horizon Zero Dawn, мрамор и огонь в текстурах.
На неделе разберём, как функция от (x, y) превращается в горный хребет и почему один и тот же seed в Minecraft всегда даёт один и тот
же мир. 🔥
#мат_геймдев #МатРазбор #procgen #шейдеры
🔥15❤3👍2
Шум Перлина — это не случайные числа. Это случайные стрелки
Наивная идея «шума»: накидать
в узлы сетки случайные значения
и интерполировать между ними.
Это value noise — и он сразу выдаёт себя: сквозь картинку проступает сетка, всё распадается на квадраты.
Перлин сделал хитрее. В узле лежит не число, а случайное направление — градиент, стрелка.
Значение в точке — это скалярные произведения этих стрелок на векторы «от угла к точке», плавно смешанные специальной кривой:
В узлах значение строго ноль — оттого ни «пятен» на решётке,
ни швов.
А главное: стрелки не бросаются заново, а считаются хешем от целых координат и сида. Тот же узел при том же сиде — та же стрелка. Всегда. Собственно, поэтому один seed в Minecraft рисует одинаковый мир у всех.
#мат_геймдев #МатРазбор #шейдеры #procgen
Наивная идея «шума»: накидать
в узлы сетки случайные значения
и интерполировать между ними.
Это value noise — и он сразу выдаёт себя: сквозь картинку проступает сетка, всё распадается на квадраты.
Перлин сделал хитрее. В узле лежит не число, а случайное направление — градиент, стрелка.
Значение в точке — это скалярные произведения этих стрелок на векторы «от угла к точке», плавно смешанные специальной кривой:
float n00 = dot(g00, p - c00); // стрелка · смещение
float n10 = dot(g10, p - c10); // ...для всех 4 углов клетки
float n01 = dot(g01, p - c01);
float n11 = dot(g11, p - c11);
vec2 f = fade(fract(p)); // гладкая кривая, НЕ линейная
float n = mix(mix(n00,n10,f.x), mix(n01,n11,f.x), f.y);
В узлах значение строго ноль — оттого ни «пятен» на решётке,
ни швов.
А главное: стрелки не бросаются заново, а считаются хешем от целых координат и сида. Тот же узел при том же сиде — та же стрелка. Всегда. Собственно, поэтому один seed в Minecraft рисует одинаковый мир у всех.
#мат_геймдев #МатРазбор #шейдеры #procgen
🔥12👍1
Одна октава шума — скучный холм. Горы начинаются со сложения
Шум Перлина из прошлого поста сам по себе — пологие холмы. Ни скал,
ни хребтов, ни мелкой шероховатости. А в природе деталь живёт на
каждом масштабе — это фрактал. Так что шум складывают сам с собой на
разных частотах:
Шесть строк — и «капля» становится правдоподобным хребтом. А подать
шум на вход самому шуму, fbm(p + fbm(p)) — гребни завихряются, и из
той же функции выходят облака, мрамор, лава. Этот приём, domain
warping, — фирменная магия Иниго Килеза (если не слышали — сооснователь
Shadertoy и автор iquilezles.org, «библии» процедурной графики).
Собственно, вся процедурная природа — базовый шум плюс две надстройки:
сложить октавы и исказить координаты. Облака в Horizon Zero Dawn,
рельеф Minecraft, мрамор в текстурах — всё отсюда. Только не берите
мало октав (выйдут «пузыри») и не сэмплите через random на пиксель
(мерцающая каша).
#мат_геймдев #МатРазбор #procgen #шейдеры
Шум Перлина из прошлого поста сам по себе — пологие холмы. Ни скал,
ни хребтов, ни мелкой шероховатости. А в природе деталь живёт на
каждом масштабе — это фрактал. Так что шум складывают сам с собой на
разных частотах:
float sum = 0.0, amp = 0.5, freq = 1.0;
for (int i = 0; i < 6; i++) {
sum += amp * noise(p * freq);
freq *= 2.0; // частота ×2 (lacunarity)
amp *= 0.5; // вклад ×0.5 (gain)
}
// sum — это fBm, фрактальный шум
Шесть строк — и «капля» становится правдоподобным хребтом. А подать
шум на вход самому шуму, fbm(p + fbm(p)) — гребни завихряются, и из
той же функции выходят облака, мрамор, лава. Этот приём, domain
warping, — фирменная магия Иниго Килеза (если не слышали — сооснователь
Shadertoy и автор iquilezles.org, «библии» процедурной графики).
Собственно, вся процедурная природа — базовый шум плюс две надстройки:
сложить октавы и исказить координаты. Облака в Horizon Zero Dawn,
рельеф Minecraft, мрамор в текстурах — всё отсюда. Только не берите
мало октав (выйдут «пузыри») и не сэмплите через random на пиксель
(мерцающая каша).
#мат_геймдев #МатРазбор #procgen #шейдеры
🔥8
This media is not supported in your browser
VIEW IN TELEGRAM
Тизер-трейлер "Приключения Дейва"
Ниче пока не придумал. Включая название. Просто было интересно на сколько сложно будет сделать что я делаю в формате комикса, в формате мультиков, чтобы это можно было выложить в шортсы и вк клипы.
Получился небольшой тизер трейлер по вселенной которая в дальнейшем будет раскрываться в комиксах. По мультфильмам не знаю, учитывая кост одного ролика и того, что делаю я это пока просто на энтузиазме - будем посмотреть.
Ниче пока не придумал. Включая название. Просто было интересно на сколько сложно будет сделать что я делаю в формате комикса, в формате мультиков, чтобы это можно было выложить в шортсы и вк клипы.
Получился небольшой тизер трейлер по вселенной которая в дальнейшем будет раскрываться в комиксах. По мультфильмам не знаю, учитывая кост одного ролика и того, что делаю я это пока просто на энтузиазме - будем посмотреть.
🔥7👎2
Перлин пофиксил свой шум в 2001-м. А потом запатентовал фикс
Три поста я рассказывал вам про шум Перлина. Чтож, у него два изъяна.
Первый: его узор тайком выстраивается по осям. Шум считается по сетке-клеточкам, и бугры на нём тянутся
по горизонтали и вертикали, будто прилипли к тетрадному листу. На горах незаметно, а на ровной воде или в анимации глаз уже ловит эту «решётку».
Второй: он дорожает с каждым измерением. 2D-шум — плоская картинка (карта высот). 3D — объём: так в Minecraft режут пещеры. 4D — объём, который ещё и движется во времени (дым, бегущие облака); четвёртая ось — время. А чтобы взять значение, шум перебирает все углы клетки — 2ⁿ штук: 4, 8, 16. Каждое измерение удваивает счёт.
И знаете, кто это починил? Сам Перлин. В 2001-м он выкатил
Simplex-noise, и фикс почти издевательски прост: резать пространство не на квадраты, а на треугольники (в 3D — тетраэдры). Углов у них не 2ⁿ,
а n+1: 3, 4, 5 вместо 4, 8, 16. И «решётка» по осям заодно пропадает.
А что забавно: этот фикс Перлин запатентовал (US 6 867 776). И индустрия годами использовала обходной шум — OpenSimplex (Курт Спенсер, 2014), лишь бы не судиться. Патент истёк только в январе 2022-го — но OpenSimplex уже прижился.
Для рельефа классики хватает с головой. А в 3D, дыме и облаках — цена Перлина кусается.
#мат_геймдев #МатРазбор #procgen #алгоритmы
Три поста я рассказывал вам про шум Перлина. Чтож, у него два изъяна.
Первый: его узор тайком выстраивается по осям. Шум считается по сетке-клеточкам, и бугры на нём тянутся
по горизонтали и вертикали, будто прилипли к тетрадному листу. На горах незаметно, а на ровной воде или в анимации глаз уже ловит эту «решётку».
Второй: он дорожает с каждым измерением. 2D-шум — плоская картинка (карта высот). 3D — объём: так в Minecraft режут пещеры. 4D — объём, который ещё и движется во времени (дым, бегущие облака); четвёртая ось — время. А чтобы взять значение, шум перебирает все углы клетки — 2ⁿ штук: 4, 8, 16. Каждое измерение удваивает счёт.
И знаете, кто это починил? Сам Перлин. В 2001-м он выкатил
Simplex-noise, и фикс почти издевательски прост: резать пространство не на квадраты, а на треугольники (в 3D — тетраэдры). Углов у них не 2ⁿ,
а n+1: 3, 4, 5 вместо 4, 8, 16. И «решётка» по осям заодно пропадает.
А что забавно: этот фикс Перлин запатентовал (US 6 867 776). И индустрия годами использовала обходной шум — OpenSimplex (Курт Спенсер, 2014), лишь бы не судиться. Патент истёк только в январе 2022-го — но OpenSimplex уже прижился.
Для рельефа классики хватает с головой. А в 3D, дыме и облаках — цена Перлина кусается.
#мат_геймдев #МатРазбор #procgen #алгоритmы
🔥3❤2👎1
Гладкая случайность: как функция от координат лепит горы, облака и огонь
https://dev-math.ru/articles/noise/
Прямо в браузере крутятся настоящие GLSL-шейдеры — объёмное облако, которое можно облететь камерой, и живой огонь. А ещё градиенты, октавы, domain warping и шесть интерактивов. Жду огоньков 🔥
Вообще шум довольно забавная тема. Он так тесно связан с компьютерной графикой, VFX и таким огромным спектром задач. Забавно что все "естественное" это по своей сути фрактальные структуры шума. Поэтому многие работали над разными применениями и вариациями этого. Хотя конечно в случае облаков и огня — это скорее "фокус", чем что-то реальное.
Пока я делал интерактивы я удивился, что чтобы их не фризило мне пришлось сделать для облаков пребейк 3д текстур и прочие волюметрические техники. Так как на моём макбуке оно прям лагало. Но ща работает гладко, так что приглашаю ознакомиться.
#мат_геймдев #МатРазбор #procgen #шейдеры
https://dev-math.ru/articles/noise/
Прямо в браузере крутятся настоящие GLSL-шейдеры — объёмное облако, которое можно облететь камерой, и живой огонь. А ещё градиенты, октавы, domain warping и шесть интерактивов. Жду огоньков 🔥
Вообще шум довольно забавная тема. Он так тесно связан с компьютерной графикой, VFX и таким огромным спектром задач. Забавно что все "естественное" это по своей сути фрактальные структуры шума. Поэтому многие работали над разными применениями и вариациями этого. Хотя конечно в случае облаков и огня — это скорее "фокус", чем что-то реальное.
Пока я делал интерактивы я удивился, что чтобы их не фризило мне пришлось сделать для облаков пребейк 3д текстур и прочие волюметрические техники. Так как на моём макбуке оно прям лагало. Но ща работает гладко, так что приглашаю ознакомиться.
#мат_геймдев #МатРазбор #procgen #шейдеры
🔥12
This media is not supported in your browser
VIEW IN TELEGRAM
Матчасть — проверьте, что осело после статей
Вы читали (ну или пролистывали) разборы про повороты и кватернионы, стрельбу, SDF, толпу, матчмейкинг, лутбоксы и шум. Собственно, давайте проверим, что из этого реально осело в голове, а что прошло мимо.
Сделал квиз — «Матчасть». 8 вопросов, по одному на каждую тему. Вопросы на понимание: зачем вообще нужны кватернионы, что такое hitscan, откуда у стаи скворцов синхрон, чем Glicko отличается от ELO. Где-то ошиблись — подсказка после ответа ведёт прямо в нужный раздел статьи. Так что это и проверка, и способ дочитать то, что пропустили.
Ведёт квиз Дельта, а Магистр Хардкод по ходу подсовывает «костыли» — варианты с магическими числами вместо настоящего ответа, не ведитесь. В конце выдаётся звание: от Магистра Хардкода до самого Дейва. Результатом, конечно же, можно похвастаться.
👉 https://dev-math.ru/dave-quiz/
Делитесь в комментариях, какое звание выбили.
Вы читали (ну или пролистывали) разборы про повороты и кватернионы, стрельбу, SDF, толпу, матчмейкинг, лутбоксы и шум. Собственно, давайте проверим, что из этого реально осело в голове, а что прошло мимо.
Сделал квиз — «Матчасть». 8 вопросов, по одному на каждую тему. Вопросы на понимание: зачем вообще нужны кватернионы, что такое hitscan, откуда у стаи скворцов синхрон, чем Glicko отличается от ELO. Где-то ошиблись — подсказка после ответа ведёт прямо в нужный раздел статьи. Так что это и проверка, и способ дочитать то, что пропустили.
Ведёт квиз Дельта, а Магистр Хардкод по ходу подсовывает «костыли» — варианты с магическими числами вместо настоящего ответа, не ведитесь. В конце выдаётся звание: от Магистра Хардкода до самого Дейва. Результатом, конечно же, можно похвастаться.
👉 https://dev-math.ru/dave-quiz/
Делитесь в комментариях, какое звание выбили.
🔥3❤1👍1
Новая неделя, новый формат
Чтож, попробуем что-то новое. Мне всегда хочется делать "лучше чем раньше". Раньше темы были довольно часто встречающиеся по которым материалы и так найти относительно легко. Сейчас я хочу взять тему, которая разобрана не так хорошо. Раньше посты выходили сами по себе — а теперь запускаем первый сезон: связную историю на две недели, с началом, серединой и развязкой.
Тема первой недели — цвет. И сразу вопрос на засыпку: вы уверены, что цвет в реальности — это RGB? Три числа на пиксель?
Собственно, нет. RGB — это не базовая реальность, а трюк, упрощение. Возьмите два цвета, идеально совпавших под лампой в комнате, и вынесите на улицу — они разъедутся. Один и тот же «цвет» под разным освещением становится разным. Это метамерия, и это только первая трещина.
Как это будет выходить. Каждый эпизод — три такта:
— трюк — как индустрия считает это дёшево и почему это умно;
— граница — точная сцена, где допущение ломается;
— за границей — физика, которую трюк отбросил.
А неделя устроена так:
🟦 Пн — комикс-затравка (наш Дейв тоже уверен, что цвет — это RGB; зря);
🟩 Вт–Пт — четыре коротких разбора, по одному на под-тему;
🟧 Сб — большая статья с интерактивом на Unity: хак и эталон рядом, крутите сами и смотрите, где именно фейк начинает врать;
🟥 Вс — комикс-выпуск с развязкой недели и карточкой «что запомнить».
И так две недели. Восемь эпизодов — от «что вообще такое цвет» до спектрального рендера, который считает свет честно. По сути, это история про то, что любой хак — это карта допущений; вопрос лишь в том, знаете ли вы её границы.
Старт — в понедельник, с первого комикса. Следите, будет интересно. А я постараюсь держать такой темп.
Чтож, попробуем что-то новое. Мне всегда хочется делать "лучше чем раньше". Раньше темы были довольно часто встречающиеся по которым материалы и так найти относительно легко. Сейчас я хочу взять тему, которая разобрана не так хорошо. Раньше посты выходили сами по себе — а теперь запускаем первый сезон: связную историю на две недели, с началом, серединой и развязкой.
Тема первой недели — цвет. И сразу вопрос на засыпку: вы уверены, что цвет в реальности — это RGB? Три числа на пиксель?
Собственно, нет. RGB — это не базовая реальность, а трюк, упрощение. Возьмите два цвета, идеально совпавших под лампой в комнате, и вынесите на улицу — они разъедутся. Один и тот же «цвет» под разным освещением становится разным. Это метамерия, и это только первая трещина.
Как это будет выходить. Каждый эпизод — три такта:
— трюк — как индустрия считает это дёшево и почему это умно;
— граница — точная сцена, где допущение ломается;
— за границей — физика, которую трюк отбросил.
А неделя устроена так:
🟦 Пн — комикс-затравка (наш Дейв тоже уверен, что цвет — это RGB; зря);
🟩 Вт–Пт — четыре коротких разбора, по одному на под-тему;
🟧 Сб — большая статья с интерактивом на Unity: хак и эталон рядом, крутите сами и смотрите, где именно фейк начинает врать;
🟥 Вс — комикс-выпуск с развязкой недели и карточкой «что запомнить».
И так две недели. Восемь эпизодов — от «что вообще такое цвет» до спектрального рендера, который считает свет честно. По сути, это история про то, что любой хак — это карта допущений; вопрос лишь в том, знаете ли вы её границы.
Старт — в понедельник, с первого комикса. Следите, будет интересно. А я постараюсь держать такой темп.
👍11🔥1