Unreal Third Person Blueprints

Exploring how to get a custom character to operate as a third person view protagonist – and essentially there are four steps:

(1) Import character and animations, with at least those needed for the minium viable TPV e.g. idle, walk, run, jump.

(2) Setup an event graph blueprint

(3) Build out a state machine, using the variables exposed from the event graph to run the transition state rules for the animations.

(4) For nice smooth animation blends create a blend state map (in this example blendstate only used between walk and run animations, transitioning on character speed)

Examples below of 2 and 3 for a very simple third person blueprint. Once these factors are all working can then position camera to actor distance, angle etc.

This third person blueprint tutorial video helps, though has not been built for version 4.25 and some of the event graph functions are different and require tweaks (as per first picture below)

New Hero Steampunk Airship

steampunk airship

Some elements of 3d kitbashing have gone on to create this new hero airship for Cogwheel Chronicles. As much as I might want to create everything from scratch, I just don’t have the time at the moment.

Still, I think it looks OK rendering in Unreal and looks pretty cool in action with flapping wings and spinning rotors.

unreal Unreal

Simply staggered by this evolution coming into Unreal Engine 5:

And just as amazing is the announcement that studios pay nothing to Epic for using the unreal engine until the first $1M is earned! Another staggering fact for indie developers to mull over.

The Lumen illumination and Nanite geometry capabilities are truly 21st century game changing game development capabilities.

Some screen shots from the video:

playstation 5 tech demo
unreal engine 5 tech demo
unreal engine 5 playstation 5 tech demo

SSAO Screen Space Ambient Occlusion

I isolated the inherited SSAO contribution to the overall post processing effects and was a little underwhelmed:

Definitely some AO contribution but this type of post processing is quite expensive to compute, so thought it could get a lot better.

After a trawl of what others had achieved, a refactor of the shader produced this (based on the cry engine approach):

This I thought added a lot more, but perhaps too much on the flat surfaces, so polarised to this:

Terrain – overhangs, caves and hoops

Cogwheel Chronicles uses a typical 2D height map field to store and regenerate its terrain geometry.

This doesn’t allow such features as caves and crags, so more ‘fakery’ has now been employed with the terrain shaders.

The shaders used specifically for terrain can now also be used for additional model geometry, using the appropriate world positions (rather than geometry UVs).

This allows pre-modeled terrain features to blend seamlessly with the generated height-map based terrain.

It works reasonably well:

Channel Packing

Channel packing is extremely common in game engines these days, however was not available to Cogwheel Chronicles until now.

I’ve adopted the ‘MRA/RGB’ pattern, in that the PBR metalness texture is stored in the Red channel of the ‘packed gloss’ texture, roughness/gloss goes into the green channel and baked AO into the blue channel.

Three textures now packed into one, saving video memory during game play. PBR textures can still be authored separately, the engine can upload these and pack them appropriately on run.

cogwheel chronicles channel packing textures

cybernescence studio

Back in the day when I was a member of a prestigious business software association and discussion forum, occasionally people would share pictures of their office space just for fun. Here is a one part of a wall in the cybernescence game studio.

The steampunk lamp I built myself from an old paraffin blow torch 🙂