TGViewer
GameDev: разработка игр GameDev: разработка игр @make_game · 7.64K subscribers
Post #1732 2.13K
Пост с разбором, зачем id Software выпустили отдельный winquake.exe, когда уже был quake.exe, работавший и в DOS, и в Windows 95.​

Проблема: quake.exe под Windows 95 работал на 25% медленнее, чем из-под DOS (38 vs 48 fps). Виртуализация DOS-приложений съедала производительность. Плюс доступ к TCP/IP стеку был через костыли, а на Windows NT вообще не запускалось — DPMI-клиент от DJGPP не дружил с NT Virtual DOS Machine.​

WinQuake решил это через нативный win32-бинарник с кучей бекендов на выбор:
🔘Видео: GDI/DIB (безопасно, но медленно), DirectDraw (быстрее), VGA/VESA через WinDirect (прямой доступ к железу в обход GDI)
🔘Звук: DirectSound (низкая задержка, -10% fps) или WinMM (выше задержка, но fps лучше)
🔘Ввод: стандартный WinAPI или DirectInput для плавности​

Секретный соус — библиотека MGL от SciTech за $499. Она умела отключать GDI и писать напрямую в видеопамять через технологию WinDirect. Те самые WDIR32.DLL в папке с игрой — это оно.​

Результат: 45 fps под Windows 95 вместо 38, разрыв с DOS сократился до 6%. И да, winquake.exe до сих пор запускается на Windows 11 — Microsoft и их обратная совместимость.​

@make_game
  • ❤‍🔥 9
  • ❤ 1
More from @make_game
  1. Sep 23, 2026Как сваривать вершины меша за линейное время В процедурной генерации части геометрии удобн…
  2. Sep 23, 2026Как строить фрактальные берега с многоуровневой диаграммой Вороного В диаграмме Вороного с…
  3. Sep 23, 2026Как подготовить генератор гекс-карт Unity к задачам Burst Одинаковые настройки и начальное…
  4. Sep 22, 2026Как пул объектов защищает эффекты от фрагментации памяти Один взмах посоха порождает сотни…
  5. Sep 22, 2026Как сервер засчитывает точный выстрел при сетевой задержке В быстрой сетевой игре ваш клие…
  6. Sep 22, 2026Как Binding of Isaac генерирует подземелья Сначала генератор строит план на сетке 9×8, зат…
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 →