Home Marmoset

Tutorial: Displacement Mapping in Marmoset Toolbag.

As promised, here is the next in our ongoing series of tutorials for Marmoset Toolbag. This one covers the technical side as well as some contention creation advice(what sort of geometry/content to avoid, image formats, etc).

Displacement Mapping Tutorial

I really wanted to highlight the displacement mapping features here as I'm not sure how many people even know that Toolbag supports it. You do need a DX11 card as well as Windows Vista or newer to use it though.

Replies

  • Saman
    Offline / Send Message
    Saman polycounter lvl 14
    Oh, wow. I had no idea marmoset supported displacement maps. I'll be playing around with that on my next project ;)
    Thanks for the tutorial!
  • disanski
    Offline / Send Message
    disanski polycounter lvl 14
    Another awesome tutorial and I just got new video card that has dx11 and this write up makes me very happy :) I could not find any info on the subject in the past and was not sure if the displacement map rendered in max was the kind of map I need :) I guess the info you provided regarding image formats, geometry and everything else is the same for UDK and Cryengine so yeah...thanks a lot man:)
  • Avanthera
    Offline / Send Message
    Avanthera polycounter lvl 10
    Awesome! Short and straight to the point, like always. :)
  • Jeff Parrott
    Offline / Send Message
    Jeff Parrott polycounter lvl 19
    Thanks for this EQ! Definitely makes me want to get a DX11 card. Good job on making it straight forward and easy to understand.
  • EarthQuake
    Saman: Yeah we rolled the displacement mapping feature out without much fanfare, so its good to get this tutorial out if only to let everyone know that we support it!

    disanski, Thanks man, glad you find it useful. Yeah as far as I know we're doing pretty much industry standard techniques here for the technical stuff goes, so the meat of the tutorial should be pretty much universal to other engines, and you will also be able to quickly test stuff out in Toolbag before sending it off to another engine.

    Aventhera: Thanks, glad you like it.

    Jeff: Thanks, yeah that is a big goal of mine, to make it all straight forward and easy to understand, I hate that feeling of reading through technical manuals or whatever and feeling like I have barely any understanding of the tool/app when I'm done.
  • ceebee
    Offline / Send Message
    ceebee polycounter lvl 14
    Good stuff EQ, thanks man! :D

    Now to try this stuff out on my next game res character :D
  • TrampledUnderFoot
    Offline / Send Message
    TrampledUnderFoot polycounter lvl 7
    Do you think this will be applied to FPV weapons and hard surface stuff in the near future? Or is it mainly going to be used for hero characters and large assets? Is it worth it for most hard surface types, or will most just benefit from more geometry and a robust normal map.

    I'm curious to know how it will change workflows if it's used for technical hard surface stuff, where everything needs to be modeled in for it to generate the displacement map properly.

    Really cool technology either way, hope to be getting marmoset here pretty soon.
  • EarthQuake
    Personally I think Displacement Mapping is going to be most useful for organics, characters, rocks, environment stuff like damaged buildings or rocky roads.

    For hard surface props like weapons, items etc I don't really think its as useful. You need to have really accurate shapes for hard surface work while organic work is generally more forgiving, so it works better there. The standard tessellation method also results in some uneven topology, which again hinders accuracy for precise mechanical shapes.

    Though I haven't really given it a proper go, I would be curious to see how well hard surface assets hold up when constructed specifically for Displacement Mapping.
  • TrampledUnderFoot
    Offline / Send Message
    TrampledUnderFoot polycounter lvl 7
    That's pretty much how I figured it would be. I'd be interested in seeing someone do some hard surface work with it as well.
  • EarthQuake
    So after I wrote this tutorial I was reading over some of the comments in the suggestion thread and started thinking about a terrain system. While Toolbag doesn't support tiling blended layers like you would typically have for terrain materials yet, you can get pretty good looking terrain by importing a simple plane and applying a displacement map to it.

    I've been messing with World Machine, which is awesome and spits out normal and displacement maps(though I did have to flip the normal horizontally for some reason). This is a 4K map from WM loaded into Toolbag with some simple work in photoshop for the diffuse.

    worldmachinetb02.jpg

    This is lit primarily with a spotlight as well, using the volumetric haze to fake a bit of fog. I'm doing a couple lighting specific articles next, one that goes over all of the lighting tools, and another that covers typical lighting styles for character presentation.
  • [Deleted User]
    Offline / Send Message
    [Deleted User] insane polycounter
    The user and all related content has been deleted.
  • EarthQuake
    Really great EQ thanks for putting this together, I'll be trying some of this tonight.

    Great, if you come up with anything interesting feel free to post some shots!

    Its a feature that hasn't been used a lot yet so any feedback we can get on ways to improve it, and really just seeing the creative ways people come up with to use displacement mapping will be really valuable to us.
  • Renaud Galand
    Offline / Send Message
    Renaud Galand polycounter lvl 19
    Thx again for this awesome tutorial, man! :) I'll make sure to give it a go with my next personal piece.
  • JohnnyRaptor
    Offline / Send Message
    JohnnyRaptor polycounter lvl 15
    awesome, thansk for making that tut! been thinking about using some displacement for my next realtime char and with this tut it will be a breeze!
  • deadpixl
    Offline / Send Message
    deadpixl polycounter lvl 9
    Wow, that is awesome. Thanks for the tutorial, and another reason to own Marmoset Toolbag.
  • demonslayer
    Offline / Send Message
    demonslayer polycounter lvl 3
    Hello,
    i have to dig this out again.
    iam only used to export displacement maps out of zbrush.
    youre able to tell zbrush to write a 32bit float exr with informations only in the red channel.
    Can toolbag handle this red channel data?
    When i import that exr into toolbag i set the scale center (strange description) to 0.5 and adjust the scale slider.
    This does not lead to fine tesselation no matter which subdiv method i choose above the displacement settings.

    What am i doing wrong?

    It would be helpfull if you had some tutorial about that.As you might imagine - zbrush is one of THE softwares to get strong displacements from..
  • EarthQuake
    Hello,
    i have to dig this out again.
    iam only used to export displacement maps out of zbrush.
    youre able to tell zbrush to write a 32bit float exr with informations only in the red channel.
    Can toolbag handle this red channel data?
    When i import that exr into toolbag i set the scale center (strange description) to 0.5 and adjust the scale slider.
    This does not lead to fine tesselation no matter which subdiv method i choose above the displacement settings.

    What am i doing wrong?

    It would be helpfull if you had some tutorial about that.As you might imagine - zbrush is one of THE softwares to get strong displacements from..
    Firstly, can you show a screenshot of the problem?

    Secondly, scale center defines the gray point or zero point, the value in the texture map at which no displacement occurs. This is usually 50% gray, hence the default setting of 0.5.

    Thirdly, yes EXR files should work, but you can try PSD if you're having problems.
  • demonslayer
    Offline / Send Message
    demonslayer polycounter lvl 3
    thanks for getting back at me.
    ok iam just not getting it right.
    i use a scale center of 0.5 as i want to be the midgrey -> zero
    it results in an inflated mesh even with so small scale values of 0.002.
    that interpretation is pretty strange.
    As my units should fit (check scene scale). 1cm should be the right value.

    With a mid value of zero i get a better result?(last image)

    no displace:


    displace:


    Scale_center_ at zero "0"


  • ironbearxl
    Offline / Send Message
    ironbearxl polycounter lvl 18
    @demonslayer have you tried baking it in Marmoset? I think the problem with Zbrush is that it doesn't use cages. I found that Mudbox had the same issue until I switched it to raycast cage method.
Sign In or Register to comment.