Safety goggles on, people! Features and Quality-of-Life are being integrated at blinding speeds; precautions must be taken to view them head-on.Safety goggles on, people! Features and Quality-of-Life are being integrated at blinding speeds; precautions must be taken to view them head-on.

Godot 4.4 Dev 6 - CollisionShape3D Debug Color Customization and More

10 min read

Safety goggles on, people! Features and Quality-of-Life are being integrated at blinding speeds; precautions must be taken to view them head-on. Once secure, we can dive into what’s shaping up to be one of the final development snapshots before 4.4-beta builds roll out!

\ Keep in mind that while we try to make sure each dev snapshot is stable enough for general testing, this is by definition a pre-release piece of software. Be sure to make frequent backups, or use a version control system such as Git, to preserve your projects in case of corruption or data loss.

\ Jump to the Downloads section, and give it a spin right now, or continue reading to learn more about improvements in this release. You can also try the Web editor, XR editor, or the Android editor for this release (join the Android editor testing group to get access to pre-release builds).


The original cover illustration is from Malware, an installation simulator where players must navigate a minefield of circa-1999 malware! It is developed by Odd Games. You can purchase the game on Steam.

Highlights

In case you missed them, see the 4.4 dev 1, 4.4 dev 2, 4.4 dev 3, 4.4 dev 4, and 4.4 dev 5 release notes for an overview of some key features which were already in those snapshots, and are therefore still available for testing in dev 6.

\ Here are highlights of a few new features in dev 6 that you might find particularly exciting!

Camera3D preview in inspector

Previously, adjusting the view of a Camera3D in a scene could be a chore to handle. It required activating the camera you wanted to preview, and then reverting it back if it wasn’t the main camera. You could pin a preview of a camera in a dedicated viewport, but that meant reducing the real-estate of your main viewport.

\ Now, with Haoyu Qiu’s feature (GH-90778), every selected 3D camera shows a preview inside the inspector. No switching cameras needed to preview anymore.

CollisionShape3D debug color customization

3D collision shapes now have parity with their 2D counterparts with the newly added debug_color and debug_fill properties, which lets you customize the appearance of debug collision shapes in the editor, or at runtime if “Visible Collision Shapes” is enabled in the Debug menu. Thanks to first-time contributor BattyBovine for implementing this much-requested proposal (GH-90644).

Replace internal CSG implementation with Manifold library

Godot added support for CSG, or Constructive Solid Geometry, back in 3.1. This is a great tool for rapidly prototyping level geometry or even simple props and characters by combining 3D primitives with various boolean operations (union, intersection, subtraction).

\ Our implementation suffered from a number of bugs and stability issues, with no dedicated maintainer to tackle them. Thankfully, a great open source library has been released since then which can be used as a well-maintained replacement for our CSG internals: Emmett Lalish’s Manifold.

\ Ernest Lee did an amazing work implementing Manifold in Godot, with help from Emmett to ensure that the library fits our requirements (GH-94321). As this is a fairly big change to how Godot’s CSG works internally (but with minimal impact on the user API), you might notice differences in your projects using CSG. Please report any change that appears to have a negative impact on your usage.

Runtime WAV file loading

First-time contributor cherry implemented the long-requested support for runtime loading of WAV files (GH-93831). This adds parity with OGG Vorbis audio tracks, and will be a welcome addition for users who want to load user-generated content at runtime (including non-game audio applications).

Extend Curve to allow for domains outside of [0, 1]

Have you ever wished that you could edit a Curve in a domain that goes beyond the normalized [0, 1] range? ocean finally got their implementation of this feature merged (GH-67857), which should give you greater flexibility in how to map your functions and data to Godot’s ubiquitous Curve resource.

Temporary file and directory utilities

Tool creators, Adam Scott cooked a little something that could be interesting for you. A brand new API lets you create and dispose of temporary files. Handy if you need to write content on disk, but without worrying about polluting user data. These temporary files and directories even dispose of themselves after use by default. For more information, see (GH-98397).

And more!

