Skip to content
This repository was archived by the owner on Apr 25, 2019. It is now read-only.
/ GDevelop.js Public archive

Core of GDevelop, the open-source game creator requiring no programming skills, ported to Javascript

License

Notifications You must be signed in to change notification settings

4ian/GDevelop.js

Folders and files

NameName
Last commit message
Last commit date
Apr 13, 2019
Apr 13, 2019
Aug 21, 2015
Jun 9, 2015
Jun 21, 2018
Nov 5, 2018
Nov 3, 2018
Sep 22, 2018
Apr 25, 2019
Jun 9, 2015
Sep 9, 2018
Sep 9, 2018
Jul 6, 2018

Repository files navigation

ℹ️ This repository is out-dated, it's now integrated in GDevelop source code

Please take a look at the latest version here in GDevelop source code.

GDevelop.js

This is a port of some parts of GDevelop to Javascript using Emscripten.

GDevelop is a full featured, cross-platform, open-source game creator software requiring no programming skills. Download it on the official website and check its GitHub page.

How to build Build Status

git clone https://github.com/juj/emsdk.git
cd emsdk
./emsdk update
./emsdk install sdk-1.37.37-64bit
./emsdk activate sdk-1.37.37-64bit
source ./emsdk_env.sh

(on Windows run emsdk instead of ./emsdk, and emsdk_env.bat instead of source ./emsdk_env.sh. For up-to-date information, check again Emscripten installation instructions).

  • Make sure you have Node.js installed and grunt:
    npm install -g grunt-cli
    git clone https://github.com/4ian/GDevelop.git
    cd GDevelop && git clone https://github.com/4ian/GDevelop.js.git
  • Launch the build:
    cd GDevelop.js
    npm install
    npm run build

Output is created in /path/to/GD/Binaries/Output/libGD.js/.

  • You can then launch GDevelop 5 that will use your build of Gdevelop.js:
    cd ..
    cd newIDE/app
    npm install
    npm start

More information in GDevelop 5 readme.

Launch tests and examples

Launch tests with grunt:

npm test

Or launch example:

cd examples && node demo.js

The demo generate a json file that can be opened with GDevelop!

About the internal steps of compilation

The grunt build task:

  • create Binaries/embuild directory,
  • patch SFML Config.hpp file to make Emscripten recognized as a linux target,
  • launch CMake inside to compile GDevelop with Emscripten toolchain file,
  • update the glue.cpp and glue.js from Bindings.idl using Emscripten WebIDL Binder,
  • launch the compilation with make and wrap the generated libGD.js.raw into the final libGD.js file.

It also create a compressed libGD.js.gz file which is handy for distributing the library pre-compressed to web browsers.

Documentation

Refer to GDevelop documentation for detailed documentation of the original C++ classes. The file Bindings.idl describes all the classes available in GDevelop.js.

License

  • GDevelop.js is distributed under the MIT license.
  • GDevelop is under the MIT license (and GPL v3 license for the old IDE).