Джон Д. Кармак II [1] (родился 21 августа [a] 1970) [1] — американский программист и разработчик видеоигр . Он был одним из основателей компании id Software, выпускающей видеоигры , и был ведущим программистом ее игр 1990-х годов Commander Keen , Wolfenstein 3D , Doom , Quake и их сиквелов. Кармак внес инновации в трехмерную компьютерную графику , такие как его алгоритм Carmack's Reverse для теневых объемов .
В 2013 году он ушел из id Software, чтобы работать полный рабочий день в Oculus VR в качестве технического директора . В 2019 году он сократил свою роль до технического директора-консультанта, чтобы иметь возможность уделять больше времени общему искусственному интеллекту (AGI). [3] В 2022 году он покинул Oculus, чтобы работать над своим стартапом AGI, Keen Technologies. [6]
Кармак родился в Шоуни-Мишн, Канзас , [1] в семье местного репортера новостей Стэна Кармака. Он вырос в столичном районе Канзас-Сити , где в раннем возрасте заинтересовался компьютерами . Он учился в средней школе Шоуни-Мишн-Ист в Прери-Виллидж, Канзас , и в средней школе Рэйтаун-Саут в соседнем Рэйтауне, штат Миссури . [7]
Кармак познакомился с видеоиграми в 1978 году, когда играл в аркадные игры в жанре shoot 'em up под названием Space Invaders , во время летних каникул, когда он был ребенком. Аркадная игра- лабиринт Pac-Man 1980 года также произвела на него сильное впечатление. Он назвал дизайнера Nintendo Сигеру Миямото разработчиком игр, которым он больше всего восхищался. [8]
Как сообщается в книге Дэвида Кушнера «Мастера судьбы» , когда Кармаку было 14 лет, он вместе с другими детьми ворвался в школу, чтобы украсть компьютеры Apple II . Чтобы попасть в здание, Кармак приготовил липкую субстанцию из термита, смешанного с вазелином , которая расплавилась через окна. Однако его сообщник с избыточным весом не смог пролезть через отверстие и вместо этого открыл окно, включив беззвучную сигнализацию и сообщив об этом полиции. Кармака арестовали и отправили на психиатрическую экспертизу. Его приговорили к году в доме для несовершеннолетних. [9] [10] Он учился в Университете Миссури-Канзас-Сити в течение двух семестров, прежде чем уйти, чтобы работать внештатным программистом. [11]
Softdisk , компьютерная компания из Шривпорта, штат Луизиана , наняла Кармака для работы над Softdisk GS ( издание Apple II GS ), познакомив его с Джоном Ромеро и другими будущими ключевыми членами id Software, такими как Адриан Кармак (никакого отношения). Позже Softdisk поручила этой команде новый, но недолговечный продукт с подпиской на игру, выходящий раз в два месяца, под названием Gamer's Edge для платформы IBM PC (DOS). В 1990 году, еще работая в Softdisk, Кармак, Ромеро и другие создали первую из игр Commander Keen , серии, которая издавалась Apogee Software по модели распространения shareware с 1991 года. [12] После этого Кармак покинул Softdisk, чтобы стать соучредителем id Software . [13]
Кармак был пионером или популяризатором использования многих методов в компьютерной графике, включая « адаптивное обновление плитки » для Commander Keen , [14] ray casting для Hovertank 3D , Catacomb 3-D и Wolfenstein 3D , двоичное разбиение пространства , которое Doom стал первой игрой, использовавшей, [15] кэширование поверхности , которое он изобрел для Quake , Reverse Кармака (официально известный как z-fail stencil shadows), который он разработал для Doom 3 , и технологию MegaTexture , впервые использованную в Enemy Territory: Quake Wars . [16] Quake 3 популяризировал быстрый алгоритм обратного квадратного корня . [17]
Движки Кармака также были лицензированы для использования в других влиятельных шутерах от первого лица, таких как Half-Life , Call of Duty и Medal of Honor . В 2007 году, когда Кармак был в отпуске со своей женой, он в итоге поиграл в несколько игр на своем мобильном телефоне и решил, что собирается сделать «хорошую» мобильную игру. [18] [19]
7 августа 2013 года Кармак присоединился к Oculus VR в качестве технического директора . [20] 22 ноября 2013 года он ушёл из id Software , чтобы работать полный рабочий день в Oculus VR. [2] [21] Причиной ухода Кармака стало то, что материнская компания id ZeniMax Media не хотела поддерживать Oculus Rift. [22] Роль Кармака в обеих компаниях позже стала центральной в иске ZeniMax против материнской компании Oculus, Facebook , в котором утверждалось, что Oculus украла интеллектуальную собственность виртуальной реальности ZeniMax . [23] [24] [25] Суд присяжных освободил Кармака от ответственности, хотя Oculus и другие корпоративные должностные лица были привлечены к ответственности за нарушение товарных знаков, авторских прав и контрактов. [26]
В феврале 2017 года Кармак подал в суд на ZeniMax, утверждая, что компания отказалась выплатить ему оставшиеся 22,5 миллиона долларов (~27,5 миллионов долларов в 2023 году), причитающиеся ему за покупку id Software. [27] В октябре 2018 года Кармак заявил, что он и ZeniMax достигли соглашения и что «Zenimax полностью выполнила свои обязательства передо мной», положив конец иску. [28]
13 ноября 2019 года Кармак ушел с должности технического директора Oculus, чтобы стать «техническим директором-консультантом», чтобы уделять больше времени своей работе над общим искусственным интеллектом (AGI). [3] 19 августа 2022 года Кармак объявил, что привлек 20 миллионов долларов для Keen Technologies, своей новой компании AGI. [29] 16 декабря 2022 года Кармак покинул Oculus, чтобы сосредоточиться на Keen. [6]
«Больше работая, больше успеваешь».
— Джон Кармак [30]
Кармак поддерживал шестидесятичасовую рабочую неделю, работая по 10 часов в день, шесть дней в неделю, на протяжении всей своей карьеры. [30] Он публично говорил о важности долгих часов непрерывной концентрации в своей работе. Высокая интенсивность не только позволяет ему быстрее добиваться прогресса, но и долгие часы также имеют решающее значение для поддержания сосредоточенного мышления с течением времени. Несмотря на такой напряженный график работы, он никогда не испытывал выгорания. [30]
Кармак также известен тем, что принимает участие в недельных ретритах по программированию. Эти ретриты включают в себя уединенный, непрерывный период вдали от его обычной рутины, часто изолированный в случайном городе и отеле. [31] Цель этих ретритов — позволить Кармаку работать на полную когнитивную мощность, решая конкретную, сложную проблему или изучая новый навык. [32] Уединение и физическая изоляция этих ретритов предлагают идеальную среду для глубокой концентрации и размышлений, что делает их неотъемлемой частью творческого процесса Кармака.
Кармак открыто выражал свое разочарование бюрократической неэффективностью, с которой он столкнулся во время работы в Meta. [33] В своей служебной записке об уходе он заявил: «У нас нелепое количество людей и ресурсов, но мы постоянно саботируем себя и растрачиваем усилия», — написал он. «Я никогда не мог убивать глупости до того, как они нанесут ущерб, или задать направление и заставить команду его придерживаться». [34]
Кармак придерживается философии, что небольшие, постепенные шаги являются самым быстрым путем к значимым и прорывным инновациям . [30] Он сравнивает этот подход с «магией градиентного спуска », где небольшие шаги с использованием локальной информации приводят к наилучшим результатам. По словам Кармака, этот принцип доказан его собственным опытом, и он наблюдал это у многих умнейших людей в мире. Он утверждает: «Маленькие крошечные шаги с использованием локальной информации в конечном итоге приводят ко всем лучшим ответам». [30]
Около 2000 года Кармак заинтересовался ракетостроением, хобби своей юности. Проанализировав, сколько денег он тратил на кастомизацию Ferrari, [ нужна цитата ] он начал с оказания финансовой поддержки нескольким местным инженерам-любителям. Кармак финансировал компанию Armadillo Aerospace из собственного кармана, за «что-то около миллиона долларов в год». [35] Компания любителей уверенно продвигалась к своим целям суборбитального космического полета и в конечном итоге орбитальных аппаратов. В октябре 2008 года Armadillo Aerospace участвовала в конкурсе NASA, известном как Lunar Lander Challenge , заняв первое место в конкурсе уровня 1 и получив 350 000 долларов (~ 486 412 долларов в 2023 году). [36] В сентябре 2009 года они завершили уровень 2 и получили 500 000 долларов (~ 690 323 долларов в 2023 году). [37] [38] [39] В 2013 году компания перешла в «режим гибернации». [35]
По словам Кармака, работа в аэрокосмической отрасли «проста» по сравнению с работой, которую он выполняет в видеоиграх. [40]
Кармак является сторонником программного обеспечения с открытым исходным кодом и неоднократно высказывался против патентов на программное обеспечение , приравнивая их к грабежу. [41] Он также внес вклад в проекты с открытым исходным кодом, такие как запуск первоначального порта X Window System на Mac OS X Server и работа над улучшением драйверов OpenGL для Linux через проект Utah GLX . [42]
Кармак выпустил исходный код Wolfenstein 3D в 1995 году и исходный код Doom в 1997 году, сначала по пользовательской лицензии, а затем по GNU General Public License (GPL) в 1999 году. Когда исходный код Quake просочился и распространился среди подпольного сообщества Quake в 1997 году после взлома лицензиата Crack dot Com , [43] программист, не связанный с id Software, по имени Грег Александр использовал его для портирования Quake на Linux с помощью SVGALib . Поскольку это было более функционально, чем более ранний порт X11 Дейва Тейлора , он отправил патчи Кармаку. [44] Вместо того, чтобы подавать в суд, id Software использовала патчи в качестве основы для санкционированного компанией порта Linux, поддерживаемого новым сотрудником Зойдом Киршем, который позже также портировал Quakeworld и Quake II на Linux. [45]
С тех пор id Software публично опубликовала исходный код Quake в 1999 году, Quake 2 в 2001 году, Quake 3 в 2005 году и, наконец, Doom 3 в 2011 году (и позже BFG Edition в 2012 году). Исходный код Hovertank 3D и Catacomb 3D (а также более ранней Catacomb Кармака ) был выпущен в июне 2014 года Flat Rock Software с благословения Кармака. [46] [47] С тех пор он выразил сожаление по поводу использования копилефт GPL вместо более либеральной лицензии BSD . [48]
Выпуск id Tech 4 состоялся, несмотря на патентные опасения Creative Labs по поводу обратного решения Кармака , [49] в то время как исходный релиз Doom был выпущен без музыки из-за сложностей с библиотекой DMX, разработанной Cygnus Studios (что привело к выбору версии для Linux для выпуска). [50] С тех пор Кармак посоветовал разработчикам быть осторожными при использовании промежуточного программного обеспечения, отметив, как это может ограничить возможности последующего выпуска исходного кода. [51] Тим Суини намекнул, что эта проблема помешала потенциальным выпускам старого исходного кода Unreal Engine . [52]
С другой стороны, несмотря на его техническое восхищение системой, [53] Кармак несколько раз на протяжении многих лет высказывал скептическое мнение о Linux как игровой платформе . [54] [55] В 2013 году он выступал за эмуляцию как за «правильное техническое направление для игр на Linux», [56] а в 2014 году он высказал мнение, что Linux может стать самой большой проблемой для успеха Steam Machine . [57]
Кармак вносит вклад в благотворительность и игровые сообщества. Среди получателей благотворительных взносов Кармака — его бывшая школа, сторонники открытого программного обеспечения, противники патентов на программное обеспечение и энтузиасты игр. [58]
Кармак был настолько успешен в id, что к середине 1994 года он купил два Ferrari : Ferrari 328 и Ferrari Testarossa . [59] В 1997 году он отдал Ferrari 328 в качестве приза Деннису Фонгу , победителю турнира по Quake « Red Annihilation ». [60]
Он встретил свою теперь уже бывшую жену Кэтрин Анну Канг на QuakeCon 1997 года , когда она посетила офисы id. В качестве пари Канг бросила вызов Кармаку, чтобы он спонсировал первый женский турнир по Quake , если она сможет собрать значительное количество участников. Кармак предсказал максимум 25 участников, но их было 1500. [61] Кармак и Канг поженились 1 января 2000 года и запланировали церемонию на Гавайях. Стив Джобс попросил отложить церемонию, чтобы Кармак смог посетить MacWorld Expo 5 января 2000 года. Кармак отказался и предложил вместо этого снять видео. [62] У Кармака и Канг родился сын Кристофер Райан в августе 2004 года . [63] Их второй сын родился в ноябре 2009 года.
Кармак разведён с 2022 года. 26 мая 2022 года он объявил о разводе и о том, как познакомился со своей партнёршей Тристой через игры VR Beat Saber, которые он будет вести в Twitter. [64]
Как разработчик игр, Кармак отличался от многих своих современников тем, что избегал обязательств по окончательной дате выпуска любой игры, которую он разрабатывал. Вместо этого, когда его спрашивали о дате выпуска новой игры, Кармак обычно отвечал, что игра выйдет «когда будет готова». [65] Сотрудники Apogee , в прошлые годы издатели игр id Software, также переняли эту деловую практику. [66] В 2019 году, будучи гостем на The Joe Rogan Experience , Кармак заявил, что его убеждения со временем изменились: «Сейчас я в значительной степени отрекаюсь от этого». О 6- летнем сроке разработки Rage он говорит: «Я думаю, мы должны были сделать все возможное, чтобы выпустить ее на 2 года раньше». Кармак также размышлял о внутренней разработке Quake в этом отношении и назвал ее «травматичной» и сказал, что id Software могла бы разделить игру на две части и выпустить ее раньше. [67]
У Кармака есть блог , последний раз обновленный в 2006 году (ранее .plan , доступ к которому можно было получить, сделав запрос пальцем [email protected]
[68] ), активный аккаунт в Twitter , а также он иногда публикует комментарии на Slashdot . [9]
Кармак поддерживал президентскую кампанию 2012 года либертарианца Рона Пола [ 69 ] и является атеистом [ 70] [71] Во время разговора с Джо Роганом Кармак рассказал, что в течение нескольких лет занимался бразильским джиу-джитсу и дзюдо в качестве хобби [72] .
Во время его работы в id Software Кармаку почти каждый день привозили среднюю пиццу пепперони из Domino's Pizza , которую доставлял один и тот же курьер на протяжении более 15 лет. Кармак был настолько постоянным клиентом, что они продолжали взимать с него цены 1995 года. [73]
Иногда он хвалил усилия программистов, занимающихся схожими задачами, — сначала Кена Сильвермана , который написал движок Build для 3D Realms , а затем Тима Суини из Epic Games , который написал движок Unreal Engine . [9]
{{cite web}}
: CS1 maint: несколько имен: список авторов ( ссылка )Университет Миссури–Канзас-Сити Джон Кармак.
Недавние обсуждения вокруг copilot — хорошая возможность сказать следующее: я бы хотел лицензировать релизы исходного кода Id как BSD. Виральность GPL оказалась в итоге отрицательной, и от BSD было бы больше пользы. Хотя мои партнеры никогда бы на это не пошли... Я недавно затронул эту тему в комментарии о культуре открытого исходного кода и разработке игр; лучшие аспекты работы GPL не проявились, но из-за проблем с лицензией было потеряно множество возможностей просто скопировать-вставить-изменить. Возможно, некоторые из исходных портов не были бы такими открытыми, но я почти уверен, что было бы больше общих пользователей кода, что, вероятно, сделало бы объем общего доступа в открытом доступе еще больше. Я по-прежнему поддерживаю большую часть работы GPL, но не думаю, что ограничения помогли в этом конкретном случае.
Я считаю Linux второй по важности платформой после Win32 для id. С точки зрения бизнеса было бы нелепо ставить его даже на один уровень с Mac или OS/2, но для наших типов игр, которые предназначены для взлома, у Linux есть большой плюс: самое высокое соотношение хакеров к пользователям среди всех ОС. Я лично не разрабатываю на Linux, потому что делаю свои Unix-штуки с помощью NEXTSTEP, но я испытываю к нему большое техническое уважение.
вновь подтвердил свою поддержку улучшения эмуляции как «надлежащего технического направления для игр на Linux», отметив, что нативные порты не делают многого, с чем не смог бы справиться хороший эмулятор.
особо отметил, что Linux может стать причиной падения Steam Machine
{{cite podcast}}
: CS1 maint: бот: исходный статус URL неизвестен ( ссылка )