Home Technical Talk

more xnormal woes!

polycounter lvl 17
Offline / Send Message
seforin polycounter lvl 17
hello guys and gals and all inbetween , well I spent a big chunk last night reading and playing with xnormal and finally figured out a few things.....now heres the issue, at the moment every time I Try to render out my character in a 2048 map no matter what I do the results come out way to stiff and clumpy, while as a max bake they come out nice and smooth and detailed, these come out with major forms but lack details (Such as my face he wont have any of the details aroudn the eyes I made or anything!)

so at first I tried the method where you use the cage via in xnormal and push it out save that mesh in the 3d view and reupload to your low poly and make it be the new 3d cage , tried that, and for some reason every time I baked the mesh looked like it was punched in the stomach (intersected on itself)

so then I tried playing with the max ray distance numbers which seem to give me the best results, buuuuuuuuuuuuuuuuut for some reason the resulted maps baked but the details were either barely there or fuzzing out, and when it was close to the details they looked OVERLY hard and stiff (which in my skulpt they are not doing!) So I made sure I had smooth selected and such and still looked very hard edged!

I tried playing with the different settings / filters tried different sizes (max I went was at 2048) and still all the results were the same....I want my maps to bake out similar to the details captured in the example file of the black head guy in there......what am I doing wrong?


oh by the way I went as far to try and import my projected cage via max , but then I Read that it only works with max 9.0 and not 8.0 frown.gif

So im Fresh out of luck , someone please shed some light on this!



flats.jpg

flatlow.jpg

xwtf.jpg


EDIT: I Was going to remake a duplicate example to show since I didnt save my others, now im getting weird cross hatch lines going across my mesh! And now it went from really crisp to BRARELY there!

Seriously how did it break this bad! I blame johny! tongue.gif

