Creating terrain brushes in Blender

From Oldunreal-Wiki
Revision as of 17:29, 23 June 2022 by Skywolf (talk | contribs)
Jump to navigation Jump to search
The Blender version and settings we are using. Note: Future Blender versions should still work with this tutorial as the features we touch on aren't expected to drastically change anytime soon. If something doesn't work as described it's recommended visit the Blender Documentation.

By now it's pretty well known that Epic made the terrain for Unreal's levels using an external modeling tool. Back in those day modeling software was either really user unfriendly, prohibitively expensive or both. However nowadays Blender is the modeling tool of choice for many. With it being relatively small, light on resources (for simple scenes, highly complex scenes will naturally require more powerful hardware), versatile, highly expandable and most importantly: totally free!

This tutorial uses Blender 3.2 with the default key-mapping settings.


Introduction

As a result of Blender being powerful and versatile is it also rather complex. Its daunting UI is often criticized for being overwhelming and illogical by those that collide with the steep learning curve. This tutorial aims to solve that by giving step-by-step instructions while encouraging the reader to experiment on their own. It won't be constantly telling you exactly what buttons to press and instead links to official documentation about the tools and features used. The goal being that after following this tutorial the reader can not only make the exact kind of terrain shown here but also create different terrain and brushes for their specific mapping needs.

This tutorial assumes the reader has some basic knowledge of using Blender. Specifically being aware of the various object interaction modes, knowing how to select things using both the mouse clicks and the box/lasso select tools, being familiar with 3D navigation and basic transformations (selecting, moving, rotating and scaling). If you never touched Blender play around with these in the default scene (what Blender opens with) until you think you got the hang of them. Once you do move on to the next step.

Setting up Blender

By default Blender is designed for real-world scale modeling. Meaning that is uses real-life measuring systems rather than the artificial Unreal Units (UU) we are all familiar with. This creates problems with scaling as 1 UU is (by default) 1 Meter(!) in Blender. Furthermore Blender is by default setup for high-poly high precision modeling. Creating a very near near-clipping plane (things be be rendered very close to the camera) and a very short far-clipping plane (distant geometry will disappear quickly) to ensure a high amount of precision in the z-buffer. So just modeling at a larger scale will prove difficult by default.

Application Template

Fortunately can this be changed with a few settings to make Blender function perfectly fine in native Unreal Units. For convenience is an Application Template provided below with all these changes applied. In addition it sets the Walk Navigation settings to closely match Unreal's player scale and movement speed (hold down Shift). This allows for some very basic play testing within Blender, mostly useful to get a sense of scale of the terrain before importing. It must noted that the gravity is a set value that can't be changed. Because we are modeling in such a large scale to what Blender is normally used for does this result in the gravity appearing extremely low.

File:Blender Unreal (UE1) Mapping Template.zip

Installation

The default view when starting a new project with the Unreal (UE1) Mapping Application Template. It includes a player character and a 256*256*256 cube to aid with scale.

To install the template, click on the Blender logo in the very top left of the screen → Install Application Template → navigate to the downloaded .zip file → Install Template from File.

To use the template go to File (right of the Blender logo we just clicked) → NewUnreal (UE1) Mapping.

Notes and Usage

While most things will work as expected are the a few tips and quirks that the user might want to be aware of.

Grid Scale

By default the template will open with a 8UU grid size. This can be changed by setting Scale in the Header Region under Viewport Overlays.

The Viewport Overlays options with the Scale field highlighted.

Note that when your view is aligned on one of the axis (either using Numpad 1, 3, or 7 or the Navigation Gizmo) the grid will automatically change scale based on zoom level. Be aware of sub 1UU movements when zoomed in very close when using any of these aligned views. It's easy to fix when this happens by snapping all vertices to the grid but one should be aware of this before exporting.