Just a quick post today about a very weird error I encountered while trying to package a project with Unreal 5.3; and because I got zero search hits for it on the web, I figured I’d document how I fixed it to save others in the future. Here’s the error I got while trying to package this UE project, either from the editor or the command line: LogObj: Error: LoadConfig (/Script/BlueprintGraph.

Read more →

It’s always better to drive your game’s systems from data that’s easily editable. Games require a lot of iteration, and if you can just play with settings on the fly instead of having to change code, you can try things out much faster, and everyone on the team can experiment, not just programmers. A key asset type for this in Unreal is the DataTable. You make a row struct, then fill it with whatever data you like.

Read more →

Why I Use Note Taking Apps My memory sucks. Partly that’s age, but if I’m honest, it’s never been that good. For years now, whenever I learn something useful, I make sure I put it in a searchable note taking system so that I can find it again later. Sometimes, I even blog about it, and read my own blog later to remind myself of the details 😀 But I always make sure my notes repository has a mention of it & link, so I don’t have to remember whether it’s on my blog, in one of my browser tabs or favourites, or in a 3rd party web saving system like Pocket or whatever.

Read more →

Just a quick post today about how I replaced our doorbell with a custom Zigbee button and Home Assistant, running on an old Raspberry Pi 2 I had sitting in a drawer, which pings our phones when someone presses the button, instead of ringing a regular chime. If this interests you, read on! Whyyy? Good question! Our cat Harry, who we adopted from the shelter a couple of years ago, is terrified of all humans except us.

Read more →

Do you use JetBrains IDEs like Rider? They’re pretty great; I use Rider myself daily for Unreal Engine development. In this post, I’m going to assume other JetBrains IDEs function largely the same as Rider in this respect, which I’m pretty sure they do. When I started using Rider, I was surprised to discover that, as far as I’ve seen, JetBrains have the best IDE version control tools in the business.

Read more →

Intro You can do some quite nice text effects with Unreal Engine’s UMG Rich Text Block. Coloured text, outlines, shadows, even embed images in the text. But what if you wanted to do things like this to your text: When I was looking for information on how to do this kind of animated effect, I didn’t find very much. So now I’ve figured it out, here’s the information I wish I’d been able to find.

Read more →

Intro I’ve been experimenting with UE4’s Control Rig recently, in my case in order to be able to do custom skeletal animation in level sequences - this is really handy when you want to animate something in the context of the actual level, instead of just in isolation. I’ve generally found it very useful, if a little under-documented, but that’s understandable since it’s still beta software (but as of 4.27, pretty robust).

Read more →

Sequencer and Gameplay Camera Blending UE4’s most recent tool for making level animations, cutscenes and other cinematics is called Sequencer. I only just started using it this week, and I really like it. However, I had a lot of difficulty at first with a problem I thought would be extremely common: smoothly transitioning from your normal gameplay view into a cutscene, and back out again afterwards. The default is to just jump cut to whatever camera you have in your sequence, which can be a bit jarring.

Read more →

How to add editor visualisation to unselected objects in UE4? I solved a particular problem of mine in Unreal Engine this week, which was this: How do I visualise any custom information I want at edit time (not runtime), even when objects are not selected? I’m talking about information that doesn’t come naturally from things like collision bounds, or other existing components. Custom things specific to my game that I want to see all the time as I pan over the level.

Read more →

Skyboxes are textures that you use to display distant objects and environments in your scene, so that you don’t have to render the universe to an infinite distance. They’re often pre-rendered or captured, although you can start adding layered and dynamic elements to make them fancier. Ultimately they’re an optimisation to the problem of how do you give the impression that the player is in a huge world, even though really it ends a lot closer than it looks.

Read more →