Defold 1.6.2 BETA
The latest beta is now released, and we invite those interested in beta testing the new features in the editor and engine to join now.
The beta period will be 2 weeks and the next planned stable release is two weeks from now.
We hope this new workflow will highlight any issues earlier, and also get valuable feedback from our users. And please comment if you come up with ideas on improving on this new workflow.
Please report any engine issues in this thread or in issues using Help â Report Issue
Thx for helping out!
Disclaimer
This is a BETA release, and it might have issues that could potentially be disruptive for you and your teams workflow. Use with caution. Use of source control for your projects is strongly recommended.
Access to the beta
Download the editor or bob.jar from http://d.defold.com/beta/
Set your build server to https://build-stage.defold.com
Defold 1.6.2
Summary
- NEW: (#8180) Make it possible to change column size in the web profiler
- NEW: (#8108) âdefault.render_scriptâ refactoring reducing of the memory allocation and using of the Defold best practices.
-
NEW: (#8207) Show textures created with
gui.new_texture()
in resource profiler. - NEW: (#8110) Use exp4j to evaluate math string
- NEW: (#7802) Generate resource graph on bundle
- FIX: (#8132) Bundle process speeded up
- FIX: (#8152) OpenGL renderer disables only enabled vertex attribute arrays
- FIX: (#8159) Added support for adding natively embedded resources at runtime
-
FIX: (#8174) Improved handling of script
init()
errors - FIX: (#8187) Remove comments from Lua code when bundle project
- FIX: (#8189) Make sure the resource system respects the liveupdate.enabled flag
-
FIX: (#8197) Fix crash using wrong path in
*.set_prototype()
-
FIX: (#8213) Make sure that
action.screen_y
starts from 0 as well asaction.screen_x
- FIX: (#8216) Bugfix for vulkan fullscreen support on OSX
- FIX: (#8218) Updated build server to use MSVC 2022, XCode 15 and Clang 17
- FIX: (#8226) Open engine log file by double-clicking the error
- FIX: (#8121) Make autocomplete less aggressive
- FIX: (#8122) Fix non-working Z handles on the Scale Manipulator
- FIX: (#8211) Disable Show/Hide Selected Objects command when nothing is selected
- FIX: (#8212) Remove icons from menu items in macOS menu bar
Engine
NEW: (#8180) Make it possible to change column size in the web profiler
Now it is possible to change a column size in the web profiler:
NEW: (#8108) âdefault.render_scriptâ refactoring reducing of the memory allocation and using of the Defold best practices.
Now update() allocates 0 bytes and all the allocations and recalculations happens only by receiving external messages.
NEW: (#8207) Show textures created with gui.new_texture()
in resource profiler.
Now textures created with gui.new_texture()
will be listed in resource profiler altogether with the GUI resource name that owns it.
NEW: (#7802) Generate resource graph on bundle.
When building a project using the bob.jar
command line tool a resource graph in json format will be saved as build/default/game.graph.json
. The resource graph will list all resources included in the game archive, starting at the top level (project root) and following a parent-child hierarchy from the game.project file down through the bootstrap collection to each leaf resource. Example of a graph:
[ {
"path" : "/<AnonymousRoot>",
"hexDigest" : null,
"children" : [ "/main/main.collectionc", "/builtins/render/default.renderc", "/input/game.input_bindingc", "/builtins/input/default.gamepadsc", "/builtins/render/default.display_profilesc", "/builtins/scripts/debugger.luac" ]
}, {
"path" : "/main/main.collectionc",
"hexDigest" : "b876bb2748e96cb7ceab9deb9808f534c0b994cf",
"children" : [ ]
}, {
"path" : "/builtins/render/default.renderc",
"hexDigest" : "62fcf66fed9988305fe48996f4d7693b2fac6e49",
"children" : [ "/builtins/render/default.render_scriptc" ]
}, {
"path" : "/builtins/render/default.render_scriptc",
"hexDigest" : "51fe08bdca1d4a79e41bbda87bfa79a151b82c6f",
"children" : [ ]
}, {
"path" : "/input/game.input_bindingc",
"hexDigest" : "9b525bf47b7a7a9c35ad9b07723421404c35dc0f",
"children" : [ ]
}, {
"path" : "/builtins/input/default.gamepadsc",
"hexDigest" : "7c448d18992aefe1c184981f2bb057cf6429321f",
"children" : [ ]
}]
FIX: (#8132) Bundle process speeded up
Now the Create Archive step during the bundling process 3 times faster. Also, build report generation speed increased drastically.
FIX: (#8152) OpenGL renderer disables only enabled vertex attribute arrays
OpenGL renderer disabled vertex arrays that had not been enabled. It didnât affect the visual side in any way, but the renderer made unnecessary OpenGL calls. Now the renderer disables only those vertex arrays that were enabled.
FIX: (#8159) Added support for adding natively embedded resources at runtime
This feature opens up for a native developer to provider certain resources at runtime.
It is not a replacement for the LiveUpdate feature, but rather a complement to it, allowing the developer to provide resources that come in an embedded form.
FIX: (#8174) Improved handling of script init() errors
Weâve improved handling of script init()
errors.
For the initial setup
-go
--script1.script
----init()
----update()
--script2.script
----init()
----update()
if error happens in the init()
function for the script1.script
old behavior was
- the engine calls
script1.script->update()
- the engine doesnât call
script2.script->init()
- the engine calls
script2.script->update()
As a result, the reason of the problem is an error in script1.script->init()
which we see only once, but script1.script->update()
and script2.script->update()
may produce a ton of errors because scripts werenât initialized.
With this improvement, if error happens in the script1.script->init()
function the engine behaves the following way:
- the engine doesnât call
script1.script->update()
- the engine calls
script2.script->init()
and if this function doesnât have Lua errors:- the engine calls
script2.script->update()
- the engine calls
It makes script components more independent.
Also, it prevents situations when errors in update()
function shadow the real reason of the problem in init()
function.
FIX: (#8187) Remove comments from Lua code when bundle project
Remove all the comments from Lua code in all Lua files (*.lua
, *.script
etc) during the bundle process.
FIX: (#8189) Make sure the resource system respects the liveupdate.enabled flag
This fixes an issue where the liveupdate system wasnât fully disabled when the project setting was set to false (liveupdate.enabled=0
)
FIX: (#8197) Fix crash using wrong path in *.set_prototype()
Fixed a a crash that happens because of using of a path without a .
(dot) in it as the second parameter for factory.set_prototype()
or collectionfactory.set_prototype()
FIX: (#8213) Make sure that action.screen_y
starts from 0 as well as action.screen_x
Fixed inconsistency between action.screen_y
which was in interval [1; window_heigh] and action.screen_x
which was in interval [0; window_width - 1]. Now, both started from 0.
FIX: (#8216) Bugfix for vulkan fullscreen support on OSX
FIX: (#8218) Updated build server to use MSVC 2022, XCode 15 and Clang 17
It was long overdue to update the Windows sdkâs, and we have now updated to MSVC 2022 (14.37.32822
) and the latest windows 10 sdk (10.0.20348.0
).
In doing so, we also had to update to Clang 17 (in order to cross compile windows on the Linux build server).
For extension/linux developers, be aware that this compiler will not link libraries that are not compiled with -fPIC
/-fPIE
, like the engine is.
So, if you see such a linker error, you will need to recompile or update your library.
For example, weâve updated the DefOS to 2.7.1 to support Defold 1.6.2.
Weâve also updated to XCode 15. Weâll update the macOS/iOS sdkâs soon (whithin the next few releases).
Editor
NEW: (#8110) Use exp4j to evaluate math string
You can now evaluate complex mathematical expressions such as 4 * (2 ^ 16)
in numeric text fields and they will be set to the result.
FIX: (#8121) Make autocomplete less aggressive
Auto-complete popup no longer appears on typing digits.
FIX: (#8122) Fix non-working Z handles on the Scale Manipulator
- The Scale Manipulator now works as expected when scaling along the Z axis, the XZ plane, and the YZ plane.
FIX: (#8211) Disable Show/Hide Selected Objects command when nothing is selected
The Show/Hide Selected Objects command is now disabled unless something is selected. Invoking it with no selection used to cause an error.
FIX: (#8212) Remove icons from menu items in macOS menu bar
- Removed broken icons from the menu bar on macOS.
- Replaced Undo and Redo menu item icons with high-resolution variants.
FIX: (#8226) Open engine log file by double-clicking the error
Double-clicking on the build error âFor the full log, see /file/path/log.txtâ will now open the error log file.