This roadmap outlines our plans for the first half of 2019. The list of planned new features and improvements are in no particular order and based on the previous roadmap for H2-2018.
Resource properties will allow developers to define new property types referencing component resources such as atlases, sounds, models and many other things. This opens up a whole set of new possibilities for dynamic content creation. This task remains from the H2-2018 roadmap.
Multi-texturing will greatly simplify the way additional textures are fed into shaders for various effects that are currently very hard or impossible to do in Defold. This task remains from the H2-2018 roadmap.
During H2-2018 we brought our system for native extensions into a stable state. During H1-2019 we will use this system to extract non-vital parts of the engine core into native extensions, thus giving users even better control of what to include in the engine core, as well as opening up for community collaboration and improvements. We will start by extracting the webview into a native extension and then move on to also extract push, iap, iac and the Facebook SDK.
Our ambition was to make major improvements to the audio support in Defold, but due to shifting priorities we need to reduce the scope of this work in H1-2019 and instead ship a number of smaller improvements.
BUG FIXES and IMPROVEMENTS
We will continue our ambition of delivering a stable and bug free editor and engine with the clear goal of no hard crashes. We will continue to work together with the community to identify, prioritize and fix bugs and crashes. At the end of 2018 we made several improvements to engine stability and we’ve managed to reduce ANRs on Android. During H2-2018 we fixed 188 reported engine bugs and 253 editor bugs, not to mention all of the new features and improvements. If you’ve found a bug or have a feature suggestion please get in touch!
We constantly work to improve the performance of the Defold engine and editor. For the engine we focus on maintaining a low runtime memory footprint as well as a small binary size. During H2-2018 we upgraded Emscripten and released Webassembly support for HTML5 builds. During H1-2019 we will continue to improve engine performance in key areas that we identified during 2018. Examples of areas that we will improve are optimization of transform updates (which will help in games with a large number of game objects) and url resolution.
During H1-2019 we will make several changes to comply with new platform requirements. On Android we will add 64-bit support before the August 2019 deadline. On iOS we will add iOS SDK 12 support before the March 2019 deadline. And finally we will also migrate from GCM to Firebase for Android push before the April 11 2019 deadline.
RENDERING & 3D
METAL and VULKAN
With the upcoming deprecation of OpenGL in iOS 12 and MacOS we started working on the new rendering pipeline in H2-2018. For iOS this will mean the transition to Metal, most likely via Vulkan and Molten-VK. We will continue with this work during H1-2019.
IMPROVED 3D SUPPORT
The Defold engine operates fully in 3D, although tools and APIs are geared towards 2D games. Our plan during H2-2018 was to make several larger improvements to the 3D support in the engine. We have decided to reduce the scope due to a shift in priorities and instead focus on a few smaller but still important improvements in H1-2019.
PLATFORMS & SERVICES
Our current set of supported platforms have remained the same since the introduction of Amazon support almost three years ago and the more recent additions of sub-platforms such as Facebook Game Room and Facebook Instant Games. The stance which we’ve taken regarding the addition of new platforms has been to explore new platforms when there’s been enough requests from our community. During H2-2018 we started reevaluating this decision and we made some steps in the direction of porting the engine to one of the current gen game consoles. We will continue with this work during H1-2019.
During H2-2018 we started working on support for running Defold iOS builds on the iOS simulator. Even though this won’t replace testing on actual hardware it will be of help to developers with limited access to iOS devices. We will finish this work during Q1-2019.
GOOGLE PLAY GAME SERVICES
Google Play Game Services support has been a long requested feature of Defold. Support for this feature will be added as a native extension during H1-2019.
EDITOR & TOOLS
UNIFIED BUILD PIPELINE
While the migration to the new editor can be considered almost fully completed (some very minor differences still exist) we still only provide the old build pipeline (bob.jar) for users building from the command line. The new build pipeline in the new editor is better and faster than bob.jar thanks to some really great work from the editor team with optimizations and parallelization of tasks. We want command line builds to benefit from these improvements as well and will extract the build system into a standalone tool suitable for command line use. This task remains from the H2-2018 roadmap.
IMPROVED UNDO WORKFLOW
The current undo functionality in the Defold editor works on a global level, meaning that there’s a single list of changes. When an undo is performed the most recent change in the history will be reverted, regardless of which editor tab that is open. This has caused some confusion in the community and because of this we have decided to revise the undo workflow. Work on this started late 2018 and will be finished during Q1-2019.
The ability to extend the editor with custom tools will be one of the next really major milestones for Defold during 2019. Editor extensions will open up many new possibilities for developers to improve their workflow and integrate custom tools to speed up content creation. This task remains from the H2-2018 roadmap.