|  |
| Автор |
Сообщение |
Maximus ®
Вольный стрелок Uploader 100+
Стаж: 19 лет 1 мес.
Сообщений: 6101
Ratio: 25.214
Поблагодарили: 13366
100%
|
Ошибки случаются у всех — и порой именно они становятся отправной точкой для неожиданных открытий. В начале 1990-х, создавая Doom, программист Джон Кармак решил вручную ввести значение π, полагаясь на память. Он записал девять знаков после запятой — 3.141592657. Позднее выяснилось, что последняя цифра ошибочна: корректный вариант — 3.141592654. Если число просто усечь, девятый разряд равен 3, но при округлении по правилам он превращается в 4.
На геймплей эта неточность не повлияла. Doom остался стремительным шутером от первого лица, где морпех отбивается от демонов на марсианской базе. Невысокая детализация объяснялась не ошибкой в константе, а ограничениями тех лет. Однако спустя десятилетия случайная мелочь привлекла внимание американского инженера Луки Гоццлинга. В 2022 году он представил на хакерской конференции доклад о любопытном эксперименте — что будет, если изменить значение π в исходном коде игры.
Так как проект давно открыт для моддеров, реализовать замысел оказалось несложно. Гоццлинг скачал исходники, подменил константу и стал наблюдать за результатом. При π = 3 мир превратился в дрожащий лабиринт — поверхности искривлялись, колонны тянулись, геометрия теряла устойчивость. Тем не менее уровни оставались проходимыми. Затем инженер заменил π на число Эйлера e = 2.718… и увидел ещё более хаотичную картину: при движении вперёд предметы плыли в разные стороны, а монстры вспыхивали и пропадали без причины. Он пошутил, что подобное ощущение возникает после пары коктейлей.
Наиболее удивительный результат дало значение π⁄2. Пространство распадалось на мигающие фрагменты: освещение скакало, границы комнат таяли, игрок натыкался на невидимые преграды и застревал в пустоте. Виртуальная среда вела себя так, словно исчезли все законы геометрии. Играть в этом хаосе было невозможно.
Чтобы понять, почему одно число так сильно влияет на реальность, нужно вспомнить, что означает π. В школьной геометрии оно определяется как отношение длины окружности к диаметру. Это справедливо только в плоском евклидовом пространстве, где расстояния измеряются по прямым. Стоит изменить геометрию — и постоянная уже зависит от формы мира.
Математики описывают такие варианты через метрики. Представьте Манхэттен с его сеткой улиц. Если отметить точки, расположенные в километре от центра, они образуют не круг, а квадрат. Двигаться можно только по перекрёсткам, поэтому в «манхэттенской метрике» соотношение периметра к диаметру равно четырём.
Даже в нашей реальности эта константа не строго фиксирована. Планета имеет кривизну, из-за чего окружности одинакового радиуса имеют разную длину на разных широтах. Ближе к полюсам они короче, а возле экватора длиннее, поэтому расчётное отношение меньше стандартных 3.14159. На сфере оно зависит от радиуса и профиля поверхности. Подобный эффект возникает и в других криволинейных системах, которые математика называет неевклидовыми: там прямые искривлены, а привычные соотношения меняются.
Однако в случае Doom всё объясняется не физикой, а принципами кода. В 1990-е годы компьютеры обладали ограниченной мощностью, поэтому разработчики старались экономить ресурсы. Тригонометрические функции — синус, косинус, тангенс — вычислялись заранее и записывались в таблицы готовых значений. Такие списки использовались при построении трёхмерных моделей и помогали ускорить расчёты. Чтобы перевести угол из градусов в радианы, его умножают на π и делят на 180. Если ввести неверную константу, все повороты и перемещения теряют точность, и вся геометрическая сетка сцены искажается.
Когда π меньше реального значения, полный оборот в 360° оказывается укороченным: объекты появляются раньше или исчезают до завершения круга. При завышенной величине окружение «сворачивается» само в себя, предметы дрожат и мерцают.
Фактически Гоццлинг превратил легендарный шутер в демонстрацию неевклидовой геометрии и ошибок округления. Его опыт показал, насколько глубоко фундаментальные числа проникают в виртуальные миры. Стоит нарушить связь между углом и длиной окружности — и рушится вся визуальная логика. Для игрока это психоделическое зрелище, а для математика — чистая иллюстрация того, как формулы определяют восприятие реальности.
Интересно, что причиной использования таблиц поиска стала необходимость ускорить обработку. Тогдашние процессоры выполняли лишь несколько миллионов операций в секунду, и каждое дополнительное действие снижало частоту кадров. Чтобы не тратить время, разработчики вводили постоянные вручную. Одна неточность в подобном значении могла нарушить всю систему координат. Источник |
_________________ Ложь открывает тому, кто умеет слушать, не меньше, чем правда. А иногда даже больше
|
|
 |
fbslim
Стаж: 13 лет 9 мес.
Сообщений: 222
Ratio: 296.795
Поблагодарили: 4963
100%
|
Я лично ещё Doom 3 не прошёл. Сейвы так и лежат... с 2004  |
|
|
 |
