-->
And so, Godot 4.3 has been finally released. And with that, I'm also releasing the first version of the GDExtension Pack!
Or, in other words, the first addons I have ported from the pure GDScript addons, which are for Godot 3.2+, into a GDExtension, which is for Godot 4.3+!
At this point not all addons have been ported, at least yet. Some of them are in the "TODO" list, while some others are under evaluation regarding if it's actually still relevant to have a plugin for the provided functionality. Yet, there are a few additional functionality in the GDExtension over the old addons.
As usual, there is a "tutorial" set that can be found here . Full source code can be found on Github .
Happy forging!
August 15, 2024
Happy new Year!
To kick things off, I'm releasing a new Godot addon, the Radial Impulse, which adds two new nodes (one for 2D and the other for 3D). The nodes are used to apply impulses into all rigid bodies that are within their circular/spherical area. The animation bellow is from the 2D demo.
How to use and how it works, as usual, can be found here and the addon itself in this GitHub repository .
OK yes, I know, those new nodes are still for the Godot 3 branch. I'm working on the Godot 4 port of the relevant addons as GDExtension. Several of them are fully ported. However there is an issue with the UI theme system that is somewhat preventing me from kicking off the extension thing.
That said, I wish for all the best for everyone in 2024. And, happy forging!
January 3, 2024
And after several weeks without being able to update my forge... well, now we are lifting of, with Astro !
I do delve into it a little bit more about the entire thing in this newer blog post . But in short, out of the blue, Nuxt simply started to spit error messages instead of my page.
I have updated some of the Godot tutorials. The reason? Godot 4 did change a lot and the information was no longer entirely valid. Some of those tutorials now have instructions for both Godot 3 and Godot 4.
PS: If lots of new entries in your RSS reader were triggered, I'm deeply sorry for this.
October 26, 2023
New to this site is the Projects section. It's meant to be a central place to link into all my published projects, excluding any that is "tutorial reference material".
The navigation bar has been updated to link into that section.
Happy forging!
September 21, 2022
Audio playback in Godot is actually very straightforward. We add one AudioStreamPlayer
, AudioStreamPlayer2D
or AudioStreamPlayer3D
node, assign an audio stream resource then call its play()
function. However if the node is destroyed in the middle of a playback, the audio will become interrupted. This is a common case when dealing with impacting bullets, player pickups and so on.
In order to help with audio playback without having to worry about node lifetime, I created the Audio Master addon. How to use it can be found here . As usual, the addon itself can be found in this GitHub Repository .
September 15, 2022
While working in a (Godot Engine) project I ended up creating a Resource
meant to hold data. Editing its array was very clunky. But most importantly, adding a custom scripted resource into this data class was not possible. Well, it was, but the "new instance" is not filtered in Godot. That is, it display a huge list of classes derived from Resource
.
So, I decided to create an Editor Plugin meant to deal with resources of this kind, the Data Asset plugin. A preview of the plugin in the animation bellow, which showcases rearranging elements of an array of custom scripted resources:
Yet, editing numerical properties were not exactly close to the editor provided within the Inspector panel. Granted, the editor uses a Control named EditorSpinSlider
, which is not fully exposed to scripting. So, I decided to also create a Control that implements something similar to that, which is provided as the SpinSlider
. A preview of the widget:
As usual, I have a tutorial for each of the two new addons. The SpinSlider
information can be found here . As for the Data Asset, it's here .
August 15, 2022
Some time ago I decided I wanted to have a web version of the CSV to JSON converter I implemented in Godot. Shortly after, I stumbled into the fact that HTML exports are sand boxed, meaning that the FileDialog
control does not have access to the file system. Yet, we can work around this and provide means to save/load data to/from the file system. I show how in this new short tutorial .
February 11, 2022
Recently I watched a video from one of Lucy streams. In it a viewer asked the difference between _process()
and _physics_process()
in Godot.
Based on the answer I wanted to tackle the subject, so I wrote a new "Tutorial" here . It's a very short text and hopefully it should be enough to help understand when to use which.
By the way, here is Lucy's Youtube channel.
December 22, 2021