Replies

  • Ruz
    Options
    Offline / Send Message
    Ruz polycount lvl 666
    The normal map seems inside out for one thing. try flipping the green channel in pshop.
    The normal map also looks faceted. I think there is a setting in xnormal like smooth uv's or similar.
  • Joao Sapiro
    Options
    Offline / Send Message
    Joao Sapiro sublime tool
    did you run fine detail or something ? right now it seems that it has a texture combined.
  • MoP
    Options
    Offline / Send Message
    MoP polycounter lvl 18
    Yeah, check the fine detail tab in xnormal, it looks like you're applying a texture for some reason.

    Also the green channel is inverted. I wish people would stop saying "flip the channel" since that implies a mirroring action horizontally or vertically. The correct thing to do is to select the green channel and invert it in PS.

    The easiest way to avoid that is to set the "Swizzle" values in XNormal, select the Green dropdown and change it to Y- if it's on Y+ (which it is by default). I think that's in the "..." button next to the normals and displacement area in the normal map tab of XNormal.
  • Ruz
    Options
    Offline / Send Message
    Ruz polycount lvl 666
    semantics shmantics MoP:)
    I shall carry on flipping my channels thank you
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    Remember to reset X Form before exporting.

    Btw, avoid the 3ds2max OBJ exporter that comes with MAX... it does not export well the vertex normals sometimes. Use the ASE or 3DS ones or, even better, the xNormal .SBM exporter ( optionally with a Projection modifier over an Edit Mesh if possible ).

    Oh, and there is a problem exporting 2048x2048 maps with AA currently with less than 4Gb installed. If you get an out of memory message just disable the dilation filter or the AA. I'm working to solve it asap.
  • MoP
    Options
    Offline / Send Message
    MoP polycounter lvl 18
    [ QUOTE ]
    semantics shmantics MoP:)
    I shall carry on flipping my channels thank you

    [/ QUOTE ]

    Not really semantics. "Flipping" is a very different action to "Inverting". If you tell someone to "flip" a channel in Photoshop, that in no way indicates that they should be looking for the "Invert" command, especially when Photoshop contains a different command called "Flip" for mirroring the canvas.

    I know you're only trying to help, and that's great, but I'd much rather people actually used the correct terms when providing help, to minimise confusion especially when the person asking for help might not fully understand the process.
  • EarthQuake
    Options
    Offline / Send Message
    Have you seen someone actually mirror the channel when they've gotten this advice? Its semantic, relax. You're flipping the values, or you're inverting the values, its the same shit.
  • doc rob
    Options
    Offline / Send Message
    doc rob polycounter lvl 19
    you all need to shut your filthy mouths before I flip out and invert some faces.



    You see what I did there?
  • seforin
    Options
    Offline / Send Message
    seforin polycounter lvl 17
    oh sweet baby jesus 20 thousand replys and not one that I really understand// really can go about using correctly, well look im going to go through the entire process step by step and someone see if they spot something wrong

    first off im a max 8 service pack 3 user


    I then go into z-brush export a mid sub d and go back into max a rebuild a low poly cage based around that , sizing is near exact, or exact enough that it should normal map uv unwrap and project in max to test unwrap before hand as well (all is gravy)

    step1.jpg

    I then go to export the mesh as a .OBJ for the low poly for max (For this test I decided to export as a .smb file for testing purposes) I go back to z-brush grab uber detail mesh and export that as well.

    We now are presented with the low and high poly meshes and I then go and open x-normal

    step2.jpg

    In the low definition mesh I make sure I have "Smooth normals" checked, for the most part and in theory these numbers and everything should work (usually I play with the ray distance to be from .5 to .500 - .700)

    step3.jpg

    ok with that out of the way I then go into my normal map testing

    I then usually keep these settings on as my for I have tested everything else and the results either A: suck or b: cause my pc to lock up (That experimental render does that for some reason, dunno why)
    step4.jpg

    anyway so at this point I then bake out my maps and do not touch much of anything else via x-normal , my results are as followed after this test

    Result = that punched in the stomach look I spoke of, that cross hatch line from before was a result from playing with presets and forgetting to turn off fine detail setting (Thanks on that one) But as you can see the results arent satisfactory, so unless someone sees a issue in the process im doing this please tell me

    also final result

    profit.jpg
  • Joao Sapiro
    Options
    Offline / Send Message
    Joao Sapiro sublime tool
    your highpoly in zbrush doesnt align with the lowpoly you have smile.gif
  • seforin
    Options
    Offline / Send Message
    seforin polycounter lvl 17
    [ QUOTE ]
    your highpoly in zbrush doesnt align with the lowpoly you have smile.gif

    [/ QUOTE ]

    Johny that top image is the aligned versions of my mesh, how are they not aligned?
  • Joao Sapiro
    Options
    Offline / Send Message
    Joao Sapiro sublime tool
    "I then go to export the mesh as a .OBJ for the low poly for max (For this test I decided to export as a .smb file for testing purposes) I go back to z-brush grab uber detail mesh and export that as well."


    but you say then you export from zbrush, the model in zbrush the uber detail one might not be aligned , import the lowpoly into zbrush and see if tehy align and let u sknow.
  • seforin
    Options
    Offline / Send Message
    seforin polycounter lvl 17
    IhateThis.jpg

    Nah its aligned, im still in the WTF mode right now
  • Ruz
    Options
    Offline / Send Message
    Ruz polycount lvl 666
    check your rexport settings in Zbrush, you may have the import/export dialogue set to 'flip y' and 'flip z'
    can't you check in xnormal model viewr if the two are aligned?
    (Sorry I don't have xnomral installed on my new machine yet, just working from memory here)
  • doc rob
    Options
    Offline / Send Message
    doc rob polycounter lvl 19
    did you do what jogshy said? reset Xform and collapse?
  • seforin
    Options
    Offline / Send Message
    seforin polycounter lvl 17
    let me try and redo it with x-form rolling.

    Ok reseted the x-form and rexported it via xnormal format and not OBJ this time my mesh projected............BUT the mesh is projecting much like I spoke of, very hard and undetailed.

    I also had smooth normals checked as well

    1-9.jpg
    2-10.jpg

    much how I said before it captures major forms but like 0 of my details to be honest it makes them all rough looking while in z-brush they dont look like that (also im using a 2048 map , so it shouldnt be a size issue for the map)
  • Joseph Silverman
    Options
    Offline / Send Message
    Joseph Silverman polycounter lvl 17
    Open the normal map in photoshop, go to channels -> green, and invert it.
  • seforin
    Options
    Offline / Send Message
    seforin polycounter lvl 17
    and flipping the green channel seem to do it, seriously WTF man , why was the green channel all wonky this entire time?

    itworks1.jpg
    itworks2.jpg
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    Some things:

    1. Avoid to use the 3ds2max OBJ exporter. It does not export well the vertex normals. If you are forced to use it sure you enable the "smooth normals" xNormal option n case you have problems.

    If you use ZBrush or Silo sure you set the correct options to export the model in standard OpenGL/Maya/XSI right-handed coordinate system. I think is called "flipX" and "flipY" in ZB.

    2. You can remove the black sand image filter. It applies a median filter and that's not good for a normal map. Just use it if you get too many black points in the AO map and the dilation filter cannot kill them. In general, you won't need to use the sand filter ( and blurs a lot your maps btw ).

    3. In theory there is no need to use Photoshop to flip/invert/whatever is called. Just use a swizzle of X+Y-Z+ if you are going to use the normal map in 3dsmax or UE3.
    I can explain a bit more why you need this: xNormal, Maya, OpenGL and XSI use a right handed coordinate system with UV origin at left-bottom. 3dsmax and Direct3D uses a UV origin at top-left. To convert UVs into 3dsmax system I need to do 1.0f-UV.y ... which affects the tangent space green(Y) axis. That's why "inverting" or "fliping" or "swizzling" the green(Y) axis works.

    4. Avoid to use "uniform ray distances". Better use cages, you will get much better results. Just grow the cage until the highpoly model is completely covered.
  • seforin
    Options
    Offline / Send Message
    seforin polycounter lvl 17
    jogshy: Every time I tried to expand its cage it just got all messy , is there a issue with that or something? Or im just not using it correctly?
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    [ QUOTE ]
    jogshy: Every time I tried to expand its cage it just got all messy , is there a issue with that or something? Or im just not using it correctly?

    [/ QUOTE ]
    There are three ways to use cages in xNormal:

    1. Use the built-in editor. Enter the 3D viewer and check the "show cage" and "edit cage"... Play with extrusion and vertices until the highpoly mesh is completely covered by the cage. Then, re-save mesh as OVB or SBM so cage information will be written.

    2. Use external cages. Once your lowpoly model is finished, clone it. Extrude cloned object's vertices until they cover the highpoly model. Save the cage as a separate file. Enter xNormal and assign it on the lowpoly list ( right click, browse external cage file ).

    Very important: Don't alter the cloned or original object topology, or external cage will be invalidated. Both original and external cage must contain the same number of faces and vertices.

    3. If you use 3dsmax, use the projection modifier. To work, need to be applied over an Edit Mesh modifier. Then, save meshes using the SBM exporter and sure you check the "Export cage" option. If could not be exported some messages will appear into the log window.

    And remember... cage won't be used if you don't check the "use cage" option on the lowpoly list... even when is present. So sure you don't forget to check this important option or the cage won't be used!

    Post some screenshots if ya want and I could tell you more.
  • seforin
    Options
    Offline / Send Message
    seforin polycounter lvl 17
    jogshy: I remember reading in your PDF that max 8 isnt supported with the cage exporter is that bug fixed or no?
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    [ QUOTE ]
    jogshy: I remember reading in your PDF that max 8 isnt supported with the cage exporter is that bug fixed or no?

    [/ QUOTE ]
    Max 8, 9 and 2008 should work ok.
    Max 6 or 7 are other history tongue.gif
Sign In or Register to comment.