Anvil Welcome!

int main(int argc, char* argv[])
{
   std::cout << "Hello and welcome to my forge!" << std::endl;
   return 0;
}

In here you will find (programming) tutorials with a focus towards game development. Occasionally some content unrelated to game dev might popup, but still about programming.

Please feel free to browse all of the available tutorials.

Sometimes I might talk/ramble/rant about something (still related to programming/development). Because those are not exactly tutorials I have created the blog section.

If you want to see some of the projects that I have released, those can be found here.

To contact me or to know a tiny bit about me, there is the contact section. It also describes a little bit of how this site was built.

While bellow you will find a list of the latest site news, you can see the complete list here.

Most recent news

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:

Result

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