Home Technical Talk

Cavity vs Curvature maps

So, for a long time I always referred to both these images as cavity maps, or should the second, more grayish one actually be called curvature map, since it has both cavities and outward edges highlighted?

cavity.jpgcavity2.jpg


The reason i never referred to gray map as curvature is because I've also seen this referred to as curvature map, which makes more sense:

curvature.jpg

I guess my question is: what's the correct name I can use for each one to prevent confusion?

Replies

  • AlphaMix
    Options
    Offline / Send Message
    So the way I normally get this map is by simply converting it from the normal map

    cavity2.jpg

    What I've always wondered is if there's another way do do it, namely, without the need of a low poly model?

    Was just thinking it would be nice to have a high poly model with UVs that I can somewhat texture with the aid of this map, say in Ddo or Substance Designer, without needing to retopo and go through the normal map baking first.

    Or am i just dreaming.
  • EarthQuake
    Options
    Offline / Send Message
    yeah, you should be able to bake a curvature map directly from highpoly w/ uvs in either max or maya, though I don't know the exact procedure.
  • EarthQuake
    Options
    Offline / Send Message
    First one is a cavity map where darks represent the cavities
    Second one is, uhh its sort of weird and not really "correct", its the thing you can get out of crazybump where gray is neutral and darks are cavity and whites are convexity, this map is hard to work with
    Bottom one is a curvature map where each channel contains different information, like convexity in red and concavity in green for instance, generally more useful

    Also, merged both of your threads as they appeared to be about the same topic.
  • AlphaMix
    Options
    Offline / Send Message
    EarthQuake wrote: »
    First one is a cavity map where darks represent the cavities
    Second one is, uhh its sort of weird and not really "correct", its the thing you can get out of crazybump where gray is neutral and darks are cavity and whites are convexity, this map is hard to work with
    Bottom one is a curvature map where each channel contains different information, like convexity in red and concavity in green for instance, generally more useful

    Also, merged both of your threads as they appeared to be about the same topic.

    Ty, and you are correct about the second one, however, what do you call it?
  • Bartalon
    Options
    Offline / Send Message
    Bartalon polycounter lvl 12
    Looks like #2 could still be called a curvature map. In xNormal you can change the curvature map's tone mapping option to "monochrome" and you would get a similar result.
  • EarthQuake
    Options
    Offline / Send Message
    Detail map is probably the best word for it, but even that means something else in a different context.

    Bartalon, yeah its technically a curvature map I guess, but with both convexity and concavity baked into a single channel.
  • FelixL
    Options
    Offline / Send Message
    FelixL polycounter lvl 4
    I've dealt with this in the past, and here are the ways to do curvature maps that I know of:

    Highpoly, no UVs:
    - Vertex colors: bake in max with http://www.rpmanager.com/plugins/TensionMod.htm
    - Zbrush polypaint: bake to vertex color via masking

    High to low, UVs:
    - Xnormal, bake curvature
    - convert tangent space normal to curvature

    Highpoly, with UVs:
    - Use vertex colors from step 1 and bake to texture in 3dsMax
    - PolySurfaceCurvature from the ideascale node pack in MARI
  • Jerc
    Options
    Offline / Send Message
    Jerc interpolator
    If you have an unwrapped high poly mesh, you can bake the curvature in Substance Designer based on the vertices using the standard Curvature baker.
    2 is indeed the exact same thing as 3, but coded in one channel instead of 2.
  • EarthQuake
    Options
    Offline / Send Message
    While the single channel curvature/detail map/whatever you want to call it is sort of a pain to work with, and I would generally recommend baking out a multi-channel curvature map, you can split the content with the single channel map.

    What you need to do is make two copies of the content in photoshop, and then use a curves layer to isolate the highlights (over 128 ), and then a levels layer to fill the range. Do the same with the shadows but isolate under 128.

    splitcavity.gif

    Here's a psd you can use to do the same thing: https://dl.dropboxusercontent.com/u/499159/concavityconvexitysplit.psd

    There, now you have two easy to use maps, one (convexity) for creating masks for edgewear and the like, and another (concavity) great for dust and dirt.
  • slosh
    Options
    Offline / Send Message
    slosh hero character
    I don't even bake a curvature map anymore. You can pretty much convert your normal map to a curvature map with NDO in seconds. It will lack a tad bit of depth compared to a baked curvature map from the highpoly but it should work fine. Funny thing is, it's called "cavity" under the NDO settings.
  • EarthQuake
    Options
    Offline / Send Message
    slosh wrote: »
    I don't even bake a curvature map anymore. You can pretty much convert your normal map to a curvature map with NDO in seconds. It will lack a tad bit of depth compared to a baked curvature map from the highpoly but it should work fine. Funny thing is, it's called "cavity" under the NDO settings.

    Yep, I do this as well, or rather I usually let dDo generate it.

    The biggest problem with doing this vs baking it from a highpoly is that if your normal map has a lot of high contrast gradients to account for the lowpoly smoothing, the resulting maps won't be very accurate. This is generally more of an issue with hard surface stuff where you have a flat surface that is represented with various gradients to account for the lowpoly mesh normals, and less of an issue for organics. What you get then is those gradients baked into the curvature map which can be a pain to work around.
  • slosh
    Options
    Offline / Send Message
    slosh hero character
    That's a great point Earthquake. For now, I've been doing this a lot at work where most of the stuff I do is fairly low poly, organic, and stylized which probably makes it much easier to get away with NDO generated curvature maps.
  • AlphaMix
    Options
    Offline / Send Message
    Thanks for all the replies, very useful. The image I posted was a quick cropped example I made using Ndo, didn't need it for that specific model.

    At least with flat Hard surface models, Ive had the best results letting Ddo create it's own curvature map, which I assume is similar to the one baked with Ndo. Ddo edge detection didn't seem to work very well with a higher depth and gradient filled curvature map, like the ones baked from a HighPoly with xnormal in monochrome mode. I expected it to be the other way around.

    The reason I was asking about baking a curvature map for just a high poly was to be able to do some texturing in Ddo, with light wear effects utilizing edge detection.
  • Thane-
    Options
    Offline / Send Message
    Thane- polycounter lvl 3
    slosh wrote: »
    I don't even bake a curvature map anymore. You can pretty much convert your normal map to a curvature map with NDO in seconds. It will lack a tad bit of depth compared to a baked curvature map from the highpoly but it should work fine. Funny thing is, it's called "cavity" under the NDO settings.

    Yep, I do this as well, or rather I usually let dDo generate it.

    The biggest problem with doing this vs baking it from a highpoly is that if your normal map has a lot of high contrast gradients to account for the lowpoly smoothing, the resulting maps won't be very accurate. This is generally more of an issue with hard surface stuff where you have a flat surface that is represented with various gradients to account for the lowpoly mesh normals, and less of an issue for organics. What you get then is those gradients baked into the curvature map which can be a pain to work around.
    When baking in Knald, is it using the high poly or the normal map to generate its curvature/convexity/concavity maps? Does it have this problem you mention? How would i check?
Sign In or Register to comment.