-
Notifications
You must be signed in to change notification settings - Fork 15
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
149 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,149 @@ | ||
--- | ||
layout: post | ||
title: Defold release 1.9.3 | ||
excerpt: Defold 1.9.3 has been released. | ||
author: Björn Ritzl | ||
tags: ["release notes"] | ||
--- | ||
|
||
# Defold 1.9.3 | ||
|
||
## Summary | ||
* __NEW__: ([#9298](https://github.com/defold/defold/pull/9298)) `Bob.jar` builds only files from the dependency tree | ||
* __NEW__: ([#9300](https://github.com/defold/defold/pull/9300)) Added engine.max_time_step config value | ||
* __NEW__: ([#9315](https://github.com/defold/defold/pull/9315)) Add documentation for `report_progress ` in `http.request` | ||
* __NEW__: ([#9367](https://github.com/defold/defold/pull/9367)) Added b2d.get_angular_damping()/b2d.set_angular_damping() | ||
* __NEW__: ([#9214](https://github.com/defold/defold/pull/9214)) Add 'types' script module for checking Defold userdata types. | ||
* __NEW__: ([#9307](https://github.com/defold/defold/pull/9307)) Decorate editor build exceptions with error source | ||
* __NEW__: ([#9353](https://github.com/defold/defold/pull/9353)) Notify if a GameObject/Component Id or Collection Name contains a space at the beginning or end. | ||
* __NEW__: ([#9355](https://github.com/defold/defold/pull/9355)) Use naming for bundle folders based on the bundle architecture when bundling from the editor. | ||
* __FIX__: ([#9269](https://github.com/defold/defold/pull/9269)) Support render.enable_material with material(s) that use custom vertex attributes | ||
* __FIX__: ([#9274](https://github.com/defold/defold/pull/9274)) Support turning vsync off for Vulkan | ||
* __FIX__: ([#9301](https://github.com/defold/defold/pull/9301)) Added support for display.update_frequency for headless builds | ||
* __FIX__: ([#9330](https://github.com/defold/defold/pull/9330)) Detect circular dependencies during the build process in Bob | ||
* __FIX__: ([#9347](https://github.com/defold/defold/pull/9347)) Added fix for asynchronous raycast messages | ||
* __FIX__: ([#9349](https://github.com/defold/defold/pull/9349)) Optimized the sprite component size | ||
* __FIX__: ([#9378](https://github.com/defold/defold/pull/9378)) Make the atlas output `*.a.texturesetc` more deterministic | ||
* __FIX__: ([#9368](https://github.com/defold/defold/pull/9368)) Rebuilt spirv tools for macos 10.15 | ||
* __FIX__: ([#9293](https://github.com/defold/defold/pull/9293)) Fix dialog behavior on Linux | ||
* __FIX__: ([#9277](https://github.com/defold/defold/pull/9277)) Fix various issues with slice9 and gui pivots | ||
* __FIX__: ([#9317](https://github.com/defold/defold/pull/9317)) Fix missing animation preview overlay in atlas views | ||
* __FIX__: ([#9316](https://github.com/defold/defold/pull/9316)) Ensure build resource paths for embedded resources always reflect their contents | ||
* __FIX__: ([#9327](https://github.com/defold/defold/pull/9327)) Correctly visualize trimmed sprites with flipped animations | ||
* __FIX__: ([#9356](https://github.com/defold/defold/pull/9356)) Remove the GUI scene itself from the GUI template picking dialog | ||
|
||
## Engine | ||
__NEW__: ([#9298](https://github.com/defold/defold/pull/9298)) __`Bob.jar` builds only files from the dependency tree__ | ||
This fix introduces the building of a dependency tree before the bundling step for `Bob.jar`—the building and bundling tool for Defold. This helps avoid building all the files in the project folder, as was previously the case. Instead, it builds only the files referenced in the tree that starts from `game.project`. | ||
|
||
__NEW__: ([#9300](https://github.com/defold/defold/pull/9300)) __Added engine.max_time_step config value__ | ||
In case the engine timestep grows too large, it will be capped against this max value (default is 0.5 seconds) | ||
|
||
__NEW__: ([#9315](https://github.com/defold/defold/pull/9315)) __Add documentation for `report_progress ` in `http.request`__ | ||
|
||
|
||
__NEW__: ([#9367](https://github.com/defold/defold/pull/9367)) __Added b2d.get_angular_damping()/b2d.set_angular_damping()__ | ||
The two functions had accidentally been left out of the api. | ||
|
||
__NEW__: ([#9214](https://github.com/defold/defold/pull/9214)) __Add 'types' script module for checking Defold userdata types.__ | ||
Changes added new Lua module '**types**' which contains utility function to check Defold userdata type like vector, vector3, matrix, quaternion, etc. Module can be excluded via AppManifest. | ||
|
||
Usage example: | ||
```lua | ||
local url = msg.url("main_collection", "/hero", "right_hand") | ||
print(types.is_url(url)) ----> true | ||
|
||
local long_vector = vmath.vector({ 10, 14, 19, -20, -11, -2, 132 }) | ||
print(types.is_vector(long_vector)) --------> true | ||
|
||
local non_empty_vector3 = vmath.vector3(13, 14.5, -7) | ||
print(types.is_vector3(non_empty_vector3)) ------> true | ||
|
||
local non_empty_matrix = vmath.matrix4_translation(non_empty_vector3) | ||
print(types.is_matrix4(non_empty_matrix)) -----> true | ||
|
||
local non_empty_quat = vmath.quat(1, 2, 3, 4) | ||
print(types.is_quat(non_empty_quat)) ------> true | ||
|
||
local test_hash = hash("some_foo_text") | ||
print(types.is_hash(test_hash)) --- ---> true | ||
|
||
print(not types.is_vector(non_empty_vector3)) ------> false | ||
print(not types.is_vector(nil)) ------> false | ||
print(not types.is_vector3(non_empty_matrix)) ------> false | ||
print(not types.is_quat(non_empty_vector3)) ------> false | ||
print(not types.is_url(long_vector)) ------> false | ||
print(not types.is_matrix4(test_hash)) ------> false | ||
``` | ||
|
||
__FIX__: ([#9269](https://github.com/defold/defold/pull/9269)) __Support render.enable_material with material(s) that use custom vertex attributes__ | ||
Components didn't produce custom vertex attributes when a "context material" is set using render.enable_material(..) together with a material that has custom vertex attributes. | ||
|
||
__FIX__: ([#9274](https://github.com/defold/defold/pull/9274)) __Support turning vsync off for Vulkan__ | ||
Vulkan can now turn vsync off by setting the [swap interval](https://defold.com/manuals/project-settings/#swap-interval) of the game.project file to zero. Note that there is no actual concept of swap intervals built-in by Vulkan, hence this value simply turns vsync on or off. To fully support swap intervals other than these values, we need to manually wait for vblanks, which is currently not planned. | ||
|
||
__FIX__: ([#9301](https://github.com/defold/defold/pull/9301)) __Added support for display.update_frequency for headless builds__ | ||
This allows for control of the headless builds where no graphics backend is present. | ||
Can be turned off using the setting `display.update_frequency = 0` | ||
|
||
Fixes: https://github.com/defold/defold/issues/8029 | ||
|
||
__FIX__: ([#9330](https://github.com/defold/defold/pull/9330)) __Detect circular dependencies during the build process in Bob__ | ||
Before this fix, it was possible to bundle a project with circular dependencies, which would result in a runtime crash. Now, Bob detects such cases and reports them during the build process: | ||
|
||
``` | ||
Circular dependency detected: | ||
main.lua class com.dynamo.bob.pipeline.ScriptBuilders$LuaScriptBuilder | ||
-> first.lua class com.dynamo.bob.pipeline.ScriptBuilders$LuaScriptBuilder (Circular Point) | ||
second.lua class com.dynamo.bob.pipeline.ScriptBuilders$LuaScriptBuilder | ||
third.lua class com.dynamo.bob.pipeline.ScriptBuilders$LuaScriptBuilder | ||
-> first.lua class com.dynamo.bob.pipeline.ScriptBuilders$LuaScriptBuilder (Circular Point)' | ||
``` | ||
|
||
__FIX__: ([#9347](https://github.com/defold/defold/pull/9347)) __Added fix for asynchronous raycast messages__ | ||
This fixes a rare crash where lingering raycast messages were handled the exact frame when the collection was freed. | ||
|
||
__FIX__: ([#9349](https://github.com/defold/defold/pull/9349)) __Optimized the sprite component size__ | ||
The size is now 256 bytes (previously 272). | ||
Example with 896 sprites was 288kb and became 256kb. | ||
|
||
__FIX__: ([#9378](https://github.com/defold/defold/pull/9378)) __Make the atlas output `*.a.texturec` more deterministic__ | ||
Fixes the issue where changing the order of images in an atlas without altering any content results in a different `*.a.texturesetc` file. | ||
|
||
__FIX__: ([#9368](https://github.com/defold/defold/pull/9368)) __Rebuilt spirv tools for macos 10.15__ | ||
This fixes an issue on macOS 10 or 11, where shaders weren't built properly. | ||
|
||
|
||
## Editor | ||
__NEW__: ([#9307](https://github.com/defold/defold/pull/9307)) __Decorate editor build exceptions with error source__ | ||
Exceptions thrown from building the project in the editor will now contain information about the source of the error for diagnostic purposes. | ||
|
||
__NEW__: ([#9353](https://github.com/defold/defold/pull/9353)) __Notify if a GameObject/Component Id or Collection Name contains a space at the beginning or end.__ | ||
It may be hard to notice if a GameObject or component ID contains a space symbol at the beginning or end. With this fix, a warning will be shown in the editor. | ||
|
||
__NEW__: ([#9355](https://github.com/defold/defold/pull/9355)) __Use naming for bundle folders based on the bundle architecture when bundling from the editor.__ | ||
The editor will create a folder based on the architecture selected in the bundle dialog. For example, for macOS: | ||
- `x86_64-macos` | ||
- `arm64-macos` | ||
- `universal-macos` (if both architectures are selected) | ||
|
||
__FIX__: ([#9293](https://github.com/defold/defold/pull/9293)) __Fix dialog behavior on Linux__ | ||
|
||
|
||
__FIX__: ([#9277](https://github.com/defold/defold/pull/9277)) __Fix various issues with slice9 and gui pivots__ | ||
* The slice-9 setting will now be correctly visualized in the editor viewport in all scenarios. | ||
* Gui pivot offsets are now correctly visualized in the editor viewport in all scenarios. | ||
* You can no longer select "Polygons" as a Sprite Trim Mode for an atlas image, which would previously throw an exception. | ||
|
||
|
||
__FIX__: ([#9317](https://github.com/defold/defold/pull/9317)) __Fix missing animation preview overlay in atlas views__ | ||
The animation preview overlay is now visible again in atlas views. | ||
|
||
__FIX__: ([#9316](https://github.com/defold/defold/pull/9316)) __Ensure build resource paths for embedded resources always reflect their contents__ | ||
Referencing a `.wav` or `.ogg` file directly as a component from a game object embedded in a collection no longer throws an exception when building the project. | ||
|
||
__FIX__: ([#9327](https://github.com/defold/defold/pull/9327)) __Correctly visualize trimmed sprites with flipped animations__ | ||
The editor now correctly renders sprites and GUI nodes with flipped animations in the scene view. | ||
|
||
__FIX__: ([#9356](https://github.com/defold/defold/pull/9356)) __Remove the GUI scene itself from the GUI template picking dialog__ | ||
Picking the GUI as a template for itself results in the editor freezing. This fix hides the GUI scene from the GUI template picking dialog. |