Minor748
Стаж: 9 лет 9 мес.
Сообщений: 225
Ratio: 858.656
Раздал: 184.4 TB
98.86%
Откуда: Из роддома по талонам
|
HESOYAM и AEZAKMI и рядом не стояли AFSNMSMW, BSXSGGC, RIPAZHA  |
|
|
 |
Darklight
Стаж: 18 лет 10 мес.
Сообщений: 1099
Ratio: 30.645
Поблагодарили: 603
79.7%
|
В сабже картинка с нейросетей. А реальных скриншотов тем более видеороликов, так и не привели. Да и, судя по всему - исправление ошибки Кармака, в 10-ом знаке, всё-таки, принципиально ничего не меняет |
|
|
 |
alex12nnm
Стаж: 13 лет 3 мес.
Сообщений: 2030
Ratio: 0.365
100%
|
И в магазине можно так же стенку приподнять? |
|
|
 |
Lativ
Стаж: 14 лет 4 мес.
Сообщений: 246
Ratio: 0.648
15.25%
|
Это не ошибка! Пи мера согласованности. Пи — это «чертеж» жизни. Это тот врожденный принцип самоорганизации, который не дает негэнтропии оставаться аморфным полем, а заставляет ее сворачиваться в спирали галактик, орбиты планет и двойную спираль ДНК. Пи — это не просто константа это то, что связывает все уровни системы — от черной дыры до биологической клетки — в единую, резонирующую цепочку.
Энтропия стремится к равномерному распределению, к шуму. Π-принцип заставляет энергию и информацию сворачиваться в спирали, в резонирующие контуры, в замкнутые орбиты — от атома до галактики.
Это — алгоритм сборки сложного из простого, который записан в самой ткани реальности. А разум — это точка, где этот алгоритм обретает самосознание и начинает применять себя не только инстинктивно, но и целенаправленно.
P.S Я хочу поиграть в эту игру! Для Гениев это как глоток воздуха. |
|
|
 |
IcedEarth
Стаж: 15 лет 10 мес.
Сообщений: 684
Ratio: 1.587
Раздал: 2.834 TB
15.21%
|
Lativ писал(а):  | P.S Я хочу поиграть в эту игру! Для Гениев это как глоток воздуха. |
Для гениев может и глоток, а ты не забывай почаще менять кислородные баллоны когда играть будешь  |
|
|
 |
ahahah
Стаж: 2 года 1 мес.
Сообщений: 16
Ratio: 0.622
0.35%
|
Lativ писал(а):  | Это не ошибка! Пи мера согласованности. Пи — это «чертеж» жизни. Это тот врожденный принцип самоорганизации, который не дает негэнтропии оставаться аморфным полем, а заставляет ее сворачиваться в спирали галактик, орбиты планет и двойную спираль ДНК. Пи — это не просто константа это то, что связывает все уровни системы — от черной дыры до биологической клетки — в единую, резонирующую цепочку.
Энтропия стремится к равномерному распределению, к шуму. Π-принцип заставляет энергию и информацию сворачиваться в спирали, в резонирующие контуры, в замкнутые орбиты — от атома до галактики.
Это — алгоритм сборки сложного из простого, который записан в самой ткани реальности. А разум — это точка, где этот алгоритм обретает самосознание и начинает применять себя не только инстинктивно, но и целенаправленно.
P.S Я хочу поиграть в эту игру! Для Гениев это как глоток воздуха. |
Опять анимешник корчит из ся надмозг  |
|
|
 |
IMHOTAK
Стаж: 9 лет 4 мес.
Сообщений: 1203
Ratio: 53.069
100%
|
| Цитата: | Однако в случае Doom всё объясняется не физикой, а принципами кода. В 1990-е годы компьютеры обладали ограниченной мощностью, поэтому разработчики старались экономить ресурсы. Тригонометрические функции — синус, косинус, тангенс — вычислялись заранее и записывались в таблицы готовых значений. Такие списки использовались при построении трёхмерных моделей и помогали ускорить расчёты. |
А сейчас что мешает так делать для повышения производительности?  |
|
|
 |
Aviv_ua
Классик клуба
Стаж: 16 лет 3 мес.
Сообщений: 724
Ratio: 66.053
Раздал: 71.72 TB
Поблагодарили: 8983
100%
|
IMHOTAK писал(а):  | А сейчас что мешает так делать для повышения производительности?  |
Лень |
|
|
 |
dimitriy7
Стаж: 18 лет 1 мес.
Сообщений: 5665
Ratio: 69.743
Раздал: 1.108 TB
Поблагодарили: 371
15.15%
Откуда: Лучший город Земли
|
IMHOTAK писал(а):  | А сейчас что мешает так делать для повышения производительности? |
Да ничто не мешает, просто смысла нет. Сейчас любой проц аппаратно одной командой считает синусы-косинусы с точностью 15 цифр. А тогда — х86 даже просто умножать-делить дробные числа научился только с 486 (как раз во времена первого дума), а до этого 386 умел вообще только целочисленную арифметику (вот прям буквально — 4 простейших действия и только над целыми числами, и всё), а для чего-то большего надо было ставить в пару к нему сопроцессор 387, который стоил столько, что его мало кто ставил. |
|
|
 |
|
|
|