Home Technical Talk

To Map or Not To Map - Modeling Mapping Question

onizuka92
polycounter lvl 9
Offline / Send Message
onizuka92 polycounter lvl 9
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

  • ZacD
    Options
    Offline / Send Message
    ZacD ngon master
    Diffuse normal specular and gloss are the most important ones, gloss controls how large and soft, or sharp and small specular highlights are. It is very important for material definition. Specular color can be important for some materials, read this http://www.manufato.com/?p=902

    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.

    ao-explain.jpg
  • TorQue[MoD]
    Options
    Offline / Send Message
    TorQue[MoD] polycounter lvl 19
    Depends on the engine. Typically you multiply the Ambient Occlusion into your diffuse to give it extra shadowing depth. Engines like UDK and Cry Engine also have in-engine AO that gets applied to your model based on your mesh itself. Combined with an AO map it can really improve the look of a model.

    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.
  • onizuka92
    Options
    Offline / Send Message
    onizuka92 polycounter lvl 9
    I'd really appreciate the tutorial TorQue because it seems that whenever I start texturing I am asking a lot of questions and I haven't been able to fully grasp the proper uses of each map other than the basic Normal, Diffuse, Secular and Transparent maps.

    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.
  • ZacD
    Options
    Offline / Send Message
    ZacD ngon master
    Object Space maps give you absolute values on a normal map, tangent space normal maps or regular normal maps gives you normal detail based on the relative normal tangents of a model. Tangent space normal maps are more prone to artifacts, errors, and unsynced tangents, but are more flexible to use in game engines, object space normal maps cannot be deformed without messing up the baked lighting information. Object space normal maps can be used to help add directional texture effects with tools like dDo.
  • TorQue[MoD]
    Options
    Offline / Send Message
    TorQue[MoD] polycounter lvl 19
    Sure thing. I'll see about putting together a simple tutorial shortly. I need to make some rock models for the environment I'm working on so I'll do that in the next few days and hopefully in a week or so I'll have the tutorial ready.
  • TorQue[MoD]
    Options
    Offline / Send Message
    TorQue[MoD] polycounter lvl 19
    Ok tutorial is up. Longer than I originally planned, but it coves what the maps are and the different ways you can use them all in UDK.

    http://youtu.be/4vnwsnRwcyk
  • mAlkAv!An
    Options
    Offline / Send Message
    mAlkAv!An polycounter lvl 5
    There are some false and misleading information in your tutorial.

    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.
  • TorQue[MoD]
    Options
    Offline / Send Message
    TorQue[MoD] polycounter lvl 19
    Thanks for the info. For the lighting information, I realize its not ambient occlusion in the literal sense, I was simply trying to show that light is blocked by extruded gemoetry. I was trying to simplify what AO is. I also realize that my AO bake was shite, but I just wanted to show them what to do. Also, thanks for the LERP info... that I didn't know. I thought 1 meant full strength of A and B. So how are you supposed to blend AO maps properly?

    I'm still learning too and simply trying to share that knowledge. I suppose I should add a disclaimer to my video :P
  • Nosslak
    Options
    Offline / Send Message
    Nosslak polycounter lvl 12
    I was trying to simplify what AO is. I also realize that my AO bake was shite, but I just wanted to show them what to do. Also, thanks for the LERP info... that I didn't know. I thought 1 meant full strength of A and B. So how are you supposed to blend AO maps properly?
    If you bake out an AO map correctly (normalized) it will be mostly white with darker (black) shadows. To use this texture you simply multiply it on top of the other textures. It works the same for in Photoshop and UDK, just set the layer to multiply or use a multiply node. With a working AO-map you should not need to brighten the result as the shadows should only appear in the crevices. Here's an example of what an AO-map should look like (not mine).
    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.
  • TorQue[MoD]
    Options
    Offline / Send Message
    TorQue[MoD] polycounter lvl 19
    Nosslak wrote: »
    ...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!
  • Stromberg90
    Options
    Offline / Send Message
    Stromberg90 polycounter lvl 11
    Not everyone has annotations enabled, and you should not do a video tutorial if you don't know 100% what you are talking about.

    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.
  • Nosslak
    Options
    Offline / Send Message
    Nosslak polycounter lvl 12
    I just skimmed through the video again and it wasn't as bad as I remembered. However I do still have some critique:
    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.
  • Eric Chadwick
  • TorQue[MoD]
    Options
    Offline / Send Message
    TorQue[MoD] polycounter lvl 19
    Nosslak wrote: »
    ...I still think you should either edit out the misleading parts or just remove the whole video.

    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.
  • onizuka92
    Options
    Offline / Send Message
    onizuka92 polycounter lvl 9
    Seems like a lot of discussion has been going on since i last made this post however i wasn't updated that anyone had said anything? that's pretty weird.

    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.
Sign In or Register to comment.