Hello Polycounters, I am trying to gain proper understanding of how to unwrap a model for current gen game texturing and baking.
I have scoured the net for various tutorials but I feel im not retaining the most important things.
Right now I am uving a cylindrical vat but I need validation that I am utilizing the uv efficiently.
Here is the model.
Here is the unwrap for the model.
I tried to keep things to the same checker tiling size, then I would increased an objects scale to fill in the space.
What else can I do to make this work that would be equivalent to what those in the game industry would do?
Replies
In general there looks to be a lot pieces that could potentially be stacked and overlapped. the tops and bottoms of cylinders are sometimes hard to view at the same time and if the texture is similar you can stack the caps. Same goes for other similar pieces.
Don't forget that you can put UV shells inside of other ones, like that giant hallow hoop in the center left.
If some pieces can be handled by mostly a solid color you can scale those pieces down to a single pixel if you want.
You can also stack similar SHAPED pieces easier, they don't aways need to hang out with the other shells from the same object.
If you posted an .OBJ of the object you could encourage others to unwrap it and see how they do it.
1. Overlap repeated object shells. For example, if you have four screws on the model that are exactly the same, you can overlap the shells directly on top of each other. Then when it comes to baking, you can just bake a single screw. Judging by your shells, it looks like there are a few places you could do this. Just be careful not to overlap so much so that people can pick out patterns in your texture.
2. Personally, I like to group like-shaped shells together to make sure I'm utilizing the most space possible. So group your rectangular shells together and your circular shells together, and find the best grouping to maximize your space.
3. Place smaller circular shells inside larger hollow ones. It looks like you have a few ring-shaped shells that you could put some of your smaller circular shells inside of (unless the ones I'm seeing as ring-shaped are just un-triangulated polys). This will save you a lot of space.
In general, consider the object as it will appear in game. If you can, move it into the actual game engine; if not, estimate how close the camera will get to the object. Consider whether any parts will be obscured or hidden from view.
If details are important - such as the pressure gauge on a boiler in a hotel not far from Sidewinder, Colorado - go ahead and enlarge it enough to make the text readable; otherwise, it's often OK for the text to be visible, but not quite legible.
I wouldn't be surprised if at least 1/4th - or more - of your map is empty. If you condensed some of that empty space, you may have enough room to enlarge the smaller pieces of the map without having to shrink the other parts.
I generally use the "if it fits, it sits" method of packing in my UVs. I try not to get TOO disorganized, but you can always refer back to the mesh and UV map in your 3D editor if you happen to forget what a certain shell corresponds to.
DW and Kris make a good point that I didn't mention either. There may be parts of your object that you can scale the shells down a lot on, it doesn't have to be the same density throughout. For example, the bottom of the container (if you haven't deleted it) along with the bottom of lids or anything similar can be severely scaled down. Basically, anything that will almost always be obscured from the player view or made black by a lightmap. Also, and shells that will basically be just using a flat color can be scaled down a lot (examples could be wires, plastic pieces, etc.)
If anyone else would like to take a crack at it here is the FBX model
https://db.tt/xxm0LXwv
Here is the new image
1. This was a quick and dirty job, so don't take it as gospel. There are definitely a number of things to be improved upon, but it was hard to make certain decisions because I don't know what you are going to be texturing it like. But it should be good enough to get the gist of techniques to try out.
2. I mapped everything to the same scale, so the tiles are the same size throughout. I noticed in yours you had some very small objects had a higher density than some of the bigger shells. You may actually want this, but since I couldn't make any calls on what the texture was going to be, I just made them all the same.
3. You'll notice there is A LOT of empty space left on my version. I left that in to show how much space you can save by doing some of these things. As for what to use the extra space for, typically you would either scale up some of your smaller shells, because depending on your final texture size, they may be too pixelated, or you could also add an additional seam to the large cylinder shell on the bottom, and then re-arrange and scale up again to fill the empty space. Alternatively, you can atlas different objects together. I mainly do environments, so I will have multiple objects share the same texture sheet. This is very common in the game industry and is a key optimization technique.
You can use two UV layouts one for painting and then another that is arranged opimally and then transfer from the first to the 2nd using Render to texture.
Speaking of padding you should check out the polycount wiki page about edge padding and mip-maps, very important to know how well your textures will down-res even if they will never mip. You never know when a change to the engine will require a down res.
You're spending an extra two vertices and increasing the distortion, but you're saving a lot of space (By making the shape smaller and easier to pack) and you're reducing aliasing; which is arguably more noticeable than distortion on small pieces.
Horizontal tiling. Looks like a pot. You could do some horizontal tiling if you're super concerned about space. Not for the entire asset, just for smaller trims and such.
I know its not the best texturing but I am happy with it.
I am willing to listen to critiques and comments and i would like to receive tips on how to push it further.
I have tried to think realistically about dust,grime,fingerprint and scratch buildup as well as how the model was made and how it is utilized/interacted with.
I added dust and scratches even finger print smudges to the roughness map and the albedo for color. I used an alpha to wear down the chevron non-destructively and tried to build up grime where the prop would be most touched.
This model is for a third person game and may or may not been seen from all sides besides directly underneath.
It will most likely be seen like the bottom image in game but the camera may can change depending on proximity.
Should this go in another thread?
What tools do you use to straighten UVs like that easily in Modo?