Release notes
Summary
- NEW: (#8037) Paged atlas support for GUI
-
NEW: (#8056) Bob doesn’t build resources at all with
--exclude-archive
argument - NEW: (#8072) Toggle visibility of object using shortcut
- NEW: (#8085) Add quick help page
-
FIX: (#7990) Removed the
skeleton
property from the.animationset
resource. - FIX: (#8025) Use pixel coordinates for sprite attribute local space
- FIX: (#8054) Added atlas image rename functionality
- FIX: (#8067) Use AL_BUFFERS_QUEUED to unqueue OpenAL buffers
- FIX: (#8075) Cap HTML5 loading progress at 100%
- FIX: (#8084) Rebuilt glslc for macOS 11
- FIX: (#8089) Updated spirv-cross/spirv-opt for macOS 11 for Intel machines
-
FIX: (#8087) Apply the scale from the
factory.create
arguments to the 3D trigger - FIX: (#8104) Fixed error reporting for Project.getResource()
- FIX: (#8119) Log listener crash
- FIX: (#8115) Added lipo tool for all host platforms
- FIX: (#8107) Escape underscore in menu
- FIX: (#8038) Added support for multiple animated nodes in a .gltf file
- FIX: (# 8134) Fix issue with window focus on macOS Sonoma (14.0)
- FIX: (# 8114) Revert to old sound library for HTML5
- FIX: (# 8143) Fix issue when Component Counter doesn’t take into account all Dynamic Prototype checkboxes
Engine
NEW: (#8037) Paged atlas support for GUI
GUI components can now use paged atlases and materials.
NEW: (#8056) Bob doesn’t build resources at all with --exclude-archive
argument
Fixes issue when Bob just doesn’t include resources into the bundle when using --exclude-archive
but still builds everything. Now, Bob skips resource building because it’s a waste of time in cases the user want a contenless bundle.
FIX: (#7990) Removed the skeleton
property from the .animationset
resource.
We’ve removed the skeleton
property from the .animationset
resource.
This allows us to better match animation names with bone names at runtime.
The root bone of a skeleton is now also always renamed to root
, making it easier to use similar code in engine/scripting.
FIX: (#8025) Use pixel coordinates for sprite attribute local space
Fixed an issue where using the local coordinate space
for a custom vertex stream used by a sprite produced coordinates in the [-0.5, 0.5]
range. We now produce the data in pixel coordinates instead, which is already what the editor was doing prior.
FIX: (#8054) Added atlas image rename functionality
We’ve added the property Rename patterns
to the Atlas resource type.
This will facilitate easier coupling of animations between multiple atlases, and is a first step towards multiple texture support for Sprites.
The property is a list of ,
separated patterns, where each pattern is a =
separated string of the format <src>=<dst>
.
Examples of Atlas imaged renaming
- Pattern:
_normal=
- An image of the namehat_normal
→hat
. - Pattern:
hat=cat,_normal=
- An image of the namehat_normal
→cat
.
FIX: (#8067) Use AL_BUFFERS_QUEUED to unqueue OpenAL buffers
The OpenAL library for HTML5 seems to work a bit differently than the other platforms.
Instead of removing the processed buffers, we remove the queued buffers explicitly.
FIX: (#8075) Cap HTML5 loading progress at 100%
Make sure the HTML5 loader progress does not go beyond 100%
FIX: (#8084) Rebuilt glslc for macOS 11
The glslc for Intel macOS, was accidentally build for a newer macOS version.
It is now rebuilt for our minimum supported version macOS 11.
FIX: (#8089) Updated spirv-cross/spirv-opt for macOS 11 for Intel machines
FIX: (#8087) Apply the scale from the factory.create
arguments to the 3D trigger
It turned out that the engine didn’t apply the scale to the 3D trigger when an object was created from a factory or a collectionfactory. The pull request fixes the issue.
FIX: (#8104) Fixed error reporting for Project.getResource()
Fixed an issue where the error reporting for Project.getResource() wouldn’t output which game project property was missing.
FIX: (#8119) Log listener crash
We have an issue when unregistering log listeners, making it go out of bounds.
FIX: (#8115) Added lipo tool for all host platforms
This will allow bob.jar to bundle macOS on all platforms. An example use case it building on continuous integration servers.
FIX: (#8038) Added support for multiple animated nodes in a .gltf file
Previously, we assumed that the first model in the scene was the one that was used for skinning.
However, that didn’t cover all the use cases, and instead we now render all the models in the scene.
Additionally, we now also list all the animations from a .gltf/.glb file when it’s selected as the animation set for a .model
component. Previously, it always only selected the longest animation in the file.
The previous behavior for .animationset
's is not changed, any animation files used in an animation set will only pick one animation (the longest), just as before.
Also, if there is a mesh in the model, that isn’t skinned, but is a child to a bone, then that model will not be skinned at runtime, but get assigned a non-skinned material (if it didn’t already have one)
Added model.set_mesh_enabled()
and model.get_mesh_enabled()
to control visibility of meshes within a scene.
FIX: (#8134) Fix issue with window focus on macOS Sonoma (14.0)
Fixed issue when on macOS Sonoma (14.0) game window started without focus on it.
FIX: (# 8114) Revert to old sound library for HTML5
Due to some issues with the Emscripten OpenAL sound library, we decided to go back to our previous sound library for now.
We’ll revisit the issues that are affected by this change.
FIX: (# 8143) Fix issue when Component Counter doesn’t take into account all Dynamic Prototype checkboxes
Fixed issue when in some cases Dynamic Prototype
checkbox isn’t detected and collection does not switch mode to using of the game.project
's counters.
Editor
NEW: (#8072) #5476: Toggle visibility of object using shortcut
Support Ctrl + E
to toggle show/hide objects.
NEW: (#8085) #5990: Add quick help page
Added a quick help page when no files are open.
FIX: (#8107) Escape underscore in menu
Fixes an issue where ‘_’ was not shows in the Recent Files menu.