Static Meshes vs Textures vs Materials?


I’m super new to UE4 and 3D-modelling and all the terms that comes with it. So please have patience with me.

I’m currently trying to understand static meshes and their uses. But the thing that confuses me now is that what is what in terms of meshes, textures and materials?

Whenever I look at a video tutorial and they import static meshes, those meshes are already texturized and have a material applied to them. So when do one use the materials in UE if the meshes, that are created outside of UE, are already having materials on them?

So far I’ve only used materials to “paint” bushes, which I know is wrong, but hey - I’m just messing around so far; thus trying to learn this static mesh-thingy. Anyhow, using materials on brushes is probably the wrong way to use them, so when to use materials then?

Finally, what are textures? Are textures what gives the material it’s shape?

Meshes are the actual geometry, they require a material to define what the surface looks like (color, reflectivity, etc.) Textures are just image files that are used within the material, so you could have an image that you make in Photoshop that you plug into a material that gets applied to a mesh. The Mesh uses something called UVW mapping, which is where the 3D model has a set of coordinates where it is flattened out so that it can use a 2D image as a texture, UVW is simply a way to refer to texturing coordinates (XYZ = UVW).

In a 3D program like Blender/Maya/3ds Max they each have their own way of making materials and applying them to a 3D mesh. Usually each program has a very simple type of material that has basic features like color and if you use those basic materials on your 3D model then when you export to UE4 it can import those materials.


Ninja’d? That was like 30 minutes later lol

Material Vs. Shader = Material is like the user interface for a shader

Thanks guys! I’m not yet sure I understood this 100 % but hopefully I’ll figure it out soon enough. Started with UE4 this Monday so… Yeah… :stuck_out_tongue: Been working in photoshop for years, but 3D-modelling opened up a whole new ball game in terms of… well terms and software logic.

Anyhow… So basically what you’re saying is, that a mesh could be un-colored and un-texturized when imported to UE4 and then get a material added afterwards? E.g. I make a mesh in blender, imports that to UE and then add a stock material (from the starter package) to the mesh?

But if such is the case, why are so many meshes in tutorials already “painted”?

Right, if you import a mesh to UE4 and it doesn’t have a material, or if you have the import option set not to import materials then it will end up in UE4 with no material applied and will just have a gray checker pattern. You will then have a single material slot for that mesh. If there’s a mesh in a tutorial that already has a material and textures applied, then they set things up correctly in their 3D program so that it will export the material to UE4. Not all 3D programs can export the mesh with the materials, sometimes they can only export the mesh.

Like I was talking about before though, since a mesh is 3D and an image is 2D you need UVW coordinates set up that flatten the mesh so that it knows how to map the texture to the mesh, so if you import a mesh into UE4 and you haven’t set up your UV coordinates, then it probably won’t look good because it won’t get the texture positioned right on the mesh.
For basic solid colors, it’s OK because it doesn’t have any details that need a specific location, but if the material uses texture maps (images) for the color then it needs those UV coordinates so it knows how to map the texture to the geometry.

Right. Regarding the UVW I shall cross that bridge when I come to it. :smiley:

I guess I must start looking into Quixel and dDo as well if I want to do this properly… But before that I need to learn basics of 3D-modelling.

As a dev, can you recommend Cinema 4D for making stuff and meshes to UE4? I ask, because I’m a bit familiar with that software compared to e.g. Blender that many use. In Cinema4D I also know how to get Adobe Illustrator drawings imported. I ask, cause I haven’t found anyone mentioning a UE4 and Cinema4D workflow. Only Blender, Maya and 3DMax

As long as C4D can export as FBX (and their website leads me to believe it does), then you can use it with UE4. There is an option to import OBJ files as well, but they are more limited in what they can carry with them.

Don’t worry about getting dedicated texturing tools yet, I would work with very simple stuff and look into that once you’ve got a handle on things.

C4D should be fine, if you’re already experienced with it then it’s better to keep working at that program. If you’re interested in making this a career though and want to work at a big game developer then most likely you would need to know Maya or 3ds Max since those are the most used, few studios use C4D. Not because it’s terrible, but most of the time C4D is used for motion graphics.

In regards to Cinema 4D in combination with UE4, i’ve written a lot of stuff here allready, just use the forum search to find the threads.

Long story short: you can use C4D for Unreal game development if you’re allready familiar with the programm, but you might run into little issues with a few things. Some you can easily bypass with the right workarround.

Also you might need some plugins to make your C4D gamedev life easier.

I’d recomend Cactus Dans fbx exporter, that still works better then the official fbx exporter in the latest revision (R17.048).
Also the Vertex Normal Tool and Pixelberg.
First one is a possibility to correct, manipulate and fixate smoothing on Meshes.
Second one is a realtime PBR viewport renderer for C4D.
Considder it as a built in Marmorset Toolbag.

Luckly most concepts in 3d modelling are not restricted to a certain programm, so every major app has the ability to manipulate geometry, turn it to meshes, UV map, texturepaint and export it.

If you understood the process e.g. UV mapping or SDS modelling, you would only need a little time to adopt to a new programms interface and toolset to get on the same level.