DimensioneX - это полностью бесплатный многопользовательский движок с открытым исходным кодом (GPL), предназначенный для новичков и для быстрой разработки.
Направленный на создание браузерных многопользовательских игр и сред в целом, он существует с 1999 года и использовался для игр MMORPG , исследовательских, образовательных и рекламных приложений.
Написанный на Java и поддерживающий ряд языков, включая восточные языки, такие как китайский и русский, DimensioneX присутствует на SourceForge.net с самого начала.
Ключевая особенность
- Игровой мир определяется с помощью специального языка, называемого форматом DXW (DimensioneX World). Синтаксис позволяет программисту определять комнаты, двери / ссылки, предметы, персонажей.
- Все оставшееся необходимое взаимодействие затем добавляется с помощью объектно-ориентированного языка сценариев, который очень похож на Visual Basic / VBScript.
- Движок не является графическим движком, клиент представляет собой комбинацию генерируемой сервером комбинации HTML и JavaScript . Графика сцены получается путем наложения статических изображений и значков, предоставленных программистом.
- Движок поддерживает звуки и музыку в игре, а также файлы flash и другие типы файлов.
Архитектура
Движок DimensioneX написан на языке Java и использует HTML + JavaScript для клиентской части.
Объект сервера на самом деле представляет собой отдельный сервлет Java , экземпляр которого создается при запуске, он считывает определение мира из своего описательного файла DXW и воссоздает его в памяти. С этого момента главный сервлет сохраняет состояние слова в памяти и принимает клиентские команды для обновления положения символов и элементов управляемого мира.
Предполагается, что клиенты взаимодействуют с основным ядром через стандартный протокол HTTP POST. Сообщения включают в себя ряд команд, таких как: вход, выход, просмотр (показывает текущую комнату, в которой находится игрок), движение (4 направления плюс вверх и вниз), выбор, опускание и ряд пользовательских команд с вверх до 2-х параметров.
Связь между клиентом и сервером является асинхронной, и несколько команд могут отправляться параллельно. Внутри ядра игры реализована критическая секция с использованием семафора для обеспечения согласованности ресурсов и игры (например, предмет не может быть поднят более чем одним человеком).
В мире DimensioneX все происходит в режиме реального времени, хотя из-за внутренней природы используемой веб-платформы, если никто не использует игровое время внутри, он говорит «заморожено», так что все происходит при первом контакте клиента с сервером.
Метод связи между ядром сервера (сервлет) и клиентом (обычно HTML с JavaScript) позволяет реализовать клиента в любой архитектуре, включая мобильные устройства.
Движок игры имеет открытый исходный код и открыт для участия любого пользователя. Он был использован и принят для нескольких исследований взаимодействия человека с компьютером (см .: Ссылки)
Игры
- Одной из самых популярных игр, написанных с помощью DimensioneX, является Fantasy MMORPG Game Sottomondo, английская версия которой известна как Underworld Online.
- Network Arena, научно-фантастическая MMORPG.
- Еще одна довольно популярная в Италии игра - Dragon Hunter.
Рекомендации
- Взаимодействие - Amvient, повсеместное и интеллектуальное взаимодействие , Джуле А. Джако, процессуальные действия, 2009 г.
- Виртуальная среда для изучения протоколов управления чрезвычайными ситуациями в аэропорту , Тельмо Зарраонандиа, Марио Рафаэль Руис Варгас, Палома Диас, Игнасио Аэдо, Springer, 2009 г.
- Многоканальная игровая платформа Жоао Рибейру, 2007 г.
- Список игровых движков в Википедии
- С 2003 года он успешно используется на университетском курсе DAMS Multimedia в Туринском университете, Италия, в качестве учебной платформы для разработки мультимедийных многопользовательских сред.
- В 2005 году он использовался в Тромсё, Норвегия, в проекте FINNET для экспериментов с ролевой игрой в обучении, в частности применительно к языку.
- С декабря 2005 года он использовался в Болонье и Ферраре, Италия, для обучения детей программированию: за несколько уроков они смогли разрабатывать MMORPG-игры с нуля.