Home Technical Talk

UV Transfer, Different Topology

polycounter lvl 7
Offline / Send Message
kmacneil91 polycounter lvl 7
Hey guys! I'm trying to figure out how to transfer UVs between models with different topology:

1) Created high-res model in Zbrush, painted and textured
2) Re-topologized in Maya with Quad Draw, so it's a completely new mesh all together
3) Want to transfer UVs from high to low so I can use my normal and texture maps from high-res to new mesh. The UV transfer function in Maya doesn't work, because with the different options it either transfers no UVs or really messes them up
4) I thought there was a way to append the new model in Zbrush and project everything, but that made a mess, too

Thanks for any advice!

Replies

  • respawnrt
    Options
    Offline / Send Message
    respawnrt polycounter lvl 8
    Hey, what you describe sounds to me different than wanting to transfer "uv data".
    It's most likely about taking a very dense mesh (the zbrush one) and transfer shading information(normal map) to your lower poly mesh (the maya one).This is usually called "baking", and it doesnt involve baking "uv's" or tranfering "uv data"; you will need to unwrap the re-topologized mesh in Maya and after that "bake" the details in from the Zbrush one.

    Things might get more complex if you haven't done this before but you can take a look over the polycount wiki.
     




  • kmacneil91
    Options
    Offline / Send Message
    kmacneil91 polycounter lvl 7
    Thanks so much! I'll check into this.
  • kmacneil91
    Options
    Offline / Send Message
    kmacneil91 polycounter lvl 7
    If the low poly mesh is a little bit different in size due to it being completely re-built with Quad Draw, does this affect the outcome? I tried baking in Maya and while the transfer took, there were a lot of messed up areas on the normal map. Thanks!
  • Obscura
    Options
    Offline / Send Message
    Obscura grand marshal polycounter
    In short, yes.
  • kmacneil91
    Options
    Offline / Send Message
    kmacneil91 polycounter lvl 7
    Okay, thank you. What is the best way to avoid this, then, in terms of workflow? What should I have done differently?
  • monster
    Options
    Offline / Send Message
    monster polycounter
    Try posting a couple of screenshots of problem areas and we can offer advice. 
  • kmacneil91
    Options
    Offline / Send Message
    kmacneil91 polycounter lvl 7
    Sure thing, thanks :


  • CreativeSheep
    Options
    Offline / Send Message
    CreativeSheep polycounter lvl 8
    Houdini can do it from what I heard.  
  • kmacneil91
    Options
    Offline / Send Message
    kmacneil91 polycounter lvl 7
    Okay thanks! You mean Houdini can bake with different sizes? Also,  should I have re-topologized differently to maintain the exact same size, though? I haven't tried Topogun but I'm wondering if something like that would give a better result.
  • Obscura
    Options
    Offline / Send Message
    Obscura grand marshal polycounter
    I don't understand how did they get different size if you retopologized the lp on top of the hp.

    Also - Have you tried Zremesher in Zbrush?
  • kmacneil91
    Options
    Offline / Send Message
    kmacneil91 polycounter lvl 7
    Well when using Quad Draw it's difficult to match up exactly, especially around tricky areas like the fingers and hair. Kind of a newbie to it as well. I've used Zremesher but it doesn't give great edgeloops for animation.
  • CreativeSheep
    Options
    Offline / Send Message
    CreativeSheep polycounter lvl 8
    I'm a beginner at Houdini so I need time :) What is the mesh you are trying to reTop ?
  • kmacneil91
    Options
    Offline / Send Message
    kmacneil91 polycounter lvl 7
    Sure thing! :) Just a stylized character mesh created in Zbrush.
  • CreativeSheep
    Options
    Offline / Send Message
    CreativeSheep polycounter lvl 8
    Would you be able to send both meshes and I could try to a method to do the transfer ?
  • kmacneil91
    Options
    Offline / Send Message
    kmacneil91 polycounter lvl 7
    Sure thing! Thanks for being willing to look at these : https://www.dropbox.com/s/myrwi7l2hzw1k4n/Polycount-Test.zip?dl=0
    Here's what the OBJs should look like:

    More than anything I'd just like to learn what to do correctly next time. :)
  • CreativeSheep
    Options
    Offline / Send Message
    CreativeSheep polycounter lvl 8
    Give me a day and I'll see what I come up with and notify you :)
  • Bek
    Options
    Offline / Send Message
    Bek interpolator
    If the low poly mesh is a little bit different in size due to it being completely re-built with Quad Draw, does this affect the outcome? I tried baking in Maya and while the transfer took, there were a lot of messed up areas on the normal map. Thanks!
    If by size you mean some points are more pushed in/out than they are on the highpoly, that's unavoidable when lowering your geometry count, but the bigger the discrepancy the worse the results will be (see the sticky thread on "Who put waviness in my normal maps?"). However, if you mean by "size" that the model is somehow at a different scale (so the new lowpoly is 80% the scale of the original model) then that won't work (excluding the houdini solution which I know nothing about). But I don't see how the latter would occur during retopo.

    In the texture baking wiki Respawnrt linked there's a section on Cage baking. The black shading on your bake looks like missed rays from either an incorrect ray distance or improper cage; if you find some maya tutorials on baking they should clear that up. But simply, if using ray distance, try increasing the total ray distance, if using a cage, check that cage completely envelopes the highpoly.
  • CreativeSheep
    Options
    Offline / Send Message
    CreativeSheep polycounter lvl 8
    KMac geometry is clean; the screen shots may be a OpenGL issue or a bake issue hard to say, update your video card drives as a first step.  Beyond that, trying the various tools and methods I have, you can't transfer UV from a High polygon count to a low poly count, which was probably mentioned up to this point.  

    Although not all hope it lost; KMac what method are you using to bake your normal maps ? You should be able to apply the normal maps from the high resolution mesh to the low resolution mesh the only issue I find with that not working out are the UV's of both the high and low are not aligned identically that is one thing you will have to fix, otherwise you will never get your desired results.  

    Is this character for a game ? What tools do you have for normal transferring ?
  • kmacneil91
    Options
    Offline / Send Message
    kmacneil91 polycounter lvl 7

    Thanks, Bek! I don’t think the low poly has a huge difference in scale (see picture above), but I will definitely have to check out Cage baking. (I currently know nothing about ray distance!)

    CreativeSheep: Thanks again for checking out the geo! I used the transfer maps in Maya (https://www.youtube.com/watch?v=2z0mf4sqvlk ), and I also have access to Zbrush, 3Ds Max, and Mudbox. I wanted to use the character for a short film, really just for practicing the animation pipeline.




  • CreativeSheep
    Options
    Offline / Send Message
    CreativeSheep polycounter lvl 8
    KMac - Bake out your normal map from the high resolution mesh, then apply it to the low resolution mesh; either Zbrush or Mudbox can do this, and so can Max so you have a few options.
  • musashidan
    Options
    Offline / Send Message
    musashidan high dynamic range
    I don't really understand why you are going to all this trouble and why you even have uvs on your high poly?

    Why don't you just unwrap the retop low poly mesh? It's a 10 min job :smile: 

    Then just bake your NM as usual.
  • kmacneil91
    Options
    Offline / Send Message
    kmacneil91 polycounter lvl 7

    That’s the thing – the normal map from the high poly wouldn’t work on low poly because UVs aren't the same.

    Maybe if there was a specific tutorial on this whole pipeline process it would make a little more sense to me… more of a visual learner! I appreciate all the advice, though.




  • CreativeSheep
    Options
    Offline / Send Message
    CreativeSheep polycounter lvl 8
    KMac - That is why you have a low polygon mesh to apply the normal map from the high polygon to the low polygon.  
    That's why you should have sculpted on your low polygon mesh, whether in Mudbox or zBrush, baked out normal map from high resolution, then you simply apply it to your low resolution.

    In my opinion; I would go back two or three steps and completely delete the high polygon mesh, throw it out the window, so to speak.
  • musashidan
    Options
    Offline / Send Message
    musashidan high dynamic range

    That’s the thing – the normal map from the high poly wouldn’t work on low poly because UVs aren't the same.





    But if the high poly has a normal map then what did you bake that from? Is there a higher higher poly? :smile: 
  • seb3d
    Options
    Offline / Send Message
    seb3d polycounter lvl 11
    it was said before but again: the highpoly doesn´t need uv´s if it´s used for baking normal maps to a low poly! 

    your main problem here is that your low and high are to different. like BEK said above: small differences in volume don´t matter. you can not avoid this when there is a huge difference in polycount BUT your meshes are at slightly different proportions/scales and it looks to me that they are oriented differently (and i´m not talking about the fact that they are moved to different positions in your file. i hope that was for demonstration only). with what you uploaded here you will not get a clean bake. (btw. i doubt that houdini has some magic for this). 

    i don´t know ho you got a retopo mesh like this or what you did after but if you don´t have a file where both models match better you should do the retopo again. maybe you can get some way with a wrap deformer .
  • monster
    Options
    Offline / Send Message
    monster polycounter
    KMAC,

    The other guys are giving you good info, but ultimately the problem is your models are not compatible. (See screenshot)
    The low poly is leaning back and has larger hands and feet. There is no way to project normals from the high poly to the low poly.

    I'm guessing that you wanted to edit the proportions after you did the retopo. The correct way to do this is to edit both the low and high together and project again. Or (less optimal) duplicate the low poly before editing, and use the original for projecting.

    For now, I suggest recreating the low poly model on top of the high poly. You could try to re-align your current low poly, but that will probably end up taking the same amount of time as just starting over with it.

  • EarthQuake
    Options
    Offline / Send Message
    I would suggest taking a step back, finding some tutorials on the basics of normal mapping, and trying with a more simple object so you can get the hang of it.
  • kmacneil91
    Options
    Offline / Send Message
    kmacneil91 polycounter lvl 7
    KMac - That is why you have a low polygon mesh to apply the normal map from the high polygon to the low polygon.  
    That's why you should have sculpted on your low polygon mesh, whether in Mudbox or zBrush, baked out normal map from high resolution, then you simply apply it to your low resolution.
    Okay cool, thank you. So this would be the workflow:
    1) Get the basic shape of character down, don't sculpt anything yet
    2) Re-topo
    3) Sculpt on low poly re-topo version (increase subdivisions but have lower divisions still available)
    4) Use normal maps to get detail from high poly onto low subdivision version

    Right? That way the high/low poly have same exact scale, etc. But you wouldn't be able to Dynamesh?

    Instead of what I did:
    1) Get shape of character
    2) Sculpt on high poly
    3) Retopo to make a new model
    4) Try to bake from high poly
  • musashidan
    Options
    Offline / Send Message
    musashidan high dynamic range

    Instead of what I did:
    1) Get shape of character
    2) Sculpt on high poly
    3) Retopo to make a new model
    4) Try to bake from high poly

    This is certainly the most popular method in recent years. It's what I would always do myself. For me, creating a highpoly from nothing is best achieved directly in Zbrush. You can even polypaint your topology onto your high-res in preparation for retop. That way all the hard work is done for you and painting/erasing topology lines is a lot less painful than cutting/welding/etc verts. All the figuring out is done and it's just a matter of tracing the lines for the retopo.

    The bottom line is that it doesn't matter what workflow/tools you use personally, as long as it's efficient and gets the job done.

    And bear in mind that there are essentially 2 distinct types of meshes pertaining to a deforming character for instance:

    There is a sculptable mesh, and an organised(animatable) mesh. So in your example above you thought about sculpting on the retopo mesh. The retopo mesh is the organised mesh used as the final topology for animation, and isn't suitable for sculpting. The sculptable mesh's role is to provide a surface suitable for sculpting(funnily enough:)): i.e - evenly spaced quads; and is not suitable for animation.


  • CreativeSheep
    Options
    Offline / Send Message
    CreativeSheep polycounter lvl 8
    ----------------------------------------------------------------------------------------
    Okay cool, thank you. So this would be the workflow:
    1) Get the basic shape of character down, don't sculpt anything yet
    2) Re-topo
    3) Sculpt on low poly re-topo version (increase subdivisions but have lower divisions still available)
    4) Use normal maps to get detail from high poly onto low subdivision version
    ----------------------------------------------------------------------------------------

    Retop after you have done the sculpting, how you foresee the character should look.  Then as you mentioned; use the high polygon version to exact a Normal map and apply that to the low polygon version.

    ----------------------------------------------------------------------------------------
    Right? That way the high/low poly have same exact scale, etc. But you wouldn't be able to Dynamesh?
    -----------------------------------------------------------------------------------------

    Correct; As for DynaMesh, not sure, maybe you can add to a polygonal model with Dynamesh, maybe you have to convert the polygon model to a DynaMesh, look into it.  I never used ZBrush, only Mud.

    ----------------------------------------------
    Instead of what I did:
    1) Get shape of character
    2) Sculpt on high poly
    3) Retopo to make a new model
    4) Try to bake from high poly
    ------------------------------------------------

    The above method you were doing, erase it from your memory ;)




  • kmacneil91
    Options
    Offline / Send Message
    kmacneil91 polycounter lvl 7
    Thanks guys! Sounds like there are multiple ways of doing things based on which software you're using, etc. Would love to watch any tutorials you guys have followed or know of.
Sign In or Register to comment.