Even though development of Godot 4 is well under way, the Godot 3.x branch continues to receive updates, with the most recent full release being Godot 3.3 in April. Today we have the Beta 2 release of the Godot Game Engine with several new features, including one massive new feature, Occlusion Culling. Occlusion Culling is a way of reducing the amount of data the engine needs to deal with down to just the objects that could be potentially drawn, generally resulting in a faster 3D experience.
The Godot implementation of Occlusion Culling is done using a set of Rooms and Portals to connect them. The system is implemented by adding 4 new nodes to Godot, Room, RoomGroup, RoomManager and Portal.
From the Occlusion Culling project page the new feature is described as:
This is a mostly static system, although portals can be opened / closed at runtime, and moved.
Rooms / portals work particularly well in indoor environments, and in environments that have been sensibly made to take advantage (e.g. canyons). They don’t tend to be a good solution for general outdoor environments and open worlds, but can be made use of with some ingenuity.
There are of course several other features in Godot 3.4 Beta 2 from the Godot Engine blog:
- Animation: Add animation “reset” track feature (GH-44558).
- C#: iOS and Apple Silicon fixes (GH-49248).
- macOS Mono builds are now universal builds with support for both
x86_64
andarm64
architectures.
- macOS Mono builds are now universal builds with support for both
- Core: Make all file access 64-bit (
uint64_t
) (GH-47254).- This adds support for handling files bigger than 2.1 GiB, including on 32-bit OSes.
- Core: Add frame delta smoothing option (GH-48390).
- This option is enabled by default (
application/run/delta_smoothing
). Please report any issue.
- This option is enabled by default (
- Crypto: Add AESContext, HMACContext, RSA public keys, encryption, decryption, sign, and verify (GH-48144, GH-48869).
- Editor: Overhaul the theme editor and improve user experience (GH-49774).
- HTML5: Export as Progressive Web App (PWA) (GH-48250).
- HTML5: Implement Godot <-> JavaScript interface (GH-48691).
- Import: Implement lossless WebP encoding (GH-47854).
- Import: Backport improved glTF module with scene export support (GH-49120).
- macOS: Add GDNative Framework support, and minimal support for handling Unix symlinks (GH-46860).
- macOS: Add notarization support when exporting for macOS on a macOS host (GH-49276).
- Mesh: Options to clean/simplify convex hull generated from mesh (GH-50328).
- Particles: Add ring emitter for 3D particles (GH-47801).
- Physics: Fixing 2D moving platform logic (GH-50166).
- Physics: Various physics to 2D and 3D KinematicBody
move_and_slide
andmove_and_collide
(GH-50495). - Rendering: Rooms and portals-based occlusion culling (GH-46130).
- Extensive documentation will be available soon. In the meantime, you can read the work in progress on the godot-docs repository.
- Rendering: Fixes depth sorting of meshes with transparent textures (GH-50721).
- Rendering: Add soft shadows to the CPU lightmapper (GH-50184).
- Rendering: Combined the DOF far and DOF near passes (GH-50723).
- Rendering: Import option to split vertex buffer stream in positions and attributes (GH-46574).
- RichTextLabel: Fix auto-wrapping on CJK texts (GH-49280).
- Shaders: Add support for structs and fragment-to-light varyings (GH-48075).
- VisualScript: Improve and streamline VisualScriptFuncNodes
Call
Set
Get
(GH-50709).
You can learn more about Godot Occlusion culling and the 3.4 Beta 2 release in the video below.