Importing to the Content Library
Importing content is a much less technical and involved process than preparing and exporting your assets. A few options are of particular interest if you’re working with visualization data.
You have a few simple ways to initiate an import:
Drag-and-drop assets from your file browser into the Content Browser. You can drag multiple files, even entire directories into the Content Browser to import.
Right-click in the Content Browser and select Import.
Use the prominent Import button in the Content Browser.
Auto import assets by defining a folder to watch and a destination directory in your project.
Depending on what type of file you are importing, UE4 presents you with a different set of import options.
Mesh Import Options
The options you choose will vary slightly depending on your specific needs, but the following will serve you well most of the time (see Figure 3.7).
Figure 3.7 Suggested FBX import settings for Static Meshes
Auto Generate Collision
I do not recommend using the Auto Generate Collision option for most Meshes. This is a legacy system and produces bad results for content that isn’t specifically authored for it.
You should make your own collision (either in your 3D application or in the Editor by placing Primitives), rely on per-polygon collision (slow on high-poly Meshes), or use the Convex Decomposition Collision generation in the Editor.
Generate Lightmap UVs
I recommend using the Generate Lightmap UVs option and forgoing creating your own Lightmap channel. Rather, you should focus on making your base UV channel clean and allowing the Editor to work its magic on your content.
Import Materials and Textures
Usually, I leave Import Materials and Textures on because having a head start on creating and assigning materials and getting the various textures that have been applied to be imported is very convenient and offers a good starting point for building and assigning materials later.
If you’re not careful, however, this option can cause a huge mess. To avoid this, you should ensure your materials are well-assigned in your 3D application before exporting. You can also use the Material Instance assignment system to create Material Instances rather than Materials. This is fantastic for those with established UE4 workflows and Material systems, but can be too complex for beginners.
Transform Vertex to Absolute
When the Transform Vertex to Absolute option is true, UE4 will replace the authored pivot point with one at the scene’s 0,0,0. If false, the Mesh will use the authored pivot point. As mentioned in the earlier section “Preparing Geometry for UE4,” this setting can be a huge time saver for placing and maintaining your Architecture Meshes.
When you import textures, you aren’t presented with import options; however, you should ensure that your textures have the proper flags set. This can have a dramatic effect on the performance and visual fidelity of your projects.
After importing, open the Texture Editor by double-clicking a Texture asset in the Content Browser. The following settings are of the most importance:
Texture Group: Most of your textures can simply be left in the World Group. Normal Maps, HDR Images, UI Images, and other specialty textures like LUTs and vector maps should be set to their appropriate groups. This sets many internal flags to ensure these textures are read and display correctly.
Compression Settings: Setting the Texture Group will often correctly set the Compression Settings; often it won’t. Most textures use the Default setting. Normal maps should always use the normal map setting. UI textures should be set to the User Interface setting to allow proper alpha blending and scaling.
sRGB: The sRGB flag should be true for almost all textures that contain color information. This tells the rendering engine to gamma adjust this texture to display accurately in the scene (UE4 uses a linear rendering pipeline and requires textures to be gamma corrected to match the linear colorspace). Textures used as masks or other “data” maps like normal maps and vector maps should be set to false to ensure the data is read accurately without having a gamma curve applied to it.