New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Experimental new IDE (scene editor only) based on React+Electron #347
Conversation
…ing of Sprite instances
…ance integration between IDE and newIDE
… text ellipsis in tabs
…mple in resources
d71348d
to
6d24e82
Compare
The new IDE is now advanced enough to be used to edit scenes of existing games and I've updated the README and build scripts so that anyone with Node.js can set it up and contribute :) |
This is absolutely awesome! Can you please make a new IDE for the event sheet please? EDIT: sorry for asking about this - looking at the screenshot and reading more carefully - you are remaking the entire editor from scratch- just haven't gotten to the event sheet yet. I hope it will still have a desktop version - as a lot of people are afraid of editors in the cloud still - because they assume that they have to rent them.. construct3 had a huge outcry at their forums and a lot of backlash. |
Desktop will be the first version :)
Later, but yes that's the goal.
Yes that's it :) If you're a bit familiar with Node.js or are willing to learn (it's Javascript, it's really not complicated), read this : I will release a desktop version with the scene editor in a few days/weeks. With an option to export to a Amazon hosting to make quick demos and game jams ;) |
This is an experimental IDE for GDevelop that I've been working on lately.
It's still pretty raw but the scene editor is usable.
Technologies
This new IDE (located in
newIDE
directory) is written in Javascript, based on React.js, using material-ui for the user interface and Electron for packaging and running it.As it's full Javascript, GDevelop core is compiled from C++ to Javascript with Emscripten (see GDevelop.js) so that the new IDE can manipulate GDevelop games.
The current IDE acts as a server and is launching the new IDE and serving it the game, and the new IDE can also send back any changes.
Why?
The idea is that the C++/wxWidgets based IDE is getting old and something new, fresh and Javascript based can be easier to maintain, extend and improve.
Javascript as a language is getting really nice (ES6), the ecosystem is vibrant and easy to learn.
It's also future proof as based on well known and maintained libraries. Complete compatibility with Linux should be super easy to achieve.
This is also a big step toward a complete IDE usable on web browsers, which would allow anyone with an internet connection and a recent browser to make games!
State
For now, only the scene editor is usable. Here are a few screenshots:
To use the new scene editor, the user will have to activate it in the preferences (at least while it's not fully done).
Try it
It's still hard for now to try it because I've not integrated the building of libGD.js (GDevelop compiled to Javascript) to the full build. You have to manually get GDevelop.js, put it in the GD folder, and build it, then launch the script to copy libGD.js into newIDE.
I'll work to integrate this in the CMake build later!
My next step are to continue implementing the scene editor to make it usable with every existing objects and have all the existing features.
And to make it easy for anyone to get it to try it or contribute 😄
cc @victorlevasseur