How to scale a HDRI in Blender
Scaling a HDRI requires the same node setup as rotating a HDRI in Blender: You can scale on both other axis as well to expand the HDRI horizontally and vertically, but overall scale is achieved just with the Y axis.
Scaling a HDRI requires the same node setup as rotating a HDRI in Blender: You can scale on both other axis as well to expand the HDRI horizontally and vertically, but overall scale is achieved just with the Y axis.
Hexagon has some nice sculpting tools built-in, but it’s impossible to see how they perform out of the box due to the brush preview that seems to get drawn hundreds of times in the process, obscuring our object (see above). Thankfully there’s an easy trick to disable this under Now you can use the inflate, …
Blender has this helpful/annoying feature that any user interface customisations are stored with a file. This means that any window and workspace changes are saved with the .blend file, and this also means that if someone shares such a file with you, the UI may look completely different to what you’re used to. I’ve seen …
Blender has a neat way to transfer all vertex groups from one object to another. In this example I have a prepared pair of trousers on the left with vertex groups, and another pair without any groups. To transfer, I select the target object first (the one without groups), then SHIFT select the source object …
In this article I’ll show you how to bake out a Normal Map from details that have been sculpted in ZBrush. We’ll use this map to apply the high-res details to an object in Daz Studio for this example, but it will work with any target application. Typically we have a low-ish resolution object that …
Transpose is an old-skool tool in ZBrush that can be used to pose characters and move parts of objects. It used to be insanely difficult to comprehend (like everything in ZBrush), but when used together with masking, what you can accomplish is quite remarkable. Blender has a similar tool called the Pose Brush, which is …
This has been puzzling me for a while: how do we tell ZBrush to create Polygroups if we import an OBJ that already has material zones? Turns out the Polygroups menu is not where we need to go to make that change. Instead, head over to Preferences – ImportExport and enable Import Mat as Groups. …
We can use a custom material on our Post Process volume to adjust the look and feel of our scenes. Better yet, we can access those properties as parameters and drive changes from Blueprint. Let’s see how to make it happen! First we’ll need to add a Post Process Volume to our level. By default …
Unreal Engine has two handy functions called Get Horizontal Distance To and Get Vertical Distance To. These can be used to see if an actor is in range of something else. Here’s a quick example on how to use them. Imagine a drone that we shoot from a distance, and a blast radius that would …
UE5 has changed some of the menu options that let us package a project for distribution. In UE4 we could find these options under the File Menu, but they’re gone. We now have a brand new entry under the Platforms button at the top. Under Binary Configuration we can now conveniently pick shipping, debug or …
Storing values between game sessions can be done with the Save Game object in Unreal Engine. Much like with other objects, we create a custom subclass of it, give it variables that we want it to remember, then populate those before the game ends (and retrieve from it when our game begins). Let me show …
ZBrush has an overwhelming amount of brushes available, but many are just variations of things artists have created over time. Typically we don’t need to use more than a handful, and as such it might be useful to switch between them faster than using the default key sequences (like BST or BMV). Many users prefer …
I’ve just tried ChatGPT for the first time and though I’d share its output with you. The prompt was “write a short story about an ice cream shop in the desert”, and what I got back was beyond my imagination. It simply blew me away, and that’s after a single use. I’ve added a Midjourney …
I’ve often wondered how these “endless runner” type games are made under the hood. Julia and her team have recently released a project like that called Dash and Splat that was made in Core, and I wondered if I can make this work in Unreal Engine. After some research and tinkering, here’s one way to …
Sometimes I use the option to open a new window when preview playing my project in Unreal Engine. That way I can still keep an eye on other goings on in the editor while watching the action. The option comes up on the little three dots menu next to the play button. The new window …
Sometimes it’s the simple things that catch you out, like quick references. Say you wanted to access a property on your animation blueprint for something you’re doing in your player character. I couldn’t remember how to do this, so I thought I’d best make a note of it. Here’s how we can do that: This …
When a character dies, we can play a death animation either as a montage, or via the animation blueprint. In this quick tip I’ll explain the latter principle. We typically have a boolean (like “is dead”) that checks if the character has died, and it’s true, we’ll transition to a new state in our state …
I have a simple class that spawns x amount of enemy characters into my world, but by default they all use the same skeletal mesh. I wanted Unreal Engine to use a different mesh from a random pool of characters. I’ve used an array for this, create a random integer not larger than the array, …
Typically Animation Blueprints need access to the forward speed of your character. This can be done in a few different ways, and I thought I’d compile a list of options for every eventuality. If you know other approaches, please let me know and I’ll add them here. In your Animation Blueprint The easiest way is …
I’ve been dissecting an old project of mine and couldn’t remember how the projectiles I was shooting happened to magically fly away when they were spawned. They seemed to have an initial velocity or inertia in the forward direction, yet nothing in my Blueprint was causing this. Then I figured it out: we had added …
In a previous article I’ve explained how to trigger an animation with a timeline node. I thought it might be nice to see a different approach to the same problem, so in this article I’ll show you how to do this with a Level Sequence. The concept allows more flexibility on complex animations. In principle …
I was trying to implement an Aim Offset the other day and followed a particularly terrible tutorial on the EPIC site that didn’t work out at all. This tends to happen when we try to do something that’s beyond our understanding. One part in particular left me clueless, which is the process of editing animation …
A few years ago I’ve described how to rotate an actor towards a location with the use of the Lerp node. This thing can interpolate two float values and as such is a very multi-purpose function. I’ve just found out that Unreal Engine has a dedicated “rotation interpolator” node called Rinterp. It takes two rotation …
Animation Montages can be inserted into running animations when we feel something else needs to happen before the previous animation can continue. A good example is weapon recoil that happens as a result of firing a bullet: rather than switching to a completely different animation, we just cut to the montage for a moment before …
In a previous article I’ve explained how to put a gun into your character’s hand using the Attach Component to Component function. This works great if the component in question is a static or skeletal mesh, but it does not work for another blueprint class. Say you had a weapon and it has functionality, there’s …
Blend Spaces can mix animations together depending on value input. This can be used when say your game pad input determines how fast your character can walk, so that an idle animation is blended together with a walking forward animation. That way there’s no pop between each animation. Let’s take a look how to setup …
Unreal Engine 5 offers an exciting way to share animations from UE4 skeletons on the new UE5 skeletons. This works by way of a pre-configured IK Rig and Retargeter specifically made for this purpose, and an export option so that we’ll end up with a set of new animations that are ready to be used …
I’ve been meaning to make a note about the “attach gun” part, because I always forget how to do this. It’s relatively simple when you know, but not… well when you don’t. Let’s fix that! This procedure can also be used to attach other things besides guns into the right places, such as hair and …
The retargeting process has completely changed in Unreal Engine 5. It appears we can now use a system of IK chains that make animations from one skeleton usable on another by way of an IK Rig and IK Retargeter. It took me a while to comprehend this, but I’ve successfully managed to use this system …
Reacting to user input was always a little naff in Unreal Engine: define an input, then build a rather complex graph with booleans around it to see if a key is pressed or released, all of which using a section of the Project Settings to map the actual input sources and axis. It felt a …