There are too many exciting changes to list them all here, but here’s a curated selection:

  • 2D: Change how multi selection scale is applied to canvas item (GH-99506).
  • 2D: Ensure primitive meshes are created before connected to changed signal (GH-99740).
  • 3D: Add ShadowCastingSetting to MeshLibrary / GridMap items (GH-85443).
  • 3D: Add CollisionShape3D custom debug colors (GH-90644).
  • 3D: Add Camera3D preview in Inspector (GH-90778).
  • 3D: Allow tool scripts to alter transform of Node3DEditorViewport camera (GH-93503).
  • 3D: Fix mesh corruption of CSG by using elalish/manifold (GH-94321).
  • 3D: Adjust VoxelGI gizmo opacity (GH-99969).
  • Animation: Add persistent folding to Animation Library Editor (GH-86481).
  • Animation: Fix crash when re-importing model with AnimationPlayer panel open and node selected (GH-95795).
  • Animation: Add RetargetModifier3D for realtime retarget to keep original rest (GH-97824).
  • Animation: Prioritize proximity to green arrow when selecting overlapping transitions in AnimationNodeStateMachine (GH-98401).
  • Audio: Add runtime file loading to AudioStreamWAV (GH-93831).
  • Audio: Fix AudioStreamPlayer2D/3D’s get_playback_position returning 0 right after calling seek (GH-99759).
  • C#: Preserve no-hint behavior for unmarshallable generics in dictionaries (GH-99485).
  • Core: RegEx: Fix handling of unset/unknown capture groups (GH-73973).
  • Core: FileAccess: Return error codes from store_* methods (GH-78289).
  • Core: Avoid duplicating signals from scene instances into packed scenes (GH-97303).
  • Core: Make loading translations from threads safe (GH-99527).
  • Core: Do not generate *.uid files for JSON, certificates, and translations (GH-99540).
  • Core: Convert line breaks to \n and strip line break from the end of string returned by OS::read_string_from_stdin/OS::get_stdin_string (GH-99542).
  • Core: Fix OS::has_feature() skipping custom features (GH-99864).
  • Core: Add temp utilities (alias OS::get_temp_dir(), FileAccess::create_temp(), and DirAccess::create_temp()) (GH-98397).
  • Editor: Extend Curve to allow for domains outside of [0, 1] (GH-67857).
  • Editor: Implement zooming and panning in the profiler (GH-76055).
  • Editor: Fix jumping to editor help does not scroll correctly sometimes (GH-96449).
  • Editor: Show file names in remove files confirmation dialog (GH-98539).
  • Editor: Add editor setting to stop the bottom panel from switching to the Stack Trace (GH-98657).
  • Editor: Don’t tint editor bottom panel icons when hovered or pressed (GH-98765).
  • Editor: Add copy button to toast notification (GH-98778).
  • Editor: Enable editing of controls inside viewports in editor (GH-99401).
  • Editor: Improve appearance of external links in built-in docs (GH-99480).
  • Editor: Make the alt selection menu available for all modes (GH-99795).
  • Export: Ensure excluded GDExtension files are not included in extension_list.cfg (GH-97216).
  • Export: Write text server data from memory, instead of using temporary file (GH-99164).
  • GDExtension: Register Engine, OS, ProjectSettings, and Time singletons in time for INITIZATION_LEVEL_CORE (GH-98862).
  • GDExtension: Support extension icons in ScriptCreateDialog (GH-98914).
  • GDScript: Fix crash when division by zero/modulo by zero happen on vectors (GH-95172).
  • GDScript: Improve GDScript autocompletion for methods (GH-99102).
  • GDScript: LSP: Fix spec violations that break the VSCode outline (GH-99295).
  • GDScript: Core: Fix built-in enum constant bindings (GH-99424).
  • GDScript: Support tracking multiple analyzer and runtime errors in tests (GH-99490).
  • GUI: Add a Viewport method to get automatically computed 2D stretch transform (GH-80965).
  • GUI: Make FileDialog filtering case insensitive (GH-85789).
  • GUI: Make TextEdit autocompletion replace word unless Shift is held (GH-90723).
  • GUI: Reshape and update button on oversampling change (GH-95511).
  • GUI: Prevent infinite recursion in first _draw (GH-97328).
  • GUI: Add theme type variations for secondary Trees and ItemLists (GH-97884).
  • GUI: RTL: Add support for vertical alignment (GH-97963).
  • GUI: Introduce a SubViewportContainer config for drag-and-drop target locations (GH-99270, GH-99691).
  • GUI: Fix SVG font rendering (GH-99459).
  • GUI: Add tooltip support to meta/url tag (GH-99481).
  • Import: Generate thumbnails on imported scenes (GH-96544).
  • Import: Blend file import: Don’t keep original files when not unpacking them (GH-96782).
  • Import: Betsy: Add BC3 and BC5 support (GH-99537).
  • Multiplayer: Fix UID support in MultiplayerSpawner (GH-99712).
  • Navigation: Improve NavMeshQueries3D::polygons_get_closest_point_info performance (GH-97928).
  • Navigation: Make NavMap objects request sync only on demand (GH-99646).
  • Network: Add half precision floating point support to StreamPeer and FileAccess (GH-97716).
  • Network: Allow disabling UPNP implementation on the Web (GH-99597).
  • Physics: Fix GodotSpace3D::test_body_motion() not setting local_shape (GH-99901).
  • Porting: Android: Fix immersive mode issue (GH-98917).
  • Porting: macOS: Change the shortcut for Align Transform with View (GH-94026).
  • Porting: Unix: Don’t create world-writable files when safe save is enabled (GH-96399).
  • Porting: Windows: Fix restoring fullscreen window (GH-98631).
  • Porting: Windows: Fix Inspector tooltips blinking on Windows (GH-99988).
  • Porting: Windows: Improve frame pacing by busy waiting as needed (GH-99833).
  • Porting: Implement DisplayServer.beep (GH-99371).
  • Rendering: Optimize RenderForwardClustered::_setup_render_pass_uniform_set by reducing Vector allocations (GH-94368).
  • Rendering: Deprecate the pointless unsafe threading model for rendering (GH-98383).
  • Rendering: Automatically resolve initial and final action for draw lists (GH-98670).
  • Rendering: Fix occlusion culling for double builds by enforcing float conversion for Embree (GH-98770).
  • Rendering: Mask out shadows on CanvasItems that don’t have a matching item_shadow_mask (GH-98835).
  • Rendering: Add lightmap bake cancelling (GH-99483).
  • Rendering: Add VoxelGI bake cancelling and progress UI improvement (GH-99562).
  • Rendering: Fix ReflectionProbe AABB (GH-99802).
  • Shaders: Allow SCREEN_UV to be used in light function of spatial shader (GH-94981).
  • Shaders: VisualShader: Add LinearToSRGB and SRGBToLinear to ColorFunc node (GH-97388).

