Найти в Дзене
CODDY Ханты-Мансийск

Наш гость - Джон Кармак

Наш сегодняшний гость Джон Кармак. История величайшего человека, создавшего несколько революций в мире компьютерных игр и не только. Он придумывал технологии опережающие свое время, занимался разработкой космических кораблей, Oculus Rift (шлем виртуальной реальности), а сейчас полностью посвятил себя созданию сильного искусственного интеллекта. Интерес к играм и компьютерам у Джона был с детства. Показательна его попытка вынести из здания родной школы несколько компьютеров Apple II (попытка провалилась). С университетом тоже не задалось, и наш герой отбыл в свободное плавание вольного программиста. Перебивается случайными и постыдными, по его мнению, заработками (вроде написания программ по нумерологии) до начала работы в Softdisk. Здесь он находит единомышленников: Джон Ромеро, Том Холл, Адриан Кармак. Попав в среду таких же одержимых энтузиастов, Кармак придумал эффективную технологию для обработки графики в сайдскроллерах, чем резко увеличил возможности персональных компьютеров. Так

Наш сегодняшний гость Джон Кармак. История величайшего человека, создавшего несколько революций в мире компьютерных игр и не только.

Наш гость - Джон Кармак
Наш гость - Джон Кармак

Он придумывал технологии опережающие свое время, занимался разработкой космических кораблей, Oculus Rift (шлем виртуальной реальности), а сейчас полностью посвятил себя созданию сильного искусственного интеллекта.

Шлем виртуальной реальности Oculus Rift
Шлем виртуальной реальности Oculus Rift

Интерес к играм и компьютерам у Джона был с детства. Показательна его попытка вынести из здания родной школы несколько компьютеров Apple II (попытка провалилась). С университетом тоже не задалось, и наш герой отбыл в свободное плавание вольного программиста. Перебивается случайными и постыдными, по его мнению, заработками (вроде написания программ по нумерологии) до начала работы в Softdisk. Здесь он находит единомышленников: Джон Ромеро, Том Холл, Адриан Кармак.

Попав в среду таких же одержимых энтузиастов, Кармак придумал эффективную технологию для обработки графики в сайдскроллерах, чем резко увеличил возможности персональных компьютеров. Так они создали собственную версию Super Mario Bros (Nintendo проектом не заинтересовалась).

Создав собственную компанию id software. Товарищи создают первый шедевр – Commander Keen с разработанной впервые для DOS плавной графикой. После этого была найдена еще одна техническая хитрость: вместо того чтобы обрабатывать каждый объект на уровне, прогружалась область которую в определенный момент видел игрок. Не нужно быть гением программирования, чтобы понять, насколько это оптимизировало игру. Первой была Wolfenstein.

Заставка из игры DOOM
Заставка из игры DOOM

Новым уровнем высоты стала DOOM. В ней была реализована система многоуровневых карт (перепады высот), система псевдозатенения, моргающий свет и самое крутое – динамичнейший геймплей по сети.

Заставка из игры QUAKE
Заставка из игры QUAKE

Следующая игра Quake и последующая за ним Quake 2 дали начало киберспорту. Последней его работой в мире игр стала Rage.

Заставка из игры Rage
Заставка из игры Rage

В 2000 году Джон заинтересовался ракетостроением – хобби своей юности Кармак начал финансировать местные любительские коллективы, члены которых позже и сплотились в Armadillo Aerospace. Компания занималась разработкой недорогих ракет многоразового использования. В октябре 2008 года Armadillo Aerospace выиграла в ежегодном конкурсе NASA Lunar Lander Challenge. Увы, в 2013 году Armadillo Aerospace вошла в спящий режим, а уже в 2015 была продана.

В марте 2016 года Джон Кармак был представлен к специальной награде BAFTA Fellowship за вклад в игровую индустрию.

Так в чем же состоит технология Кармака, позволившая не только сократить время разработки игры, реализовав эффект «гладкой прокрутки», но и вообще реализовать многие проекты?

  1. Ray casting (метод бросания лучей) – один из методов рендеринга в компьютерной графике, при котором сцена строится на основе замера пересечения лучей с визуальной поверхностью.
  2. Binary space partitioning (двоичное разбиение пространства) – метод рекурсивного разбиения евклидова пространства в выпуклые множества и гиперплоскости.
  3. Speeding up the rendering, and rendering order (кэширование поверхности) – методика, позволяющая не выполнять обработку тех частей пространства, которые в данный момент не используются игрой.
  4. Depth fail (глубина провала, или Обратная Кармака) – технология, которая решает проблему теней, отбрасываемых объектами.
  5. MegaTexture (мегатекстура) – технология была создана для обработки больших размеров пространства в светлое время (в темноте многое скрывалось под предлогом, что игрок этого не видит).

Продолжение следует...