GDevelop is a 2D and 3D
cross-platform
Within computing, cross-platform software (also called multi-platform software, platform-agnostic software, or platform-independent software) is computer software that is designed to work in several Computing platform, computing platforms. Some ...
,
free and open-source
Free and open-source software (FOSS) is software available under a Software license, license that grants users the right to use, modify, and distribute the software modified or not to everyone free of charge. FOSS is an inclusive umbrella term ...
game engine
A game engine is a software framework primarily designed for the development of video games which generally includes relevant libraries and support programs such as a level editor. The "engine" terminology is akin to the term " software engine" u ...
, which mainly focuses on creating
PC and
mobile game
A mobile game is a video game that is typically played on a mobile phone. The term also refers to all games that are played on any Mobile device, portable device, including from mobile phone (feature phone or smartphone), tablet computer, table ...
s, as well as
HTML5 games playable in the browser.
Created by Florian Rival, a software engineer at
Google
Google LLC (, ) is an American multinational corporation and technology company focusing on online advertising, search engine technology, cloud computing, computer software, quantum computing, e-commerce, consumer electronics, and artificial ...
, GDevelop is mainly aimed at non-programmers and game developers of all skillsets, employing event based
visual programming
In computing, a visual programming language (visual programming system, VPL, or, VPS), also known as diagrammatic programming, graphical programming or block coding, is a programming language that lets users create programs by manipulating prog ...
similar to engines like
Construct,
Stencyl, and
Tynker
Tynker is an educational programming platform, like Scratch, to help children learn coding skills, including game design, web design, animation and robotics. It includes courses in Minecraft Modding, Minecraft Game Design, Creative Coding, Pyt ...
.
As it was distributed under an open-source license, GDevelop has found uses in games education, ranging from primary schools to university courses.
It has also been used by educators and researchers to create learning and
serious game
A serious game or applied game is a game designed for a primary purpose other than pure entertainment. The "serious" adjective is generally prepended to refer to video games used by industries like defense, education, scientific exploration, he ...
s.
Game creation without programming languages
GDevelop aims to allow creators to create
video game
A video game or computer game is an electronic game that involves interaction with a user interface or input device (such as a joystick, game controller, controller, computer keyboard, keyboard, or motion sensing device) to generate visual fe ...
s without any
programming language
A programming language is a system of notation for writing computer programs.
Programming languages are described in terms of their Syntax (programming languages), syntax (form) and semantics (computer science), semantics (meaning), usually def ...
s. They use these methods to allow this:
Event-based logic
GDevelop's primary focus is to allow all users to create games without code or a programming language. This is accomplished via an Event system, which creates logic by monitoring for Conditions on when to trigger, and actions to take once the event conditions are met. The majority of events are presented in normalized language, so creators can avoid having to understand coding concepts found in many programming languages.
Behaviors
Behaviors allow for advanced combinations of pre-built functions and events to add logic like physics-based movement, pathfinding, acting as a platform or platform character game, allowing to move the object with the mouse or touch, transitions, etc. Behaviors can be added to game objects, and the same object can have several behaviors. Behaviors can also be created using the Event system - allowing users to extend the existing set of behaviors without coding.
Built-In Asset Store
GDevelop has a built-in Asset Store that is host to hundreds of thousands of both free and paid assets. These can easily be inserted into a GDevelop project with a few clicks within the editor interface.
Easy content pipeline
All game content including character art, backgrounds, text, etc., can be added directly through a point-and-click interface in the editor. Some example content types are Sprites, Tiled Sprites, 9-Patch (Panel) Sprites, Text Objects, Text Objects with BBText support, Shape Painters, and more. Music and Sounds can be imported directly into the events that utilize them.
Other features
GDevelop has Web, Local and Mobile clients. The web client allowing for game development directly through the browser and saving to a cloud storage solution. Both Web and Local versions share the majority of their feature-set. The mobile version has a more limited feature set to comply with Google Play Store and Apple App Store regulations. A non-exhaustive feature-set available to clients include:
Extensions
User-made extensions can be created to allow for custom events, behaviors, or functions. Existing events can be turned into extensions from within a project's event sheet. These extensions can be shared within the IDE to the entire community and can be added within a few clicks. Extensions can also implement new engine capabilities such as Kongregate API integrations or full masking support and improve the quality of the creator's game. Some things extensions can add
gamepad support and cheats like the Konami code.
Javascript language support
Although GDevelop's primary focus is using the event system to enable development without any programming language code, a JavaScript code block can also be used in place of any event.
In addition to using JavaScript code blocks for game logic, this also allows advanced users to extend the capabilities of events by directly manipulating the engine, expanding the capabilities of the engine.
Monetization support
GDevelop supports
AdMob
AdMob is a mobile advertising subsidiary of Google, originally founded by the Syrian entrepreneur Omar Hamoui. The name AdMob is a portmanteau for "advertising on mobile". It was incorporated on April 10, 2006 while Hamoui was in business scho ...
,
Shopify
Shopify Inc., stylized as ''shopify'', headquartered in Ottawa, Ontario, operates an e-commerce platform for retail point-of-sale systems that offers payments, marketing, shipping, inventory management, transaction management, and customer eng ...
, and
Facebook
Facebook is a social media and social networking service owned by the American technology conglomerate Meta Platforms, Meta. Created in 2004 by Mark Zuckerberg with four other Harvard College students and roommates, Eduardo Saverin, Andre ...
ads allowing for advertising in the form of video, banner, interstitial screen and link to purchase.
Mobile editor app
GDevelop is available as a mobile app, optimized for both iOS and Android. There are scene and event limits for free accounts, but any level of Premium membership will unlock the app's full feature set. This allows users to create games on Android and iOS devices, with cross-save support, meaning users can start a project on their mobile device and continue on their desktop, or vice-versa.
Game analytics
Users can opt to collect analytics data from their games, including the number of times the game has been played, the number of players, user retention over time, and more.
All of this data is collected anonymously and data collection complies with all current international data protection regulations.
Shader effects
Introduced in beta 84, GDevelop currently supports effects applied to each layer of a game scene. Shaders allow for advanced graphical effects, such as drop shadows, reflections, scanlines and color swapping, without having to create custom art for the effect.
Built-in content editors
Gdevelop's IDE also has built-in editors for graphics and audio. Piskel is integrated for editing art, and JFXR is integrated for creating sound effects.
One-click export
Games can be exported directly to Android, Windows,
Linux
Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
, and Web platforms. It is possible to make a local export that allows for manual iOS, Android, or desktop OS compiling, as well as export to platforms like
Kongregate
Kongregate is an American web gaming portal and video game publisher. Its website features over 124,000 online games and 30+ mobile games available to the public. The company also publishes games for PC, mobile, and home consoles. It was purchase ...
,
itch.io
Itch.io (stylized in all lowercase) is a website for users to host, sell and download indie video games, indie role-playing games, game assets, comics, zines and music. Launched in March 2013 by Leaf Corcoran, the service hosts over 1,000,000 ...
,
Google Play
Google Play, also known as the Google Play Store, Play Store, or sometimes the Android Store (and was formerly Android Market), is a digital distribution service operated and developed by Google. It serves as the official app store for certifie ...
, etc.
gd.games: GDevelop's own game hosting platform
GDevelop also allows unlimited one-click builds to be published on their own game hosting platform
gd.games even for free accounts. This gives game creators access to permanent URLs, creator profiles and more integrated analytics for their games.
Supported platforms
GDevelop allows users to compile games into stand-alone games, without requiring the software to run.
The following platforms are supported for One-click export:
* Windows 7/8/10/11
* macOS
* Linux
* Android
* HTML5 (Web)
Additionally, the projects can be exported locally, and manually compiled to the following platforms:
* Windows 7/8/10/11
* Windows Store UWP
* Linux
* Android
* iOS
* HTML5 (Web)
Technologies used
For games, GDevelop uses GDJS, a JavaScript engine, with PixiJS and Three.js as 2D and 3D renderers. The editor interface is in React and uses WebAssembly to manipulate projects using the Core classes written in C++. Both the editor interface and games are packaged using Electron.
GDevelop 4 used a GDCpp, a C++ engine, as well as GDJS, a JavaScript engine. GDCpp uses SFML and GDJS used Pixi.JS as a renderer. The editor interface was written in C++ and was essentially based on the library
SFML for multimedia management and on
wxWidgets
wxWidgets (formerly wxWindows) is a widget toolkit and tools library for creating graphical user interfaces (GUIs) for cross-platform applications. wxWidgets enables a program's GUI code to compile and run on several computer platforms with no s ...
user interface. The software also used Boost and
TinyXML
TinyXML is a small, simple, operating system-independent XML parser for the C++ language. It is free and open source software, distributed under the terms of the zlib License.
TinyXML-2 replaces TinyXML-1 completely and only this version should ...
. The IDE and GDCpp were packaged via a standard C++ compiler.
History
According to the main author of the software:
"The idea with GDevelop is making game creation accessible to anyone, from beginners to seasoned game developers. GDevelop allows you to create the logic of your game using visual events, composed of conditions and actions. You can also build your game objects by composing pre-defined and customizable behaviours. This means that the entry barrier to learning the syntax and idioms of a programming language is removed. For people that are not developers, it’s a way to quickly get up and running with an intuitive interface. Lots of people love sandbox games. GDevelop is a sandbox - but what you can do with it is unlimited."
GDevelop's initial 1.0 release was in 2008, on a foundation that was primarily C++ and had a more native OS focus. Over the years more and more features were added such as tilemap support, a particle system, and limited network support. Leading up to 2018, discussions around migrating GDevelop to a more portable and platform-agnostic base were made, and in January 2018 GDevelop 5 was released.
Until GDevelop 5, the main engine was the C++ engine (GDCpp). GDevelop 5 dropped support for it in favour of the JavaScript engine (GDJS), first introduced on July 1, 2013. The reason for dropping GDCpp was because it had issues across platforms, couldn't run in the browser or on phones due to the renderer (
SFML) it was using, and GDevelop was lacking contributors in general to support both a JavaScript and a C++ engine. It is planned to bring a native engine back in the long term, but not in the short term
GDevelop 5 included a complete rework of the IDE to begin using web technologies, like PixiJS and
React REACT or React may refer to:
Computing
* React (software), a JavaScript library for building user interfaces from Facebook Inc (now Meta Platforms)
** React Native, a mobile application framework created by Facebook Inc (now Meta Platforms)
* React ...
. Support around GDevelop 4 was shifted over to GDevelop 5 to bring focus on enhancing the future of the engine.
Since GDevelop's launch, additional features and functionality have continually been added, such as BBText support,
Dialogue Support via Yarnspinner, layer-based shaders via PixiJS Shaders,
and native mobile apps to develop games on Android and iOS devices. Development and enhancement of the platform continues from 4ian and a group of repeat contributors.
3D support was added to GDevelop 5 on May 18, 2023, along with other changes.
See also
*
Construct (game engine)
Construct is an HTML5-based 2D video game engine developed by Scirra Ltd. It is aimed primarily at non-programmers, allowing quick creation of games through visual programming. First released as a GPL-licensed DirectX 9 game engine for Micro ...
*
Scratch (programming language)
Scratch is a High-level programming language, high-level, block-based visual programming language and website aimed primarily at children as an educational tool, with a target audience of ages 8 to 16. Users on the site can create projects o ...
*
Clickteam Fusion
Clickteam is a French software development company based in Boulogne-Billancourt, Hauts-de-Seine. Founded by Francis Poulain, François Lionet and Yves Lamoureux, Clickteam is best known for the creation of Clickteam Fusion, a script-free progra ...
References
External links
*
{{Video game engines , state=collapsed
Educational programming languages
Free game engines
Game engines for Linux
HTML5
Video game development software
Video game development software for Linux
Video game engines
Video game IDE
Visual programming languages