Jake2

Pause

Jake2 — порт игрового движка Quake II на язык программирования Java, выпущенный под свободной лицензией GPL[1]. Проект изначально разрабатывался компанией Bytonic Software. Движок поддерживает как одиночный, так и многопользовательский режимы оригинальной игры. Jake2 может работать как самостоятельное приложение или запускаться через Java Web Start.

Общие сведения
Jake2
Дополнительные сведения
Сайт bytonic.de/html/jake2.ht…

История

Версия Jake2 0.9.1 была представлена командой разработчиков JOGL на конференции JavaOne в 2004 году как пример взаимодействия Java и OpenGL[2][3]. В дальнейшем компания Sun Microsystems использовала движок для демонстрации возможностей технологии Java Web Start при распространении игр через интернет[4].

В августе 2012 года активная разработка велась в ответвлении под названием LWJake2, где библиотеки JOGL и JOAL были заменены на LWJGL.

В октябре 2012 года в Git-репозитории появилась версия, использующая актуальные на тот момент выпуски Java OpenGL и Java OpenAL. Эта модификация позволяла играть прямо в браузере (через апплет или Web Start). Благодаря эмуляции фиксированного конвейера OpenGL через OpenGL ES 2.0 (или напрямую через OpenGL ES 1.0) движок получил поддержку мобильных платформ. Улучшения в интеграции с JOAL также обеспечили вывод звука на мобильных устройствах. В июне 2013 года этот форк был обновлён для совместимости с последней версией JOGL.

Оригинальные разработчики из Bytonic Software выпустили последнее обновление для Jake2 в январе 2015 года.

С 2019 года развитие проекта продолжается в новом форке[5], который адаптирован для современных версий Java и актуальных библиотек.

Альтернативное использование

Благодаря доступности исходного кода на Java движок Jake2 легко поддаётся модификации и неоднократно применялся в исследовательских проектах:

  • В 2006 году проект использовался в экспериментах по управлению трёхмерными играми с помощью системы отслеживания взгляда (айтрекинга)[6][7]. При этом результаты опросов показали, что традиционное управление мышью остаётся более удобным.
  • В начале 2009 года исследователи из Университета Бейра-Интериор адаптировали Jake2 для работы в среде GridGain — грид-системе, реализующей модель MapReduce. Эта версия распространялась на условиях двойного лицензирования (под GPLv3 и проприетарными лицензиями).
  • В 2010 году группа инженеров Google портировала движок на HTML5 для демонстрации возможностей фреймворка Google Web Toolkit[8].

Архитектура

Jake2 полностью написан на Java. В качестве низкоуровневой графической библиотеки движок может использовать Java OpenGL совместно с Java OpenAL либо LWJGL. Проект поддерживает как одиночный, так и многопользовательский режимы Quake II. Игру можно запускать как обычное локальное приложение или через Java Web Start.

Производительность Jake2 сопоставима с оригинальной версией движка на языке C[9], а на некоторых аппаратных конфигурациях даже превосходит её[10].

Примечания

  1. ↑ Jake2. Jake2 development Team. Дата обращения: 12 апреля 2026.
  2. ↑ Russel, Kenneth 3D Application and Game Development With OpenGL (июнь 2004). Дата обращения: 5 апреля 2008. Архивировано из оригинала 1 июля 2007 года.
  3. ↑ 3D Jake2 – Playtest. hexus.net (29 ноября 2005). Дата обращения: 12 апреля 2026.
  4. ↑ JDK 6u10: Jake2: Quake II in Java. Sun Microsystems. — «The Jake2 applet example shows the future of game distribution over the Internet. Jake2 is a port of id Software's Quake II to the Java platform developed by Bytonic Software. (...). With the new Java Plug-In, it is now possible to deploy the game directly into the web page with full hardware acceleration and rock-solid reliability.». Дата обращения: 12 апреля 2026.
  5. ↑ Jake2 on GitHub. GitHub (7 декабря 2022). Дата обращения: 12 апреля 2026.
  6. ↑ Play with your eyes. Joystiq (3 марта 2006). Дата обращения: 12 апреля 2026.
  7. ↑ J. David Smith. Proceedings of the 2006 ACM SIGCHI international conference on Advances in computer entertainment technology. — Association for Computing Machinery, 2006. — P. 20–es. — ISBN 9781595933805. — doi:10.1145/1178823.1178847.
  8. ↑ Google Code. Quake II GWT Port (1 апреля 2010). Дата обращения: 12 апреля 2026.
  9. ↑ Q24j: Jake and Java-gaming Viability. O'Reilly Media (28 ноября 2005). — «This is a great show of 3D prowess. Things like this, as well as the Narya 2D open source engine from ThreeRings really are starting to at least show Java can serve as a first-class gaming platform. More than that, just having seen all the… *cough* horrible code in games before, having things like Java’s threading model, network and database support might really make it a BETTER platform for a lot of forthcoming games than C.». Дата обращения: 12 апреля 2026.
  10. ↑ Benchmarks. Jake2 development Team. Дата обращения: 12 апреля 2026.

Ссылки

Pause