TGViewer
Метод утёнка Метод утёнка @devs_books · 6.69K subscribers
Post #2116 1.21K

Forwarded from GameDev: разработка игр

Дверь, которая сломала Half‑Life 2

Бывший разработчик Valve Том Форсайт рассказал, как в 2013 году они делали VR‑порт Half‑Life 2 и внезапно наткнулись на баг прямо в самом начале игры. В сцене, где охранник должен провести Гордона через дверь, створка просто не открывалась, и игрок намертво застревал — ни вперёд, ни назад. Самое странное началось, когда они запустили обычную (не‑VR) версию на том же железе и увидели, что теперь та же сцена сломана и в «обычном» HL2, хотя в 2004 году все проходили её без проблем, а код вроде бы никто не трогал.​

Разобравшись, они выяснили, что баг родился на стыке двух классических источников боли в геймдеве: дверей и чисел с плавающей точкой. Оригинальный HL2 собирали под старый x87 FPU, где часть вычислений шла в 80‑битной точности, а более новые билды компилировались с использованием SSE, где всё жёстко обрезалось до 32 бит. В результате крошечное отличие в вычислениях физики привело к тому, что NPC сдвигался буквально на доли миллиметра, дверь чуть по‑другому поворачивалась — и персонаж больше не попадал в нужный триггер, который должен был открыть проход.​

Такой вот «баг из будущего». Двери и вычисления с плавающей точкой, коллеги. Гремучее сочетание, аккуратнее с этим.

@make_game
  • 🔥 8
More from @devs_books
  1. Sep 20, 2026Что происходит, когда приложение запрашивает данные у сервера Вы открываете сайт или обнов…
  2. Sep 14, 2026А вы уже забрали свой подарок ко Дню программиста? Мы в Tproger вместе с нашими друзьями с…
  3. Sep 4, 2026Первый ник в аське, любимый смайлик в скайпе, разговоры про биткоин, когда все делали вид,…
  4. Aug 26, 2026В мире, где деплои по пятницам, а отпуск — глубоко в бэклоге, живёт уставший разработчик.…
  5. Jun 26, 2026Каким может быть роадмап для QA в 2026 году? Пять лет назад тестирование начиналось с ручн…
  6. Apr 4, 2026Какие доки может распознавать ИИ Субботнее разглядывательное: у нас на сайте вышла статья…
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 →