UV Mapping - Games

Hi All, Hope you all have had a great christmas and new years ahead.

Silly question incoming…

I understand that we UV Map character models and props etc so that it is all one texture which is better for FPS/optimising and not heavy on resources, however Why then don’t we UV the Tarrain/Buildings/Houses/Floors/Walls/Ceiling etc in games. Why is it only the character and props that are UV and not the tarrain etc which is HIGH levels of faces/mesh and more than a character model for example.

Why do you think the environment is not UV mapped ? Or about what games are you talking ???

2 Likes

Who told you this?
Terrain, for sure doesnt need a UV, and textured in a bit more procedural manner.
As example, roads in City Skylines doesnt have a traditional UV, but use so called “world mapping” instead.
Same for terrain.

But buildings - in 99.999…% of the cases will have a UV maps for trims/tiled textures workflow.

2 Likes

Large objects do use UVs, but tend to use them differently.

Characters will have non-overlapping UVs that fill the UV square as much as possible. This is a setup for texture baking or painting, a setup to create a texture that’s linked to one model in particular.

For a building, you might instead find seamless textures that can be repeated over the model and trimsheets that contain little details that can be placed all over the model. You then place the UVs over those textures so the correct parts show up where you need thm on your model, even if the UVs need to overlap or go out of the UV square for that to work.

In that second texturing method, the textures aren’t built for one model in particular, they are generic textures that can be reused and repeated across models.

2 Likes

