Monday, 23 July 2018

Why Godot 3.1 Is Something To Be Excited About

So we got Godot 3.0 a few months back and this has proven to be a massive upgrade to the engine, I mean jeez Godot 2.1 feels awful, clunky and awkward in comparison.

However, we're about to get a new version of Godot 3.0, which as you might have guessed is named "Godot 3.1". This version is, in my opinion, at a similar hype-level to Godot 3.0, when that was just about to be released.

One of - if not THE - biggest reason why I think Godot 3.1 is gonna change things is the AnimationPlayer node. Currently, the AnimationPlayer involves putting keyframable properties into a timeline, each represented by little dots. These can be interpolated continuously, linearly, cubicly or not interpolated at all, and just represent discrete state changes.

This works pretty well and I love the AnimationPlayer node as it is, since it's a really intuitive way to change properties over time. However, it's about to get a hell of a lot better.

Firstly, you can put Bezier curves directly into the animation. This is awesome since it means that you no longer have to rely on messing around with cubic functions, you can directly control the Bezier curve for pretty much any numerical value. As it should do, this makes animations a LOT easier.

Additionally, you can now use AnimationPlayers to set frames of Sprites. This is also pretty cool since it even gives you a lovely preview of the frame you're placing at that specific point in time. This means that you can much more intuitively create sprite animations with potentially varying framerates for each frame, if for instance you just wanted to place the keyframes down and work out the interpolation frames at a later date for the sake of prototyping.

Also, the AnimationPlayer will feature DAW-like audio processing(with preview waveforms and everything), capture mode, track copying/pasting, visual method selection for callback tracks, and probably more stuff but I can't dedicate this entire video to the new AnimationPlayer node.

So what else is there in 3.1? Changes to KinematicBody nodes, which are going to be awesome. The first of which is "snapping", which involves sticking a character to the ground as they move along slopes and things, so that momentum won't launch them off as they get to the top.

Also, some changes to how RayCasts work with KinematicBodys, which allows for some tricks to make the player movement speed constant when moving up and down slopes.

Also, something which is fairly relevant to mobile developers and people with terrible computers is the advent of a new GLES 2.0 back-end. This means that people using computers that do not yet support GLES 3.0 will be able to use the engine again, and also more mobile phones will be compatible with the engine.

The engine will also support exporting with Mono and C# and all that jazz better, but another big one that I'm looking forward to is the optional GDScript typing. This means that finally we can cast a function or a variable to a certain datatype without being FORCED to do so. This makes things clearer for those of us who are fans of static typing, but doesn't upset anybody who prefers dynamic typing. Everyone wins!

There's also the visual shader editor, which took a brief vacation in Godot 3.0 and is now back and better than ever. It's more intuitive, things that can be done automatically now ARE done automatically, and it's a very nice way to interface with shaders.

Also, something which I don't quite understand is the new AnimationTree node and state machines that go along with it. I don't QUITE understand how to set this up but from what I can understand, this looks really useful- especially for things like AI or player controls, and the blend spaces look awesome for inverse kinematics, colour shifting and probably a hell of a lot more.

There are probably a lot more relatively small things that I'm missing out here, but that's the jist of it. I'm seriously looking forward to Godot 3.1 and I think it'll change my workflow for the better.

Thanks for watching, and stay tuned for more videos about the Godot Engine!

No comments :

Post a comment