Hi, I'm fairly new to texturing in 3D, so bear with me here.
I have modelled and UV mapped a simple crate in 3ds Max. I use a simple photoshop workflow for applying textures onto my models.
The problem is however, the crate looks pretty low res, I'm wanting to use assets such as this in an environment for first person viewing. Evidently, this crate is way too low res for first person viewing.
I know the materials on the crate are a little off (the wood and the sand textures), but that doesn't change the fact that they look pretty low res.
I also know that I could use other textures maps such as Normal Maps, AO, Spec... But the diffuse it self looks worrying to me. What could I do to improve the texturing on this crate? Could it be the images I'm using?
The resolution of the images are: Wood[1600x1452] & Sand[4272x2848]Any and all feedback is most appreciated. Attached are pictures of the model, the UV's and the textures.
Many Thanks
Replies
And one last thing: also try to dilate your textures once you're done to prevent texturs from bleeding, tutorial: https://www.youtube.com/watch?v=keDeqPplRno
hope this helps
Also, I know I should overlap UV's that have the same texture, but I kept them a little different for variation. Should I not do that? Any other way to create variation?
And, thanks for the padding tip, I will look it into, it may help me out a lot. I don't fully understand padding though, does it expand the edges of your textures over the UV edges?
Thanks.
For such simple object with this noise texture, you dont need to create this subtle variation. Keept it simple, faster to build and cheaper for the hardware.
keep the texture variation for very noticeable symmetry in important areas such as character faces, torso or very obvious details on objects. Imagine this being used in a game, will anyone notice? Also, check some games and try to look for similar paterns and texture seams, most of the time this is everywhere, but well hiden by smart designers.
I didnt realy understand your last questiion, but I will answer yes to it. just make some tests inside some game engine and you will see how it works.
Thanks
you, by making different faces have a different texture you add variation, but then make sure you actually use a different texture, you used the same texture on both faces, so in this case there was no point.
as of edge padding: Try to zoom out really far in unreal, you will porbably see some black lines on your uv seams. That's because of mipmapping, it scales your texture down, as you move away from the object. the black lines occur because the black bleeds into the seams. The edge padding will sort of get rid of the bleeding, because the color bleeding into the seam is exactly the same as the color of the, wood in this case. Hope that sort of make sense. But if it doesn't, just do it anyway XD.
If you're up for a new challenge... try baking some ambient occlusion, it'll make the model look a lot better. (although unreal will probably bake a lightmap for you, if you're already using that)
cheers
Funnily enough, I don't see any black lines on my model, everything looks fine. But I did some research on edge padding and it is useful, I will be using it when I texture to make sure my textures are clean.
Also, I know AO can make the model look much better, but I didn't know that Unreal could make AO maps for your models automatically? I am using UE4 to view the model yes. Does that mean I don't have to bake AO's for my models if I will be importing them into UE4? How can I be sure?
One last thing: When up close, my textures for the model look fine, but when I walk some feet away, the textures look a little blurry, smoothed out, I can't see the textures, only the overall colours of the textures. Now I know that the more distance you are away from your model, you won't see as much detail on your model to save processing power, but my textures look a little smoothed and blurred. Pictures:
Up Close:
From Distance:
However, it is much better to bake and author your own AO map in addition to add a customized occlusion for your model.
usually looks somewhat like this. is great because you can get some extra shading in there that isnt in the geometr much like a normal map.
And as for this better looking customised occlusion, I'll test it out my self and see the difference. If it's going to make my models look significantly betters, I'm willing to put effort on it.
Edit: Yeah I stand corrected. I created an AO map in 3ds max for my crate model. I incorporated the AO into the diffuse, so I blended it in into the diffuse using photoshop. Exported the model. Imported the model into UE4 and it looks really nice. I was kind of amazed. (I get amazed by these simple things since I'm not used to seeing me actually succeed :P )
What do ya guys think?
Progress:
Would that work?
And for AO, why does it matter that I have a high poly? It's just shadows/shading, how would having a high poly make my AO better? Higher quality shadows/shading? I'll try it out and post results soon.
one more thing, I know this is more of an unreal engine thing, but do I need to know anything about lighting or shading to get optimal results on my models when I import them into the engine? Because currently, I just import my model in, put it into the level, and rebuilt the scenes lighting. Anything else I need to know?
Appreciate the help guys.
EDIT: Okay, trying to create the high poly of the crate. I've ran into some problems. I have duplicated the crate and I have added in support edges so that when I add the turbosmooth modifier, I will have nice smooth hard edges. However, this obviously changes the UV layout, and to bake an AO from the highpoly to use on the lowpoly, I'm sure the highpoly UV's needs to be layed out similiar right?
UV's are a mess. The highpoly AO is a mess. Can anybody help me out?
Need these three:
High Poly - No UVs needed
Low Poly - UV Mapped
Envelope/Cage
And what is a cage? Is it the projection cage that you use when baking normal maps and AO maps?
Are you saying you are multiplying the AO over the diffuse? If so that is incorrect when applying PBR practices. You should be following PBR.
What program are you using to bake down your high poly to your low poly? xNormal?
A cage is a projection mesh that captures ray data when baking High Poly detail onto your Low poly. The High Poly and Low poly are within the cage.
You need to follow tutorials on basic modeling techniques to remove confusion.
I would suggest following the excellent Grenade tutorial made by Tim Bergholz.
Grenade Tutorial by Bergholz:
https://www.youtube.com/watch?v=Y83FLL6TqF0
Some great reference for PBR texturing:
http://www.marmoset.co/toolbag/learn/pbr-practice
https://docs.google.com/document/d/1Fb9_KgCo0noxROKN4iT8ntTbx913e-t4Wc2nMRWPzNk/edit
http://blogs.unity3d.com/2015/02/18/working-with-physically-based-shading-a-practical-approach/
http://www.artisaverb.info/PBT.html
If you have any questions we are happy to help.
I am using 3ds Max's integrated baker, theres a 'render to texture' window, I can bake maps from there. I have no idea if it's any good or not. Or if I should use a standalone software that is simply dedicated to baking texture maps.
Yeah, it's good to know I knew what a projection cage was. That's a start huh.
I've watched that grenade tutorial before, it's amazing, but I watched it some time ago, when I didn't really acknowledge the process of 'baking' texture maps. I will watch it again.
The problem is, I've watched nearly all of Digital Tutors PBR modeling tutorials. They don't have many of those for a start. My high poly modelling skills do need work yes, but I'm confident I can model basic low poly PBR assets.
If you could give me any other resources and materials on how I model and texture PBR assets, that would be most appreciated.
Thanks for all the help you've been giving me, with the help of you guys, I'm confident I'll make it through. Thanks.
Currently, I've been working low poly modeling for assets, but I can't carry on until I see some texture onto my model. I feel de-motivated to carry on. When I see great textures applied to my model, it gives me encouragement to carry on.
I don't want to concentrate on everything at the same time, just modeling and texturing at the same time.
It's not only that, I'm finding it a little hard recently, on finding good tutorials for PBR modeling and texturing, good ones. I know the basics of modeling, I am well beyond extruding faces and adding edge loops haha. Well maybe not well beyond, but that stuff is easy. It's just highpoly modelling that gets me.
Use xNormal, or Substance Painter instead for baking.
Do not follow any tutorials specifically regarding texturing using the older method. Keep in mind the industry has shifted from DNS or Diffuse (with Ambient Occlusion stored within the texture map via multiply), Normal, and Specular to PBR which is Albedo, Metalness, Roughness, Normal, and Ambient Occlusion.
Tutorials regarding PBR are not as prevalent comparatively however there are quite a few. Look to Allegorithmic and/or quixel for their respective products on youtube for tutorials.
This tutorial made by Polycount's very own Millenia is an excellent breakdown for modeling. It is an older video so the texturing pipeline is pre Physically Based Rendering. Follow his tutorial from High Poly to low poly modeling, his UV methods, and how he bakes that detail down. After UVing you can watch his texture process however remember to ignore the DNS aspect and implement PBR methods.
Weapon creation tutorial - Part 1 (high poly model) - Millenia
https://www.youtube.com/watch?v=2Tgy0lBdJK0
Could you explain to me the best that you can about each map? I will do my own research, but it would also help simplying everything if you explained. I've heard Albedo is very similiar to diffuse. That's all I really know. I have been btw binge watch substance and quixel tutorials. But the newer era of texturing for PBR and the older way is just conflicting. Hence a big confusion.
Thanks for referencing the tutorial from Millenia. I know what to look out for in the tutorial.
I actually feel like I'm getting somewhere now. No giving up after I've gotten this far.
Thanks.
EDIT: Okay, so I've made a high poly, downloaded xnormal. Made an exported a projection cage with the lowpoly and highpoly. I've used Xnormal to bake an AO map. Now, how do I see the result of the diffuse AND AO together in 3ds max? And in UE4?
https://www.youtube.com/watch?v=LNwMJeWFr0U
and
https://www.youtube.com/watch?v=Tt30zzBQb3w
There are two main forms of PBR, Metalness and Specular Workflows. Metalness is used more frequently.
Albedo:
Essentially this is your diffuse. This defines the base color of your object without lighting. Metals reflect color and non-metals most often reflect white. The Albedo defines the reflection of metals only but not Non-Metals. Albedo does not hold the AO at all.
Metalness:
A Black and White texture that identifies what is or is not metal. White is metal and black is not metal.
Roughness:
Defines how smooth or rough an area is. White is super smooth and black is super rough. Smooth = Glossy/how shiny it is.
Normal:
Only texture that has not changed! Huzzah!
AO:
Stand alone texture that holds only the Ambient Occlusion information
This page defines it in full:
http://www.marmoset.co/toolbag/learn/pbr-practice
Thanks for the vids, I will be watching them. Even though I've ran into those vids before, I haven't made a proper effort in watching them. I will do now. I've made bookmarks of all the vids you've requested me to watch. Keep the helpful information coming, can't get enough of it haha!
Thanks also for the definitions, I don't however understand one thing you wrote: "The Albedo defines the reflection of metals only but not Non-Metals.", what do you mean by that? And "Normal: Only texture that has not changed! Huzzah!", Huzzah indeed.
Now, onto the meat of things. I did quite the experimenting today. So I ended up baking a nice AO map from my highpoly crate. Though it won't make much of a difference, which it didn't for me at all; I baked a normal map. I've gotten everything in UE4, I set up the material for my crate, and @tomenjerry was right, the AO is of higher quality. What do you think? would a higher poly AO bake be of higher quality, or is just me? I want to be 100% sure.
The problem is, this was my first time using Xnormal. And I still need to do a lot of research and watch a lot of tutorials on Xnormal, so I'm sure this kind of stuff shouldn't happen again, but I get strange artifacts on my normal map AND my normal map doesn't make my PBR crate model look any smoother.
Either my highpoly models edges aren't smooth enough, which I think they are, OR I've f***** up with Xnormal and I'm doing something wrong which is giving me these weird artifacts. I've posted all the pictures below.
Thanks
Crate:
Weird Artifacts:
https://www.allegorithmic.com/pbr-guide
Two very good free PDF's from Allegorithmic about PBR, the people who make the Substance products.
Also for normal maps you often have to put the curves on your model more than real life to make it show up on the normal map.
Before you bake you need to "explode" your mesh apart. Each piece that is separate needs to be moved apart from each other to prevent clipping. Low Poly and High Poly. So, it looks like that 2x4 piece of wood is causing clipping on the box itself. Move pieces aside if this is indeed the case.
Post images of your High poly and low poly untextured with and without wireframes.
"Albedo is the base color input, commonly known as a diffuse map.
An albedo map defines the color of diffused light. One of the biggest differences between an albedo map in a PBR system and a traditional diffuse map is the lack of directional light or ambient occlusion. Directional light will look incorrect in certain lighting conditions, and ambient occlusion should be added in the separate AO slot.
The albedo map will sometimes define more than the diffuse color as well, for instance, when using a metalness map, the albedo map defines the diffuse color for insulators (non-metals) and reflectivity for metallic surfaces."
http://www.marmoset.co/toolbag/learn/pbr-practice
I'll check those PDF's out. Thanks.
You said: "But that's where the normal is for, it makes sure the low poly is lit the same as the high poly is.". Isn't that what the AO does?
Also, yeah I'm improving heavily with you guys giving me this information. I have a clearer understanding now unlike before. I am going to create another simple mesh, but a bit more complex than a cube. I'll post results on that soon.
I will always keep going. Thanks, appreciate the effort you are putting in to helping me out.
With this kind of information, and my trial and error way of working, I'm getting there. I've learnt this in Digital Tutors. I seperate the piece out, and for ease of use, I can create a keyframes so that I can change to non exploded and exploded states of the mesh.
And I forgot to post the high poly and low poly pictures.
For some reason, my highpoly has dissapeared, I most likely did not save it. I'll create it quickly and I'll bake my AO and Normal maps again, with mesh explosion. Stay tuned, I'll post the pics as soon as I can.
---
Also, If you look at a normal map, what is it replicating? This is easier to decipher if you look at the channels of the normal map in photoshop. Red and Green specifically. Red has the light coming from the right and green from the bottom (at least in unreal). You are correct however, when you speak of it changing normals, but in so far as how normals handle the light.
http://wiki.polycount.com/wiki/Normal_map
http://wiki.polycount.com/wiki/VertexNormal
I'm having a tremendous amount of trouble on my end. So I tried exploding my crate, but I found that I took really long. 30-35 minutes just to explode it. It is literally a cube and 6 diagonal pieces. I had no idea if I was doing it the right way. And I had a lot of questions un-answered making me feel really un-confident in baking and exploding. Some of the questions I had in mind was: When adding a projection, do I use a projection modifier? And, do I apply this modifier individually, one at a time to every exploded piece? Or can I just select all the pieces together and add a projection modifier? And, do I need to, at any point, export this projection? What do I do after I project my mesh in Xnormal? ..... I know I take a lot of effort, but without you guys I wouldn't have learned a tremendous amount already. So thanks.
It seems I need to look thoroughly at the baking process, as a whole. All the steps I need to take and things I need to do.
There are 2 things I'm going to do, I'm going to see how Chamfer Zone (the guy who created the grenade tutorial) baked his texture maps. He did it in SP.
I will then see how Millenia baked his gun model texture maps. Don't think I haven't been watching the tutorials you have been sending me, I have, but in specific parts like modeling, texturing... etc. Tomorrow I'm going to fully watch the grenade tutorials AND I'm going to take part in Millenia's tutorials (actually making a gun model whilst watching his vids, follow along).
It seems I know little to nothing about the baking process, but I've got resources to learn from. So I'll be doing it tomorrow since I'll just be giving my self a headache if I try to cram this all in one day.
I'll be needing your help tomorrow to clear things up, and I'll be posting results tomorrow. So stay tuned. Thanks.
Here is a good video on exploding a mesh:
https://www.youtube.com/watch?v=bgYoXF6QmWw
There's just so many methods and ways that people bake texture maps. I'm so confused. Everything I know is contradicting it self.
Okay, so I watched the grenade tutorial, and he doesn't explode his grenade (pun not intended >_>), he just UV unwraps the low poly, puts both high and low poly in SP and SP bakes all the maps for him.
Millenia, if you take a look at part 3 of his tutorials, when he's baking his gun. All he does is UV unwrap his lowpoly, he doesn't even explode it! What's worse is that he doesn't use SP or anything to bake it for him, he just uses 3ds Max to bake his maps. AND, he has multiple objects clipping into each other. What is with that? Contradiction much?
I feel like baking should be a fairly simple process, but I've found so many contradictions to what you guys have said.
Secondly, I still don't know what to do after a mesh is exploded since I'm using Xnormal. After creating a cage for your mesh. What do I do in Xnormal? What do I need to export? Is a highpoly, lowpoly and a projection cage all I need?
I wish somebody could sit my ass down and explain it to me haha.
When using Substance painter you can do either, explode or not. If you do not explode the mesh you need to make sure each mesh piece follows a naming convention. Stock_low and Stock_high, something like that.
Regarding Millenia's video, he does explode the mesh. He moves the pump away, however not much else. SP was not around when he made this video.
When you are exporting for xNormal:
Duplicate your LP and HP and keep those hidden to have unexploded meshes. Have your Low poly and high poly mesh and its pieces fully exploded. The High and Low poly pieces need to be intersecting each other. So, if you have a gun, The Low and High poly receiver, barrel, stock, etc would be intersecting/on top of each other/clipping for each piece. Merge the low poly pieces together and high poly pieces together. So you will have the low and high poly as two objects. Then create a cage projection from the low poly. Export all three of these and ensure they retain their smoothing groups. You may be better off triangulating the HP and LP before exporting. Make duplications before the triangulation to retain quads if an error occurs.
Let me know if that makes sense...
One thing I'm a bit unsure about what you said: "Merge the low poly pieces together and high poly pieces together. So you will have the low and high poly as two objects." - So I would use the Attach tool to attach all the low poly pieces together. So thats one object, lowpoly. And I would also attach all the high poly objects, thats another object. Which makes a total of 2 objects. Correct?
One more thing: "ensure they retain their smoothing groups." What can affect smoothing groups in this process? Creating a cage? Because currently I don't know how to make sure they retain their smoothing groups.
Thanks for clearing things up, I will try your explained method as soon as I can. It's good you're around to clear this stuff up.
Yes that would be a total of two objects.
Retaining smoothing groups is dependent on your export settings, within FBX or OBJ. The cage will not impact smoothing groups.
Things are finally turning green for me. I did what you explained, and things worked out really well. I baked both normals and AO, and it was perfect. I also really like how I can increase the AO intensity in photoshop for darker or lighter alterations.
There is, one interesting thing I found on my AO and Normal Map. It's not an artifact, It's more to do with the geometry. I've posted pictures of my maps below. I have 4 lines through 2 of my UV shells. These lines are also in my UV map, but the reason why it's weird is because it affects the normal map, since those UV shells are suppose to be flat. There's no detail on them. Yet I've got these outsets. It's also in my AO.
I'm also going to look through some of the materials and links you've provided me. And I will be creating another PBR model. This one will also be fairly simple, but somewhat more complex now since I'm more used to working with texture maps and baking.
I'm feeling a lot more confident and happy about baking now thanks to you. Yesterday I was having a lot of anxiety over this: "Am I ever going to grasp the concept of baking?" Haha.
Now to look for some concept art on my next PBR prop.
Also, whenever you have a hard edge, that edge must be separated in the UV map. That hard edge needs to be separated to bake properly. When it is a soft edge it needs to be sewn in the UVs. Keep in mind if the edge is hard separate in the uvs, but if the uv is separated it does not NEED to be hard. Sounds confusing but it will make sense.
Read this:
http://polycount.com/discussion/107196/youre-making-me-hard-making-sense-of-hard-edges-uvs-normal-maps-and-vertex-counts/p1
"Some general rules with that in mind:
Lastly, when previewing your bakes, do so in Marmoset for a better result. Maya/3DS Max has many settings which can throw you off. If you do not have Marmoset, buy it. Believe me, its well worth the price.
And I've heard about this hard edge thing. So all hard edge UV's need to be seperated? I understood what you wrote, but just to make sure, if a UV is seperated, the edges for that UV don't necessarily need to be hard?
I didn't understand this: "You do not however, NEED to use hard edges wherever you split your uvs(as some may suggest)" "
And thanks clearing out what those outsets were in my normal map. My normal displays fine on the model, was just merely curious aboiut what those were on the map.
Essentially, when you harden an edge, this edge must be separated in the UVs. If you have an edge that is separated in the UVs this edge does not need to be hardened. So for example an area of a mesh you want separated in the UVs just to have better spacing would not need to be hardened. If an edge was hardened, it must be separated to bake properly.
What do you mean by 'when you harden an egde'. How do you harden an edge? Since UV mapping is done after the modelling process, you split the UV's that have hard edges. Am I missing something here?
After you are done modeling, then do your smoothing groups then UV map.
Also, I've started another prop. It's a book. I've modelled it. Textured it. Baked an AO and a NM from the highpoly. Looks fantastic apart from the fact I've gotten artifacts from the not yet split UV's. I can see now what you mean about the hard edges. I will split my UV's and see what I can do.
I'll post pics later. Besides, the artifact isn't very noticable. But I want to make sure it's perfect.
Actually, here is the normal and AO map for it:
I'll upload the actual book later and my UV results (from splitting appropriate UV's)
Thanks.
Also, coincidence? You're a Environment/Prop Artist. That's exactly what I want to be! It's good to learn from somebody that has the same goals in mind.
Really, my long term goal is to be 3D Generalist. You know, jack of all trades, but I really want to specialise in PBR Environment Creation. Since that's what got me into 3D to begin with.
So you're working at NetherRealm studios... must be cool. And you've worked on two sweet games haha.
Curious question: Where did you learn 3d game art? Uni? Online?
I learned the basics from an overpriced university. It was an excellent experience, however, I learned nearly all of what I know from practice, tutorials, friends, and just repetition.
Regarding your book, those areas you circled, it might be flipped normals, I am not 100% sure. The other odd area (AO) with a wireframe showing through may be either the high poly or low poly clipping with something (Envelope).
Keep at it.