Вводная часть этой статьи содержит информацию, которая не включена в другие разделы статьи . ( Март 2023 ) |
Оригинальный автор(ы) | флориан соперник(4ian) |
---|---|
Разработчик(и) | Флориан Ривиал (4ian), Виктор Левассер, Орельен Виве (Бу), Артур Пако (arthuro555), Франко Масиэль (Ящерица-13), Тодор Имреоров (блумиразум) [1] |
Первоначальный выпуск | 11 августа 2008 г. ( 2008-08-11 ) |
Стабильный релиз | 5.5.221 [2] / 2 января 2025 г. ( 2 января 2025 г. ) |
Предварительный релиз | 5.0.0 beta112 / 15 июля 2021 г. ( 2021-07-15 ) [3] |
Репозиторий | https://github.com/4ian/GDevelop |
Написано в | С++ , JavaScript |
Операционная система | Windows , Linux , macOS , Веб-браузер |
Платформа | Linux , macOS , Windows , iOS , Android , HTML5 , Универсальная платформа Windows |
Доступно в | Английский , Переводы предоставлены сообществом |
Тип | Система создания игр Игровой движок Интегрированная среда разработки игр |
Лицензия | Лицензия Массачусетского технологического института |
Веб-сайт | gdevelop.io |
GDevelop — это 2D и 3D кроссплатформенный , бесплатный и открытый исходный игровой движок , который в основном фокусируется на создании игр для ПК и мобильных устройств , а также игр HTML5, в которые можно играть в браузере. [4] [5] [6] Созданный Флорианом Ривалем, инженером-программистом в Google , [7] GDevelop в основном нацелен на непрограммистов и разработчиков игр всех уровней квалификации, использующих визуальное программирование на основе событий, похожее на такие движки, как Construct , Stencyl и Tynker . [8] [9]
Поскольку GDevelop распространялся по лицензии с открытым исходным кодом, он нашел применение в игровом образовании, начиная от начальной школы и заканчивая университетскими курсами. [6] [10] [11] Он также использовался педагогами и исследователями для создания обучающих и серьезных игр . [12] [13]
GDevelop стремится позволить создателям создавать видеоигры без каких-либо языков программирования . Они используют следующие методы, чтобы сделать это:
Основная цель GDevelop — позволить всем пользователям создавать игры без кода или языка программирования. Это достигается с помощью системы событий [14] , которая создает логику, отслеживая условия срабатывания и действия, которые следует предпринять после выполнения условий события. Большинство событий представлены на нормализованном языке, поэтому создатели могут избежать необходимости понимать концепции кодирования, встречающиеся во многих языках программирования.
Поведения позволяют использовать расширенные комбинации предварительно созданных функций и событий для добавления логики, например, движения на основе физики, поиска пути, действия в качестве платформы или персонажа платформы, позволяя перемещать объект с помощью мыши или касания, переходы и т. д. [15] Поведения можно добавлять к игровым объектам, и один и тот же объект может иметь несколько поведений. Поведения также можно создавать с помощью системы событий, что позволяет пользователям расширять существующий набор поведений без кодирования.
GDevelop имеет встроенный Asset Store, который содержит сотни тысяч как бесплатных, так и платных ресурсов. Их можно легко вставить в проект GDevelop несколькими щелчками мыши в интерфейсе редактора. [16]
Весь игровой контент, включая арт персонажей, фоны, текст и т. д., можно добавлять напрямую через интерфейс point-and-click в редакторе. Вот некоторые примеры типов контента: Sprites, Tiled Sprites, 9-Patch (Panel) Sprites, Text Objects, Text Objects с поддержкой BBText, Shape Painters и т. д. Музыку и звуки можно импортировать напрямую в события, которые их используют.
GDevelop имеет веб-, локальный и мобильный клиенты. [17] Веб-клиент позволяет разрабатывать игры напрямую через браузер и сохранять их в облачном хранилище. Веб- и локальная версии имеют большую часть своего набора функций. Мобильная версия имеет более ограниченный набор функций для соответствия правилам Google Play Store [18] и Apple App Store [19] . Неисчерпывающий набор функций, доступных клиентам, включает:
Пользовательские расширения могут быть созданы для включения пользовательских событий, поведения или функций. Существующие события могут быть преобразованы в расширения из таблицы событий проекта. Эти расширения могут быть распространены в IDE для всего сообщества и могут быть добавлены за несколько щелчков. [20] Расширения также могут реализовывать новые возможности движка, такие как интеграция Kongregate API или полная поддержка маскировки, и улучшать качество игры создателя. Некоторые расширения могут добавлять поддержку геймпада и читы, такие как код Konami.
Хотя GDevelop в первую очередь фокусируется на использовании системы событий для обеспечения разработки без какого-либо кода языка программирования, вместо любого события можно также использовать блок кода JavaScript. [9]
Помимо использования блоков кода JavaScript для игровой логики, это также позволяет продвинутым пользователям расширять возможности событий, напрямую манипулируя движком, расширяя его возможности.
GDevelop поддерживает рекламу AdMob , Shopify и Facebook, позволяя размещать рекламу в виде видео, баннеров, промежуточных экранов и ссылок на покупку.
GDevelop доступен в виде мобильного приложения, оптимизированного как для iOS [21] , так и для Android. [22] Для бесплатных аккаунтов существуют ограничения по сценам и событиям, но любой уровень членства Premium разблокирует полный набор функций приложения. [23] Это позволяет пользователям создавать игры на устройствах Android и iOS с поддержкой кросс-сохранения, то есть пользователи могут начать проект на своем мобильном устройстве и продолжить на своем настольном компьютере, или наоборот.
Пользователи могут выбрать сбор аналитических данных из своих игр, включая количество сыгранных игр, количество игроков, удержание пользователей с течением времени и многое другое. [24] Все эти данные собираются анонимно, и сбор данных соответствует всем действующим международным правилам защиты данных. [25]
Представленный в бета-версии 84, [26] GDevelop в настоящее время поддерживает эффекты, применяемые к каждому слою игровой сцены. Шейдеры позволяют использовать расширенные графические эффекты, такие как тени, отражения, скан-линии и замена цветов, без необходимости создания пользовательского арта для эффекта.
IDE Gdevelop также имеет встроенные редакторы для графики и аудио. Piskel [27] интегрирован для редактирования графики, а JFXR [28] интегрирован для создания звуковых эффектов.
Игры можно экспортировать напрямую на Android, Windows, Linux и веб-платформы. [29] Можно сделать локальный экспорт, который позволяет вручную компилировать iOS, Android или настольные ОС, а также экспортировать на такие платформы, как Kongregate , itch.io , Google Play и т. д.
GDevelop также позволяет публиковать неограниченное [30] количество сборок в один клик на их собственной игровой хостинговой платформе gd.games [31] даже для бесплатных аккаунтов. Это дает создателям игр доступ к постоянным URL, профилям создателей и более интегрированной аналитике для их игр. [24]
GDevelop позволяет пользователям компилировать игры в автономные игры, не требуя запуска программного обеспечения.
Для экспорта в один клик поддерживаются следующие платформы:
Кроме того, проекты можно экспортировать локально и вручную компилировать на следующих платформах:
Для игр GDevelop использует GDJS, движок JavaScript, с PixiJS и Three.js в качестве 2D- и 3D-рендеров. Интерфейс редактора находится в React и использует WebAssembly для управления проектами с использованием классов Core, написанных на C++. [32] И интерфейс редактора, и игры упакованы с использованием Electron.
GDevelop 4 использовал GDCpp, движок C++, а также GDJS, движок JavaScript. GDCpp использует SFML, а GDJS использовал Pixi.JS в качестве рендерера. Интерфейс редактора был написан на C++ и по сути основывался на библиотеке SFML для управления мультимедиа и на пользовательском интерфейсе wxWidgets . Программное обеспечение также использовало Boost и TinyXML . IDE и GDCpp были упакованы с помощью стандартного компилятора C++.
По словам основного автора программного обеспечения:
«Идея GDevelop заключается в том, чтобы сделать создание игр доступным для всех, от новичков до опытных разработчиков игр. GDevelop позволяет вам создавать логику вашей игры с помощью визуальных событий, состоящих из условий и действий. Вы также можете создавать свои игровые объекты, составляя предопределенные и настраиваемые поведения. Это означает, что барьер для изучения синтаксиса и идиом языка программирования устраняется. Для людей, которые не являются разработчиками, это способ быстро приступить к работе с интуитивно понятным интерфейсом. Многие любят игры-песочницы. GDevelop — это песочница, но то, что вы можете делать с ней, безгранично». [33]
Первоначальный релиз GDevelop 1.0 состоялся в 2008 году, на основе, которая в первую очередь была C++ и имела более нативную ориентацию на ОС. С годами добавлялось все больше и больше функций, таких как поддержка tilemap, система частиц и ограниченная поддержка сети. В преддверии 2018 года велись обсуждения о миграции GDevelop на более портативную и платформенно-независимую базу, и в январе 2018 года был выпущен GDevelop 5. [34]
До GDevelop 5 основным движком был движок C++ (GDCpp). GDevelop 5 прекратил его поддержку в пользу движка JavaScript (GDJS), впервые представленного 1 июля 2013 года. [35] Причиной отказа от GDCpp стали проблемы на разных платформах, невозможность запуска в браузере или на телефонах из-за используемого рендерера ( SFML [36] ), а также отсутствие у GDevelop в целом участников для поддержки как движка JavaScript, так и движка C++. Планируется вернуть собственный движок в долгосрочной перспективе, но не в краткосрочной [37]
GDevelop 5 включал полную переработку IDE для начала использования веб-технологий, таких как PixiJS и React . Поддержка GDevelop 4 была перенесена на GDevelop 5, чтобы сосредоточиться на улучшении будущего движка.
С момента запуска GDevelop постоянно добавлялись дополнительные функции и возможности, такие как поддержка BBText, [38] поддержка диалогов через Yarnspinner, шейдеры на основе слоев через PixiJS Shaders, [38] и собственные мобильные приложения для разработки игр на устройствах Android и iOS. Разработка и улучшение платформы продолжаются 4ian и группой постоянных участников.
Поддержка 3D была добавлена в GDevelop 5 18 мая 2023 года вместе с другими изменениями. [39]