Hello i am new to the forums so thank you all for choosing to view and reply to this post.
I want to know why are there so many kinds of maps and how many maps can an in game realistic model really use in an engine like Unity, Cry Engine and UDK ? Im mostly talking about the Ambient Occlusion, Gloss maps, Height maps, Object Space maps and Specular Color maps from 3ds max.
I understand the use of Normal maps, Diffuse maps and Specular maps but how do the other maps find their way in the engine? 3ds max cant use both Diffuse and Ambient for some reason but can a game engine? What needs to be done to make it work effectively and efficiently in engine?
Replies
Height maps can be used as blending masks, displacement or parallax displacement, so it's use varies.
Ambient occlusion is normally overlayed in the diffuse, but that is not really realistic or accurate, ambient occlusion details really should only be multipled onto shadowed areas. Next gen consoles should have enough memory that this is possible, but I don't know if we will see it.
Gloss maps are used in conjunction with your specular map to determine the strength of your specularity. It would depend on the fidelity you're going for with your game. If you're working on a stylized project (like Guild Wars 2 or Diablo 3) then its more efficient to make your specular map from your diffuse in engine (http://cg.tutsplus.com/tutorials/udk/quick-tip-optimizing-textures-in-unreal-development-kit/) and to use a single value (for example using a constant of 30 in a UDK material setup) to determine the specular power rather than using a separate texture. If you're trying to go for an ultra realistic look then having a separate specular and gloss map will definitely make a big difference at the cost of performance.
Height maps are also a way that you can add extra detail to your mesh by actually causing the mesh to displace based on that info. This is essentially what Tesselation is when you see it in a video card tech demo. Again this is definitely supported by UDK and Cryengine to varied levels of usefulness and like spec and gloss maps, it depends on your plan for visuals versus performance.
Haven't used an object space normal so can't tell you about its benefits and Specular Color can simply be added to the actual specular map. It doesn't need to be a separate texture as there's no benefit - although in a perfect simulation you'd want the specular color to be rendered in real time based on the world lighting I'd imagine.
I have no experience with Unity, but I'd imagine that its possible to use spec and gloss maps with it as well. Its just a performance issue really.
If you're determined to use multiple maps in engine to get the best visual fidelity, then I'd suggest using different resolutions depending on the map. For example for a character, you'd likely want your diffuse to be high res - at least 2048x2048 but your specular and gloss maps could be 512x512 and still look great. You could even lower the res of your normal and height maps to 1024x1024 and still get basically the same detail out of them. Try making a simple asset and start experimenting is my best advice. If you need help on figuring out how to combine the maps together, let me know. I haven't made a tutorial in a while and this could be a good one.
I've never testing overlaying maps in Photoshop until today which is why the question was brought up.I also forgot to add cavity maps but I do understand what those are for. and thanks ZacD for the visual understanding of Ambient Occlusion.
http://youtu.be/4vnwsnRwcyk
When explaining AO maps you show shadows from direct lighting (sun) which is no ambient occlusion at all.
Your AO map is probably not normalized, that's why it's mid grey rather than white with some darker spots (which would work just fine for multiply blend mode)
The Lerp node setup is wrong. By using 1 as alpha input you simply output B. 0.5 would be an equal blend of A and B, but this is not how to use ao maps.
I'm still learning too and simply trying to share that knowledge. I suppose I should add a disclaimer to my video :P
If you're not sure about the material you're trying to teach you shouldn't make a tutorial about it. There is a lot of misinformation in your video, so to be completely honest I would probably remove it as it will most likely just confuse beginners looking to learn.
mAlkAv!An was specific when he pointed out the parts of my video that were confusing and I added annotations to fix this. Could you be more specific when you say there's a lot of misinformation in my video, otherwise I can't fix it or learn what I said wrong.
Thanks!
Sometime a beginner might look at this video and think this is right information, which is no good, since these videos are mostly aimed at beginners.
Also saying that gloss maps are not necessary is not true, there is a lot of materials you will have problem conveying without a gloss map... I would also remove the video if I were you then do some research and make another one.
1. The example models and textures are horrible (no big details on the highpoly, crappy UVs, no silhouette). You admit this yourself, but even so I think you could use some models and textures you've got lying around. Here's a rock I made last week, it has a lot bigger shapes that would show a lot clearer the difference baked texture can do, it is by no means perfect but I'd say something like that would be a better example.
2. Show more complex textures to show the need for specular and gloss maps (e.g a door with both wood and metal) as opposed to just using constants which would pretty viable for this model you're showing.
3. The tutorial is just too darn long. Most people probably would not sit through 1h 13min to learn about basic textures in UDK.
4. It looks like the gloss map and possibly the specular as well is just auto-generated with Crazybump or NDo.
5. Like Stromberg said these videos are aimed for beginners but from the confusion of direct lighting with AO, the gray AO map and the lerping of the AO there is just so many problems that would confuse and mislead a beginner.
I still think you should either edit out the misleading parts or just remove the whole video.
http://wiki.polycount.net/CategoryTextureTypes
Not to hijack the original post, but the whole purpose was simply to show what to do with the materials once you have them not how to actually make them. I go over everything step by step and I show multiple methods on how to set up the material all of which work aside from the constant value in the LERP which I corrected with annotations. Its not a pro video by any means but I think it gets the point across for a freebie.
Thanks for the feedback though.
To be fair i am the type to sit through hours of video to figure out what i don't know because i feel i should just be that dedicated to my passion.
i thank you Torque for stepping up with a video to try and explain map usage to it to me.
i think since the last time i asked this question i have found out a lot more about how AO, Spec and Gloss and Height/displacement maps are suppose to work an enhance the model in a game engine.