Home Technical Talk

Assembling baked normal maps?

Steve Green
polycounter lvl 18
Offline / Send Message
Steve Green polycounter lvl 18
Hi,

This may be a very basic question...

Since it is a lot easier to break down normal map baking into separate pieces, and assemble them later - is there an easy way of taking lots of TGA files with alpha and assembling them into one file?

Kaldera has a bitmap composer which does this, but I wondered if there's another way of doing it rather than by hand in Photoshop if I didn't have Kaldera to hand?

Thanks,

Steve

Replies

  • KDR_11k
    Offline / Send Message
    KDR_11k polycounter lvl 18
    Well, how does it break 'em up?
  • Steve Green
    Offline / Send Message
    Steve Green polycounter lvl 18
    That's just the way the Max Render to Texture works with multiple targets as far as I can see.

    The render to texure/projection mapping is done on a per object basis, so you don't get problems with objects getting in the way of others when baking. Everything has it's own UV space, so once they are done you just need to overlay the separate renders into one texture map.
  • Eric Chadwick
    Hi Steve!

    We have a lot of problems with intersections/overlaps here too, have to combine the maps ourselves. Happens when we have two surfaces really close to one another, like deep in a crease of the high-res model. Especially for mechanical models where there are a lot of creases and angular extrusions. We have to separate our models into chunks to cast them separately, then recombine the maps in 2D. It's a pain in the ass, frankly.

    We do it in Photoshop. We set Kaldera to output 32bit TGAs, then use the alphas to copy/paste each bitmap into a single master, since the alpha follows the edges of the UVs. I wonder if RTT sets the alpha properly?

    You could set up a Photoshop Action, we're just too lazy! Or we aren't doing enough volume to make it worthwhile.

    Hey, does max 7's RTT also bake an occlusion pass? Or do you have to set up a skylight yourself?
  • Steve Green
    Offline / Send Message
    Steve Green polycounter lvl 18
    Hi Eric,

    the problem I had with Photoshop was that if you loaded the selection using the alpha, then it wouldn't get placed in the correct position when pasted back down, and if I selected everything, then it wouldn't respect the alpha.

    I don't really use Photoshop that much (more of a Painter man really) so I must be doing something wrong...

    Any reason you're not using the Bitmap Composer in Kaldera?

    Max 7's RTT puts the skylight pass in the lighting map output, but you have to put a skylight in manually. For some reason skylight doesn't seem to work the first time I render it, but it seems OK after that.

    I haven't used Kaldera in a while, I can't remember if it allows for named selection sets to be used for a session - at least that would save having to break up the model.

    Cheers

    Steve
  • pior
    Offline / Send Message
    pior grand marshal polycounter
    [ Side note for Eric ]

    Hey Eric, I don't get it. Why do you want to render the chunks separately? You can do everything in one render pass... You just need to 'cut' the model in pieces, move them around using a fix common distance (I personnaly use 25, 50, 75, 100 units distances) along either X Y or Z, render the nmaps with this 'exploded' meshes, and then stitch the whole model together. You save the 'recombine' step this way, I guess it works rather well in most cases smile.gif
  • MoP
    Offline / Send Message
    MoP polycounter lvl 18
    The setup Pior described is what I did recently, it appears to work fine... I split up the high and low poly elements to match, then moved them out on various axes at values of 111 or 222 units (it's faster to type wink.gif ) ... that way I didn't have to combine anything in the normalmap, it was all there already.

    Although I can understand there would be some instances where this method wouldn't work.

    For an occlusion pass, you have to add a skylight... I just assign a pure white material to the highpoly object, set the skylight colour to white, and render out a CompleteMap - obviously for this you can't use the "split apart" method, because then the shadows would be wrong... but it's easy to combine these in Photoshop, simply using Screen mode (since the background/shadows are black, and the diffuse is white).

    Would it not be possible to use Screen mode for normal-map combining too, since I assume the background of the "empty space" in your maps is black? Then you can just click and drag the separate images all into one file with a black background, and set all their modes to Screen.
    I just tested that here, and as long as all the blank areas are black, it should be fine.

    MoP
  • Kevin Johnstone
    Offline / Send Message
    Kevin Johnstone polycounter lvl 19
    The reason multiple passes are sometimes required is because different areas may require you grab information from greater depths. When this problem is combined with the already establish problem of overlap from one area to another, simply exploding the model alone will not solve it.

    It's not always simply a solution to grab everything as a higher depth as then there will be warpage of straight lines on straight surfaces into slight curves that produced pixelated normal maps.

    Its a pain sometimes yes, but when it generally requires no more than you process the file twice, once with a short grab distance and once with a deep grab, it only take a short time to cut and paste back together in photoshop.

    I usually use textporter to export a mask of all my UV coords so I can simply expand that selection a little and trim the excess off from each image.
  • pior
    Offline / Send Message
    pior grand marshal polycounter
    Thanks for the info Ror, it makes sense. It's always neat to hear stuff from the poeple 'in the know' like you smile.gif
Sign In or Register to comment.