Changelog

114 contributors submitted 259 improvements for this new snapshot. See our interactive changelog for the complete list of changes since the previous 4.4-dev5 snapshot.

\ This release is built from commit 1f47e4c4e.

Downloads

Download Godot 4.4 dev6

\ Standard build includes support for GDScript and GDExtension.

\ .NET build (marked as mono) includes support for C#, as well as GDScript and GDExtension.

  • See also C# platform support.

\ While engine maintainers try their best to ensure that each preview snapshot and release candidate is stable, this is by definition a pre-release piece of software. Be sure to make frequent backups, or use a version control system such as Git, to preserve your projects in case of corruption or data loss.

Known issues

With every release we accept that there are going to be various issues, which have already been reported but haven’t been fixed yet. See the GitHub issue tracker for a complete list of known bugs.

\ Here are some known regressions introduced in this snapshot:

  • Occlusion culling randomly occluding things completely in the open (GH-10032).
  • A pull request is already open to fix this in the next dev snapshot (GH-100060).
  • Error “Manifold creation from mesh failed” with Plane and Quad shapes, which do not get rendered (GH-100014).
  • Planes and Quads cannot be used with CSG, and just seemed to be usable previously. We’ll improve the usability so they cannot be selected for CSGMesh3D. Instead, use MeshInstance3D to place Planes and Quads.

Bug reports

As a tester, we encourage you to open bug reports if you experience issues with this release. Please check the existing issues on GitHub first, using the search function with relevant keywords, to ensure that the bug you experience is not already known.

\ In particular, any change that would cause a regression in your projects is very important to report (e.g. if something that worked fine in previous 4.x releases, but no longer works in this snapshot).

Support

Godot is a non-profit, open source game engine developed by hundreds of contributors on their free time, as well as a handful of part or full-time developers hired thanks to generous donations from the Godot community. A big thank you to everyone who has contributed their time or their financial support to the project!

\ If you’d like to support the project financially and help us secure our future hires, you can do so using the Godot Development Fund platform managed by Godot Foundation. There are also several alternative ways to donate which you may find more suitable.


By Thaddeus Crews

\ Also published here