Better example for my question…in AAA games for example and their game engines (hammer, quadrant etc (half life source games, medal of honour, call of duty) etc and also in unity/unreal etc… in those game engines, you can create meshes and tarrain, then put a texture on it and then playtest the game. Ive made custom made levels through the years with medal of honour, half life, call of duty for example and i just had to create the texture and paint on the tarrain, put textures on the buildings, roads etc and saw AAA source levels that did this…however you had premade character models, props, assets which came from an external modelling engine which were UV.

So my question is why do we UV map a character model and assets etc which i know it makes the engine read 1 text on the model vs all faces…but not for the game engine tarrain, roads etc that you make in the game engine which tarrain always have soo many faces which assume must be read by the engine when in game.

Hope this makes sense and sorry for silly question but im trying to get round why they dont UV map the tarrain and roads etc but do the rest that are imported in and premade. Again i know why we should for models but then why when i watch videos, made levels, seen AAA place the textures on the mesh in game engine, tarrain, are those Not UV mapped…

Because they don’t need to, and by not doing it they retain flexibility for the mesh to not dictate the flow of the shading in ways they don’t want.

Or to put it differently: the reason they use UV mapping is because they have to use it.

1 Like

I thought UV Mapping was needed to have one high detailed texture on the model so less textures are read in the programme used and not having to read all faces, so UV is created.

So with that bein said, tarrain has such high level of faces, ground, walls etc also in game engines, why don’t they have to be UV. I have seen many videos where the creator of the level simply puts the texture or paints it on the ground in the game engine and moves on. I have done the same in past game engines.

So question is why is it that those don’t need to be UV Mapped but the character models, assets from 3D programmes like Maya/Blender do need to be UV Mapped then exported over into the game engine?

Sorry I just don’t know the answer to it and curious, as I am making a game and want to make sure I am doing the texturing of the ground/tarrain etc correctly.

What you mean by “read faces”?

Because you cant texture any “generic” character or props without UV.

No.

UV mapping is about having control over where the texture is placed in the object. Where is the texture mapped to. As in “this is a map of the world, where is Portugal placed on this map?”

For example, the artwork on the Tshirt of a character needs to be on the Tshirt. Not placed on top of his forehead.

I suggest you hit YouTube, and look up “what is UV mapping”.

3 Likes

Because the ground will never move, so you can just project the texture on it and it will work.

The characters deform, so you need UVs to tell exactly where the texture is on the object. If you textured the characters the same way as the ground, their texture would change as they move.

It’s a matter of texel density. Let’s say the game world global texel density is 2m2 = 2048 texture size (which would also equal 0-1 on your UV sheet) then this will apply to every asset, from the largest to the smallest.

Texel density has to stay (relatively) consistent all across the game, from a small prop like a telephone to a large building. It’s impossible to unwrap a large asset to a 0-1 texture sheet and maintain the texel density, there simply isn’t enough pixels to get the resolution.

This is why all sorts of techniques in game dev asset creation exist, from atlasing to trim sheets to tiling textures, to masked RGBA masked materials to unique unwraps combinations of all of the above…

It’s also why modeling techniques like weighted normals and modular kits exist too.

In game dev asset creation (especially with environments/modular kits/large pieces) there are many, many ways to approach it and to sidestep the limitations.

1 Like

You are not referring to test levels madr out of cuboids and cylinders and planes ( for the terrain ) ; pre-UV-unrwrapped following the grid using a tileable tetxure… no… ??

When using an infinite plane then the XY-World (with Z-up) coordinates are used to have so to speak “automatic UV” because the world cordinates simply needs to be restricted to the fractional part (but then changes texture when part are moved).

When adding for example hills or even mountain then they certainly are pre-UV-unwrapped.

In game engines, you can create a tarrain or add a mesh to the level and simply paint on the tarrain or you can add a texture to the mesh if you wanted to and then its done for the walls, floors, tarrain in game engines. So why are those not UV mapped?

Upon viewing videos on UV it was informed they are UV mapped due to the reading of all faces can be heavy on data etc so UV mapping combines a model to one texture with detail either painted or textures added to it, so the engine only needs to read that uv texture not every face on the mesh.

So with that being said I was wondering if that is the case, what about when designers are in a game engine, they add a tarrian mesh and paint the tarrain on it, or they add a cube and make that a wall/room/floor etc and add a texture on it, why isnt that needed to be UV?

They are UV mapper in most of the cases.

You really need to watch some basic videos explaining what is UV maps and why you need them, etc., because you canstantly tell abous some things like “reading of all faces” and believe me, no one here are even know what you are talking about, not because people here are lack of knowledge, but because there no such things as “reading faces” in context of UV maps (except vertex count which affected by amount of seams but its clearly not the case which you are talking about).
Just watch some basics about UV mapping in general and UV mapping related to video games and eventually you will get it.

You are asking but not listening…
To build levels and any terrain game developer use pre-UV-mapped primitives and if you use one image for the whole terrain then this is by far tooo bigggg…

Here (especially at this position) yo can see the surrogates before the actuall elements are added…

Usually this is called block out or here greyboxing…

…after this there are several refinement steps also to “hide” object borders (mostly with rocks, plants and debris/rubble)/

Or this

Your terrain painting examples are certainly with terrains using heightmaps. This is “easily” implemented in game engines but fewer use in professional designs… (also because of the big amount of data). It’s more like this:

http://wiki.polycount.com/wiki/Terrain_in_The_Last_Of_Us

Thank you All.

I have rechecked videos on UV Mapping. I understand it is to best texture/paint onto the model when it is UV as you are texturing/painting onto a 2D space so to do so, you need to unwrap your 3D to a 2D flat space and make sure it is done right so the texture/painting is seemless.

I have a question. If you was to put a basic colour onto a model and you Don’t UV Unwrap it, then export the model which is painted in single colours…What would happen to a model that isn’t UV Mapped and in a game engine with a texture/painted onto?

There are 2 ways to put basic colors on a model without UVs. You could do it with simple colored materials or with vertex colors. Both of those can be exported to game engines (though you might need to re-plug a few things for it to work). Though, you will be limited to simpler flat colors with those techniques.

Thank you for that information as that also support.

Apologies my question is more of a generic question. I am going to UV of course dont get me wrong. My question is more…what happens if i was to model a character, texture them and then put them in the game without UV mapping the model? So if i put a basic colour, lets say on a character. Just one skin colour, then i dont UV map and then i export it to the game engine. What would happen in game when playing?

When you import the model in the game engine, it would have the same material slots as in Blender, with every material assigned to the correct faces. Depending on the engine, the color might even import correctly. If it doesn’t you would just need to set it up in the material on the game engine’s side. Then, that material with a flat color would work correctly in game and look the same as in Blender, as flat colors don’t need UVs to work.

Thank you. So hyperthetically why dont designers and game creators do that then? For the games that have just basic colour on them or assets that have that, why dont they just do that instead of UV Mapping it? Dont get me wrong, i will UV map but just curious.

I have read that i was right on the fact that it is due to multiple reasons and not just because of texting on a flat surface, youll need to UV map, but it is also due to the fact of Performance data. As if not UV mapped, the engine will take time to load in all the textures but if it is UV it is loading one per model or alot less.

So it kind of goes back to my original question. If that is the case…in a game engine, you can create walls, rooms tarrain etc straight in the game engine itself, then add a texture onto it in the game engine. So why do those not need to be UVd but the imported ones do?

Hope this makes sense and i am thankfull for all your feedback, support and answers.