\ Photo by Robert Katzki on Unsplash

Market Opportunity
Moonveil Logo
Moonveil Price(MORE)
$0,0007904
$0,0007904$0,0007904
-0,60%
USD
Moonveil (MORE) Live Price Chart
Disclaimer: The articles reposted on this site are sourced from public platforms and are provided for informational purposes only. They do not necessarily reflect the views of MEXC. All rights remain with the original authors. If you believe any content infringes on third-party rights, please contact [email protected] for removal. MEXC makes no guarantees regarding the accuracy, completeness, or timeliness of the content and is not responsible for any actions taken based on the information provided. The content does not constitute financial, legal, or other professional advice, nor should it be considered a recommendation or endorsement by MEXC.

You May Also Like

The Role of Blockchain in Building Safer Web3 Gaming Ecosystems

The Role of Blockchain in Building Safer Web3 Gaming Ecosystems

The gaming industry is in the midst of a historic shift, driven by the rise of Web3. Unlike traditional games, where developers and publishers control assets and dictate in-game economies, Web3 gaming empowers players with ownership and influence. Built on blockchain technology, these ecosystems are decentralized by design, enabling true digital asset ownership, transparent economies, and a future where players help shape the games they play. However, as Web3 gaming grows, security becomes a focal point. The range of security concerns, from hacking to asset theft to vulnerabilities in smart contracts, is a significant issue that will undermine or erode trust in this ecosystem, limiting or stopping adoption. Blockchain technology could be used to create security processes around secure, transparent, and fair Web3 gaming ecosystems. We will explore how security is increasing within gaming ecosystems, which challenges are being overcome, and what the future of security looks like. Why is Security Important in Web3 Gaming? Web3 gaming differs from traditional gaming in that players engage with both the game and assets with real value attached. Players own in-game assets that exist as tokens or NFTs (Non-Fungible Tokens), and can trade and sell them. These game assets usually represent significant financial value, meaning security failure could represent real monetary loss. In essence, without security, the promises of owning “something” in Web3, decentralized economies within games, and all that comes with the term “fair” gameplay can easily be eroded by fraud, hacking, and exploitation. This is precisely why the uniqueness of blockchain should be emphasized in securing Web3 gaming. How Blockchain Ensures Security in Web3 Gaming?
  1. Immutable Ownership of Assets Blockchain records can be manipulated by anyone. If a player owns a sword, skin, or plot of land as an NFT, it is verifiably in their ownership, and it cannot be altered or deleted by the developer or even hacked. This has created a proven track record of ownership, providing control back to the players, unlike any centralised gaming platform where assets can be revoked.
  2. Decentralized Infrastructure Blockchain networks also have a distributed architecture where game data is stored in a worldwide network of nodes, making them much less susceptible to centralised points of failure and attacks. This decentralised approach makes it exponentially more difficult to hijack systems or even shut off the game’s economy.
  3. Secure Transactions with Cryptography Whether a player buys an NFT or trades their in-game tokens for other items or tokens, the transactions are enforced by cryptographic algorithms, ensuring secure, verifiable, and irreversible transactions and eliminating the risks of double-spending or fraudulent trades.
  4. Smart Contract Automation Smart contracts automate the enforcement of game rules and players’ economic exchanges for the developer, eliminating the need for intermediaries or middlemen, and trust for the developer. For example, if a player completes a quest that promises a reward, the smart contract will execute and distribute what was promised.
  5. Anti-Cheating and Fair Gameplay The naturally transparent nature of blockchain makes it extremely simple for anyone to examine a specific instance of gameplay and verify the economic outcomes from that play. Furthermore, multi-player games that enforce smart contracts on things like loot sharing or win sharing can automate and measure trustlessness and avoid cheating, manipulations, and fraud by developers.
  6. Cross-Platform Security Many Web3 games feature asset interoperability across platforms. This interoperability is made viable by blockchain, which guarantees ownership is maintained whenever assets transition from one game or marketplace to another, thereby offering protection to players who rely on transfers for security against fraud. Key Security Dangers in Web3 Gaming Although blockchain provides sound first principles of security, the Web3 gaming ecosystem is susceptible to threats. Some of the most serious threats include:
Smart Contract Vulnerabilities: Smart contracts that are poorly written or lack auditing will leave openings for exploitation and thereby result in asset loss. Phishing Attacks: Unintentionally exposing or revealing private keys or signing transactions that are not possible to reverse, under the assumption they were genuine transaction requests. Bridge Hacks: Cross-chain bridges, which allow players to move their assets between their respective blockchains, continually face hacks, requiring vigilance from players and developers. Scams and Rug Pulls: Rug pulls occur when a game project raises money and leaves, leaving player assets worthless. Regulatory Ambiguity: Global regulations remain unclear; risks exist for players and developers alike. While blockchain alone won’t resolve every issue, it remediates the responsibility of the first principles, more so when joined by processes such as auditing, education, and the right governance, which can improve their contribution to the security landscapes in game ecosystems. Real Life Examples of Blockchain Security in Web3 Gaming Axie Infinity (Ronin Hack): The Axie Infinity game and several projects suffered one of the biggest hacks thus far on its Ronin bridge; however, it demonstrated the effectiveness of multi-sig security and the effective utilization of decentralization. The industry benefited through learning and reflection, thus, as projects have implemented changes to reduce the risks of future hacks or misappropriation. Immutable X: This Ethereum scaling solution aims to ensure secure NFT transactions for gaming, allowing players to trade an asset without the burden of exorbitant fees and fears of being a victim of fraud. Enjin: Enjin is providing a trusted infrastructure for Web3 games, offering secure NFT creation and transfer while reiterating that ownership and an asset securely belong to the player. These examples indubitably illustrate that despite challenges to overcome, blockchain remains the foundational layer on which to build more secure Web3 gaming environments. Benefits of Blockchain Security for Players and Developers For Players: Confidence in true ownership of assets Transparency in in-game economies Protection against nefarious trades/scams For Developers: More trust between players and the platform Less reliance on centralized infrastructure Ability to attract wealth and players based on provable fairness By incorporating blockchain security within the mechanics of game design, developers can create and enforce resilient ecosystems where players feel reassured in investing time, money, and ownership within virtual worlds. The Future of Secure Web3 Gaming Ecosystems As the wisdom of blockchain technology and industry knowledge improves, the future for secure Web3 gaming looks bright. New growing trends include: Zero-Knowledge Proofs (ZKPs): A new wave of protocols that enable private transactions and secure smart contracts while managing user privacy with an element of transparency. Decentralized Identity Solutions (DID): Helping players control their identities and decrease account theft risks. AI-Enhanced Security: Identifying irregularities in user interactions by sampling pattern anomalies to avert hacks and fraud by time-stamping critical events. Interoperable Security Standards: Allowing secured and seamless asset transfers across blockchains and games. With these innovations, blockchain will not only secure gaming assets but also enhance the overall trust and longevity of Web3 gaming ecosystems. Conclusion Blockchain is more than a buzzword in Web3; it is the only way to host security, fairness, and transparency. With blockchain, players confirm immutable ownership of digital assets, there is a decentralized infrastructure, and finally, it supports smart contracts to automate code that protects players and developers from the challenges of digital economies. The threats, vulnerabilities, and scams that come from smart contracts still persist, but the industry is maturing with better security practices, cross-chain solutions, and increased formal cryptographic tools. In the coming years, blockchain will remain the base to digital economies and drive Web3 gaming environments that allow players to safely own, trade, and enjoy their digital experiences free from fraud and exploitation. While blockchain and gaming alone entertain, we will usher in an era of secure digital worlds where trust complements innovation. The Role of Blockchain in Building Safer Web3 Gaming Ecosystems was originally published in Coinmonks on Medium, where people are continuing the conversation by highlighting and responding to this story
Share
Medium2025/09/18 14:40
Vitalik Buterin Challenges Ethereum’s Layer 2 Paradigm

Vitalik Buterin Challenges Ethereum’s Layer 2 Paradigm

Vitalik Buterin challenges the role of layer 2 solutions in Ethereum's ecosystem. Layer 2's slow progress and Ethereum’s L1 scaling impact future strategies.
Share
Coinstats2026/02/04 04:08
USAA Names Dan Griffiths Chief Information Officer to Drive Secure, Simplified Digital Member Experiences

USAA Names Dan Griffiths Chief Information Officer to Drive Secure, Simplified Digital Member Experiences

SAN ANTONIO–(BUSINESS WIRE)–USAA today announced the appointment of Dan Griffiths as Chief Information Officer, effective February 5, 2026. A proven financial‑services
Share
AI Journal2026/02/04 04:15