So when using a cage that's what I get... I used the Max SMB plugin and followed the tutorial to export with a cage. I check the 3D preview and the model's cage is indeed fine. The same cage gets me a decent result using standard RRT.
I have no idea. Also the model that I exported was all tris.
Any pointers?
(Oh, and on the right is the same model, same high-poly but with cage turned off and just using ray distances.
In experimenting with cylinders I have come accross a differences between xNormal and Maya's Transfer maps:
I have just started using xNormal so I'm not too sure what's going on exactly, but the Maya result seem superior. anyway I can get xNormal to look as good? what might be going on to produce those artifacts?
I'm trying to bake my texture from Zbrush high res, using the GUV tiles method. When I bake it out in XNormal my base texture keeps coming out solid Red. I'm plugging in the PSD in the High res slot too, other then that I just have my high res and low res in normal spots. What am I missing here?
Oh you work wonders! Was an intense few moments while I stared waiting to see the red fill the uv shell again. "Make the triangle-soup already!" Thank you sir, the balance is restored.
Hi, I tried to search the thread for this issue, but couldn't find it. I have installed xNormal without any problems. However when I go to bake the normals I receive an error that says, "sorry. Can't find the Normal plug-in."
Is there something wrong, or am I doing something wrong?
I'm new at this, so this may sound stupid. What is a cage when talking about xNormal? I'm having troubles with making an AO and I fear that may be the issue.
Hi, I tried to search the thread for this issue, but couldn't find it. I have installed xNormal without any problems. However when I go to bake the normals I receive an error that says, "sorry. Can't find the Normal plug-in."
Hmmmm... strange.... Please, try this:
1. Uninstall xNormal.
2. Delete all the files from Documents\xNormal ( specially the XML and .dat ).
3. Remove the HKCU\Software\Santiago Orgaz\xNormal entry from the registry and see if that helps.
4. Re-install xNormal.
xNormal exporter hangs-up when there is FlatIron modifier in the stack! Watch for this issue.
Ok, I'll take a look :poly136:
d. What is a cage when talking about xNormal?
A cage is a way to control the rays's length. They are used to avoid the rays to hit undesired parts of your model.
See this excellent Poop's tutorial ( for 3dsmax... but you can still apply the theory for xNormal ): http://www.poopinmymouth.com/tutorial/normal_workflow.htm
xNormal allows you to limit the rays using several methods: uniform ray distances(just a fixed numeric distance), blockers(like anti-portals), cages(which are like an extrussion of the model following its normals) and MatchUV(used for subdivided models).
For simple non-organic models usually the uniform ray distances is just enough. To know a good value to use you can use the xNormal's ray distance calculator tool or just use a tape in 3dsmax.
For complex/organic retopoed models should use cages. A cage is just the lowpoly model extruded following its normals. The mechanism is very simple: rays are fired from the cage to the mesh(so, from the exterior to inside), colliding with the highpoly model. To create a cage you can use several methods:
1. External cages. Just clone and extrude your mesh in your favourite app until it covers completely the HP mesh. The save as .OBJ and use it in xNormal as "external cage file". Sure the "Use shortest diagonal" is disabled in the Plugin Manager->current tangent basis calculator you you'll have problems... and remember: the cage must use EXACTLY the same topology than your LP mesh.
2. Use the XNormal's built-in cage editor.. Enter the 3D viewer. Check in the "show cage" and "edit cage" options. Move the extrussion slider until the cage covers completely the HP mesh. Move vertices if needed ( select them with the middle mouse button ). Once you're happy with the result press over the "Save meshes" blue button and answer "yes" to the auto-assign question. Exit the 3D viewer and generate your maps.
3. If you're a 3dsmax user I have goods news for you: xNormal comes with the SBM exporter which can export your Projection modifier's cage directly to xNormal. So, just setup your cage in 3dsmax and then save you Edit mesh using the SBM format. In xNormal, just assign the SBM mesh to the LP slot and sure you check in the "Use cage" option.
Hiya guys, as I've been playing a LOT of Battlefield recently I've been admiring some of their models in game. So I thought I'd have a bash at a simple asset. the shipping container.
Heres a little WIP. Got to add some details to the front door yet, but I just wanted to see if I had unwrapped the LP right.
Anyway I've ran into a small issue. Im not too sure if its the way I've unwrapped it, ot if theres too little/much edge padding on the bake, but im getting seems along the hard edges.
Its strange really, transfer maps in maya is giving me smooth normal edges along the UV boarders, but then details like the bolts and inserts are warped even though I've added edges to compensate, and XNormal is doing the complete opposite. Nothings warped but all the "hard" edges have seams. BTW im using an edge padding setting of 12/16 with no difference.
You can see here below.
Heres the Normals
(XNormal)
(Mayas Transfer Maps)
You can see on the Maya version that the 2 inserts along the bottom are skewed a little, even the front door is warping along the indents. Ive added extra edges along these details not really being too bothered about tris count to try and combat this to no avail.
Heres my UV's
Can any of you XNormal guys see where I've gone wrong. I'd love your help.
Are you sure your exported your object to have the hard edges in xnormal? Like open up the low poly one and see if your hard edges are still on it or its made it all into one grouping (smoothing groups if your a max vet).
Yeah I've checked this. They've carried over into XNormal fine.
Thing is now I've had to tweak the UV's to get the normal looking good and now some faces look stretched...
Bit annoying, cant find any other solution at the minute.
In regards to unwrapping, all you need to ensure is that for every hard edge in 3d space, you have a break at that edge in UV space. Do that and everything will bake fine in that respect.
However, your issue looks different to that.
How are you baking in xNormal? Are you using a cage or a uniform ray distance?
If you are using hard edges without a cage, then you will get those sort of errors in xNormal. Add a cage and you will be fine
You will prob. want to export a cage from Maya, using a copy of your LP mesh that has something like a push modifier on it (before the hard edges are applied to the mesh), as when using smoothing groups and the internal cage feature in the 3d viewer, will give you the same results as above due to there being gaps in the cage.
Remember that the cage mesh need to have the same topology/tri./vert. count as the LP mesh, or it wont work
In regards to unwrapping, all you need to ensure is that for every hard edge in 3d space, you have a break at that edge in UV space. Do that and everything will bake fine in that respect.
However, your issue looks different to that.
How are you baking in xNormal? Are you using a cage or a uniform ray distance?
If you are using hard edges without a cage, then you will get those sort of errors in xNormal. Add a cage and you will be fine
You will prob. want to export a cage from Maya, using a copy of your LP mesh that has something like a push modifier on it (before the hard edges are applied to the mesh), as when using smoothing groups and the internal cage feature in the 3d viewer, will give you the same results as above due to there being gaps in the cage.
Remember that the cage mesh need to have the same topology/tri./vert. count as the LP mesh, or it wont work
Hope that all makes sense
Yeah man, thanks for the reply. Just been looking into this and I'm getting this error in XNormal.
Error
Invalid function parameter 'cage' : The cage mesh polySurfaceShape153 inside C:\Users\BreaK\Desktop\Low Cage.SBM does not have the same number of vertices than the mesh Default inside the file C:\Users\BreaK\Desktop\low.obj
What im doing is like you said, duplicating the LP model in Maya, making it fit the HP, and exporting as an .SBM.
I've searched the problem and found that unchecking the Shortest Diagonal First option is supposed to fix it but its not for me.
Yeah man, thanks for the reply. Just been looking into this and I'm getting this error in XNormal.
Error
Invalid function parameter 'cage' : The cage mesh polySurfaceShape153 inside C:\Users\BreaK\Desktop\Low Cage.SBM does not have the same number of vertices than the mesh Default inside the file C:\Users\BreaK\Desktop\low.obj
What im doing is like you said, duplicating the LP model in Maya, making it fit the HP, and exporting as an .SBM.
I've searched the problem and found that unchecking the Shortest Diagonal First option is supposed to fix it but its not for me.
Stumped. Any suggestions?
Hmm, I would have suggested Shortest diagonal first thing, but if that doesn't work, it must be that your mesh has a different number of verts/faces etc.
Is the cage 100% topologically identical to the LP mesh (including UV islands, verts, smoothing groups/hard edges/faces etc.?) Is there any way that the sbm is adding or removing information? Can you try exporting the cage as .obj and see if that works? Also try triangulating the LP mesh and then making the cage (or triangulate them separately if you can be sure the triangulation will produce the same results in both meshes)
Not too sure if this will help anyone but I kinda found a solution.
After re-installing XNormal, I duplicated the object, adjusted the verts to form a cage and exported it as an OBJ.
This worked in XNormal, but gave me a warped normal map. Similar to Maya's transfer maps, the edges were conforming and looked great, but the indents and door details were warped.
I decided to bake out a map in XNormal using no cage, just the calculate ray distance tool. This result gave me perfectly formed details, but none of the edges conformed and gave me the same result as my above post.
Then it was just a case of using the caged normal map with good edges, and cutting and pasting over the warped details with the perfectly formed ones from the uncaged version.
Since when has it been this hard to generate a normal map!?
Thanks for all your help once again. Here's the result.
You are getting a skewed bake because the the rays are being averaged along the length of the object. To control this, you need to add some loops close to the edges of the affected parts, which will give you a better bake
Just a quick paintover to show what I mean...you will have to add some more in other parts, but you get the picture
Yeah, I thought it was something to do with this. Im retrying this process using your help I'll post my results up soon.
One more thing. Is it better to use say, a 1024x1024 texture, or because of the objects shape a 2048x1024? When does using a texture size like this apply. (Rectange)
Also, a little off topic again, but is there a tool in maya to offset UV's in the UV Editor by -1?
I'm not sure about a tool that would offset the UVs for you, but there must be a way to do this manually. I use Blender so, I cant be much help in that regard
You could definitely mirror the sides and delete the bottom (unless its going to be seen somehow) which would give you a higher texel ratio, so you could prob. get away with a 1k map, but it would be worth testing it out with a 1x2k to see if it fits better, but most of the time a square map works well.
The only time you would ever use a non square texture, is if it fits better, or you cant get a good enough texel density because you have a long piece (like a utility pole etc.)
Also, its worth remembering that in some applications, using a non-square map often takes as long to render as rendering a square map of larger dimensions, so a 1x2k map would take as long to render as a 2x2k map etc. I'm not sure if this is the case with xNormal, though. Rendering AA is extremely slow in xNormal and rises linearly with the size of the map, so its often faster to render at double res. and then resize down to get the 4xAA that we all love so much
Hey guys,
after discovering how crappy Blender's normal map render feature is, I decided to try xNormal. I'm at my second bake and already ran into issues :-/
Here's what I'm having a problem with:
As you can see, I've got some weird distortion going on near the edges and it's NOT the shading on the lowpoly or highpoly (at least not directly). Both models are fine when viewed separately but when I apply the baked normal map to the lowpoly, I get the result above. How do I fix this?
I am getting an issue everytime I try and make a cage in Maya for my object. I duplicate my LP and then selecte faces, extrude outward. Some have open holes so I delete the extra faces created. They have the exact same tri count, vert count, face count and so forth. It seems if I use extrude in Maya I am unable to use that mesh as my cage. Gives me an error that my object has "at face 0 a vertex index that doesn't match the the correspondent one from mesh Default inside the file such and such."
It seems that if I do anything beyond scaling the verts in Maya I can no longer use that mesh as my cage.
Never had this issue in Max when using the Shell modifier.
Autocon: I think the problem here is the vertex number, since each vertex has a number this changes when you delete faces and so on, I might be wrong tough
"I only use the push tool and move,rotate,scale faces in max"
Autocon: I think the problem here is the vertex number, since each vertex has a number this changes when you delete faces and so on, I might be wrong tough
"I only use the push tool and move,rotate,scale faces in max"
Ah yeah true, true. Was just hoping it wasn't the issue since the faces that had the original verts were the same, but that was wishful thinking I guess. Damn Maya for not having the Push Modifier!
Hmmmm seems like even triangulating your mesh manually not in the exact same order as you do your cage, it will make your cage completely unusable. Thats pretty damn annoying
Hmmmm seems like even triangulating your mesh manually not in the exact same order as you do your cage, it will make your cage completely unusable. Thats pretty damn annoying
Can you try unchecking "shortest diagonal first" in the Plugin Manager> Triangulators> Default Triangulator and see if that works?
ahh ok. In previous versions it was on by default.
I guess the only way to fix this is to use something like the equivalent to "scale along normals" in Maya, with the whole mesh. If you create any new faces, then everything will break. You could use the built in cage in the 3d viewer. That is guaranteed to work (though not with hard edges)
Is there a solidify or shell modifier in Maya? I use something similar in Blender and it works fine. I just delete everything but the pushed parts.
I am getting an issue everytime I try and make a cage in Maya for my object. I duplicate my LP and then selecte faces, extrude outward. Some have open holes so I delete the extra faces created. They have the exact same tri count, vert count, face count and so forth. It seems if I use extrude in Maya I am unable to use that mesh as my cage. Gives me an error that my object has "at face 0 a vertex index that doesn't match the the correspondent one from mesh Default inside the file such and such."
It seems that if I do anything beyond scaling the verts in Maya I can no longer use that mesh as my cage.
Never had this issue in Max when using the Shell modifier.
A ghetto workaround that has worked for me sometimes is just putting the cage into the low poly slot, I've tested it a few times and get the same result as having the normal low poly with a cage.
For making cages though, the best way to do it in maya I have found is to change the move settings to "Normal", and then move the verts along their normals in vertex mode, and it works sort of like extruding the mesh, but retains vert order. You also get the ability to create a non-uniform cage useful for things like fingers or inner thighs where the cage can end up intersecting.
I'm having the same issues with the LP and cage not having the 'same number of vertices'.
I use the same method every time. Sometimes it works, other times it just refuses to work. Amazingly frustrating. I love the speed of xnormal, but now that I've begun using cages for practically everything, this problem is getting out of control.
Cage: Transfer maps, select 'envelope' from drop down, unparent from original low poly, delete history, export
This works like half the time. What a hassle too.
I haven't followed this thread for all 90 pages, but in the last few pages it seems like others are having the same problems. What a great tool, but I'm about ready to pull my hair out over this.
I'd love it if this 'same number of verts' was more consistent for me - or I could do it with less steps.
EDIT: It looks like expanding the mesh with the move tool is much more consistent.
i was wondering if there were an error log somewhere. i've tried my hand at using the commandline to run several AO bakes overnight, and basically all it does is load up xnormal, flash me a window for about .1 second, and then exit..
Can't seem to load an fbx from Blender. Says memory is protected when trying to bake.
Using the latest build from the xN site. Before updating today, this sort of fbx worked...
Otherwise, happy new year for xNormal, hope eveything is going well.
I was trying to find answer to that but no luck . What is the workflow for baking low poly AO to low poly ? Like baking low poly AO in 3ds max without projection.
There's the simple AO tool, or you could bake from Low to Low (using your low poly model in the HP slot). However, my results have been pretty shit, with triangles showing on the resulting maps. it helps to subdivide (tesselate) the low poly you will bake from a couple of times.
I was trying to find answer to that but no luck . What is the workflow for baking low poly AO to low poly ? Like baking low poly AO in 3ds max without projection.
I usually just put the LP in the HP slot and bake as I would normally (as if there was a HP mesh, instead of 2 LP meshes).
I'm having the same issues with the LP and cage not having the 'same number of vertices'.
I use the same method every time. Sometimes it works, other times it just refuses to work. Amazingly frustrating. I love the speed of xnormal, but now that I've begun using cages for practically everything, this problem is getting out of control.
I got the same problem yesterday. I don't know if it's your case, but mine was caused by the triangulation. Since the cage is a little bit more bigger than the LP, some vertex are more closer than other, in this case some quads can triangulate differently. My solution was to first triangulate my cage before to push it, by this way the vertex order of the cage and the LP is exactly the same.
I know it's quite obvious, but since it tooks me 30 minutes to figure out that was the problem I share my solution.
I'm having the same issues with the LP and cage not having the 'same number of vertices'.
I use the same method every time. Sometimes it works, other times it just refuses to work. Amazingly frustrating. I love the speed of xnormal, but now that I've begun using cages for practically everything, this problem is getting out of control.
Cage: Transfer maps, select 'envelope' from drop down, unparent from original low poly, delete history, export
This works like half the time. What a hassle too.
I haven't followed this thread for all 90 pages, but in the last few pages it seems like others are having the same problems. What a great tool, but I'm about ready to pull my hair out over this.
I'd love it if this 'same number of verts' was more consistent for me - or I could do it with less steps.
EDIT: It looks like expanding the mesh with the move tool is much more consistent.
I got the same problem yesterday. I don't know if it's your case, but mine was caused by the triangulation. Since the cage is a little bit more bigger than the LP, some vertex are more closer than other, in this case some quads can triangulate differently. My solution was to first triangulate my cage before to push it, by this way the vertex order of the cage and the LP is exactly the same.
I know it's quite obvious, but since it tooks me 30 minutes to figure out that was the problem I share my solution.
Which version of xNormal are you both using?
It's uncheced as defualt in the most recent versions but you might want to check that the "Shortest diagonal first" option is unchecked in Plugins> Triangulators> Default Triangulator> Configure> Shortest diagonal first
This can cause the topology to change on the meshes by flipping triangles differently when xNormal automatically triangulates the meshes before baking.
It's uncheced as defualt in the most recent versions but you might want to check that the "Shortest diagonal first" option is unchecked in Plugins> Triangulators> Default Triangulator> Configure> Shortest diagonal first
This can cause the topology to change on the meshes by flipping triangles differently when xNormal automatically triangulates the meshes before baking.
It's a 3DS Max setting ? From what I see in Maya I don't have the possibility to set how the mesh is triangulated.
It's a 3DS Max setting ? From what I see in Maya I don't have the possibility to set how the mesh is triangulated.
This is a setting in xNormal. To reach the settings, click the plug icon that is located at the bottom left of the GUI.
When processing the meshes before a bake, xNormal will automatically triangulate them if they contain quads and with the "Shortest diagonal first" option checked, it can sometimes triangulate the LP mesh and the cage differently, even though the topology is the same for both the cage and LP mesh.
This is a setting in xNormal. To reach the settings, click the plug icon that is located at the bottom left of the GUI.
When processing the meshes before a bake, xNormal will automatically triangulate them if they contain quads and with the "Shortest diagonal first" option checked, it can sometimes triangulate the LP mesh and the cage differently, even though the topology is the same for both the cage and LP mesh.
Hooo, I see !
I'm wondering why I have never clicked on this icon before. Thx mate !
I was wondering is it possible to bake without this little seam I get ? Its uv island seam and border between smoothing groups. I use sbm exporter and use cage. Is this seam something I should live with ? ;p or is it something I can do about it ?
This normal map fragment is this bulging out section.
I was wondering is it possible to bake without this little seam I get ? Its uv island seam and border between smoothing groups. I use sbm exporter and use cage. Is this seam something I should live with ? ;p or is it something I can do about it ?
This normal map fragment is this bulging out section.
What are you viewing the normal map in? You must remember that xNormal is not synced to Maya or 3dsMax's tangent basis, so unless you view your maps in something like blender (which xNormal uses their current tangent basis calculation) you won't get things looking exactly right.
I view in 3ds max (with Y changed to ' - '). Does it mean I will never get good results with max ? I'm trying to switch to xNormal since its faster and better.
Actually I started with different seam with which I wasn't happy so I changed UV and rebaked. The former seam looked like that (screen from marmo but I got it in max, xnormal viewer etc). It was in such a bad place (chamfered edge with seam at the centre ?...naaaahhh) I tried to change the uvs. One way or another I'm getting those seams. Anything I can do ? (sorry for the crappy img. I hope you can notice the seam and the form of an object)
hello everyone!
i have a trouble with baking color map. highpoly source is from zBrush and GUVtiles are flipped verticaly before export from zBrush.
everything is baking right except color map... tried not flipping uvs before exporting color map from zBrush, but no luck here. hope for the help, thanks!
teho: That looks similar to an issue I've had when trying to bake down the vertex color data from Zbrush. Here is two things I would try:
1. Make sure you a clearing all masking before you export your .obj from Zbrush. A good way to ensure this is to use Subtool Master to export out your .obj and check on "Clear Masking" and "Show Hidden Points"
2. Make sure you are unchecking "Ignore per-vertex-color" on your High Definition Mesh in Xnormal when you bake the color map
just wondering if anyone's had an issue, where exporting both a mesh and a cage as .obj from 3ds max has xNormal throwing up an error that their vertex counts do not match?
it works if i export as .3ds, but then there are some annoying seam issues due to 3ds splitting along verts uvw seams.
Replies
So when using a cage that's what I get... I used the Max SMB plugin and followed the tutorial to export with a cage. I check the 3D preview and the model's cage is indeed fine. The same cage gets me a decent result using standard RRT.
I have no idea. Also the model that I exported was all tris.
Any pointers?
(Oh, and on the right is the same model, same high-poly but with cage turned off and just using ray distances.
I have just started using xNormal so I'm not too sure what's going on exactly, but the Maya result seem superior. anyway I can get xNormal to look as good? what might be going on to produce those artifacts?
EDIT:
I also posted this over at Eat3d.com and have been getting some valuable responses.
Is there something wrong, or am I doing something wrong?
1. Uninstall xNormal.
2. Delete all the files from Documents\xNormal ( specially the XML and .dat ).
3. Remove the HKCU\Software\Santiago Orgaz\xNormal entry from the registry and see if that helps.
4. Re-install xNormal.
Ok, I'll take a look :poly136:
A cage is a way to control the rays's length. They are used to avoid the rays to hit undesired parts of your model.
See this excellent Poop's tutorial ( for 3dsmax... but you can still apply the theory for xNormal ):
http://www.poopinmymouth.com/tutorial/normal_workflow.htm
xNormal allows you to limit the rays using several methods: uniform ray distances(just a fixed numeric distance), blockers(like anti-portals), cages(which are like an extrussion of the model following its normals) and MatchUV(used for subdivided models).
For simple non-organic models usually the uniform ray distances is just enough. To know a good value to use you can use the xNormal's ray distance calculator tool or just use a tape in 3dsmax.
For complex/organic retopoed models should use cages. A cage is just the lowpoly model extruded following its normals. The mechanism is very simple: rays are fired from the cage to the mesh(so, from the exterior to inside), colliding with the highpoly model. To create a cage you can use several methods:
1. External cages. Just clone and extrude your mesh in your favourite app until it covers completely the HP mesh. The save as .OBJ and use it in xNormal as "external cage file". Sure the "Use shortest diagonal" is disabled in the Plugin Manager->current tangent basis calculator you you'll have problems... and remember: the cage must use EXACTLY the same topology than your LP mesh.
2. Use the XNormal's built-in cage editor.. Enter the 3D viewer. Check in the "show cage" and "edit cage" options. Move the extrussion slider until the cage covers completely the HP mesh. Move vertices if needed ( select them with the middle mouse button ). Once you're happy with the result press over the "Save meshes" blue button and answer "yes" to the auto-assign question. Exit the 3D viewer and generate your maps.
3. If you're a 3dsmax user I have goods news for you: xNormal comes with the SBM exporter which can export your Projection modifier's cage directly to xNormal. So, just setup your cage in 3dsmax and then save you Edit mesh using the SBM format. In xNormal, just assign the SBM mesh to the LP slot and sure you check in the "Use cage" option.
I hope it helps.
Heres a little WIP. Got to add some details to the front door yet, but I just wanted to see if I had unwrapped the LP right.
Anyway I've ran into a small issue. Im not too sure if its the way I've unwrapped it, ot if theres too little/much edge padding on the bake, but im getting seems along the hard edges.
Its strange really, transfer maps in maya is giving me smooth normal edges along the UV boarders, but then details like the bolts and inserts are warped even though I've added edges to compensate, and XNormal is doing the complete opposite. Nothings warped but all the "hard" edges have seams. BTW im using an edge padding setting of 12/16 with no difference.
You can see here below.
Heres the Normals
(XNormal)
(Mayas Transfer Maps)
You can see on the Maya version that the 2 inserts along the bottom are skewed a little, even the front door is warping along the indents. Ive added extra edges along these details not really being too bothered about tris count to try and combat this to no avail.
Heres my UV's
Can any of you XNormal guys see where I've gone wrong. I'd love your help.
Thanks in advance. BreaK.
Thing is now I've had to tweak the UV's to get the normal looking good and now some faces look stretched...
Bit annoying, cant find any other solution at the minute.
In regards to unwrapping, all you need to ensure is that for every hard edge in 3d space, you have a break at that edge in UV space. Do that and everything will bake fine in that respect.
However, your issue looks different to that.
How are you baking in xNormal? Are you using a cage or a uniform ray distance?
If you are using hard edges without a cage, then you will get those sort of errors in xNormal. Add a cage and you will be fine
You will prob. want to export a cage from Maya, using a copy of your LP mesh that has something like a push modifier on it (before the hard edges are applied to the mesh), as when using smoothing groups and the internal cage feature in the 3d viewer, will give you the same results as above due to there being gaps in the cage.
Remember that the cage mesh need to have the same topology/tri./vert. count as the LP mesh, or it wont work
Hope that all makes sense
Yeah man, thanks for the reply. Just been looking into this and I'm getting this error in XNormal.
Error
Invalid function parameter 'cage' : The cage mesh polySurfaceShape153 inside C:\Users\BreaK\Desktop\Low Cage.SBM does not have the same number of vertices than the mesh Default inside the file C:\Users\BreaK\Desktop\low.obj
What im doing is like you said, duplicating the LP model in Maya, making it fit the HP, and exporting as an .SBM.
I've searched the problem and found that unchecking the Shortest Diagonal First option is supposed to fix it but its not for me.
Stumped. Any suggestions?
Is the cage 100% topologically identical to the LP mesh (including UV islands, verts, smoothing groups/hard edges/faces etc.?) Is there any way that the sbm is adding or removing information? Can you try exporting the cage as .obj and see if that works? Also try triangulating the LP mesh and then making the cage (or triangulate them separately if you can be sure the triangulation will produce the same results in both meshes)
Fingers crossed!
Despite what type of file I save it as I'm still getting the same error.
I know its exactly the same as the LP mesh because its a duplicate of the LP mesh. But XNormal doesn't seem to think it is.
I'm going to uninstall/reinstall XNormal, and re-export all my meshes again see if that works. This is a nightmare.
Thanks again.
After re-installing XNormal, I duplicated the object, adjusted the verts to form a cage and exported it as an OBJ.
This worked in XNormal, but gave me a warped normal map. Similar to Maya's transfer maps, the edges were conforming and looked great, but the indents and door details were warped.
I decided to bake out a map in XNormal using no cage, just the calculate ray distance tool. This result gave me perfectly formed details, but none of the edges conformed and gave me the same result as my above post.
Then it was just a case of using the caged normal map with good edges, and cutting and pasting over the warped details with the perfectly formed ones from the uncaged version.
Since when has it been this hard to generate a normal map!?
Thanks for all your help once again. Here's the result.
Let me know if you see anything wrong with it.
Just a quick paintover to show what I mean...you will have to add some more in other parts, but you get the picture
Yeah, I thought it was something to do with this. Im retrying this process using your help I'll post my results up soon.
One more thing. Is it better to use say, a 1024x1024 texture, or because of the objects shape a 2048x1024? When does using a texture size like this apply. (Rectange)
Also, a little off topic again, but is there a tool in maya to offset UV's in the UV Editor by -1?
So i can normal map duplicate faces?
You could definitely mirror the sides and delete the bottom (unless its going to be seen somehow) which would give you a higher texel ratio, so you could prob. get away with a 1k map, but it would be worth testing it out with a 1x2k to see if it fits better, but most of the time a square map works well.
The only time you would ever use a non square texture, is if it fits better, or you cant get a good enough texel density because you have a long piece (like a utility pole etc.)
Also, its worth remembering that in some applications, using a non-square map often takes as long to render as rendering a square map of larger dimensions, so a 1x2k map would take as long to render as a 2x2k map etc. I'm not sure if this is the case with xNormal, though. Rendering AA is extremely slow in xNormal and rises linearly with the size of the map, so its often faster to render at double res. and then resize down to get the 4xAA that we all love so much
after discovering how crappy Blender's normal map render feature is, I decided to try xNormal. I'm at my second bake and already ran into issues :-/
Here's what I'm having a problem with:
As you can see, I've got some weird distortion going on near the edges and it's NOT the shading on the lowpoly or highpoly (at least not directly). Both models are fine when viewed separately but when I apply the baked normal map to the lowpoly, I get the result above. How do I fix this?
It seems that if I do anything beyond scaling the verts in Maya I can no longer use that mesh as my cage.
Never had this issue in Max when using the Shell modifier.
"I only use the push tool and move,rotate,scale faces in max"
Ah yeah true, true. Was just hoping it wasn't the issue since the faces that had the original verts were the same, but that was wishful thinking I guess. Damn Maya for not having the Push Modifier!
I guess the only way to fix this is to use something like the equivalent to "scale along normals" in Maya, with the whole mesh. If you create any new faces, then everything will break. You could use the built in cage in the 3d viewer. That is guaranteed to work (though not with hard edges)
Is there a solidify or shell modifier in Maya? I use something similar in Blender and it works fine. I just delete everything but the pushed parts.
A ghetto workaround that has worked for me sometimes is just putting the cage into the low poly slot, I've tested it a few times and get the same result as having the normal low poly with a cage.
For making cages though, the best way to do it in maya I have found is to change the move settings to "Normal", and then move the verts along their normals in vertex mode, and it works sort of like extruding the mesh, but retains vert order. You also get the ability to create a non-uniform cage useful for things like fingers or inner thighs where the cage can end up intersecting.
Depending on the mesh, the reported value has been anywhere between ~40 and ~220.
Tried baking with low-poly in FBX and SBM (using OBJ as high-poly) and get the same error.
Any ideas?
I use the same method every time. Sometimes it works, other times it just refuses to work. Amazingly frustrating. I love the speed of xnormal, but now that I've begun using cages for practically everything, this problem is getting out of control.
Steps:
Low Poly: Triangulate mesh, delete history, export low poly
Cage: Transfer maps, select 'envelope' from drop down, unparent from original low poly, delete history, export
This works like half the time. What a hassle too.
I haven't followed this thread for all 90 pages, but in the last few pages it seems like others are having the same problems. What a great tool, but I'm about ready to pull my hair out over this.
I'd love it if this 'same number of verts' was more consistent for me - or I could do it with less steps.
EDIT: It looks like expanding the mesh with the move tool is much more consistent.
i was wondering if there were an error log somewhere. i've tried my hand at using the commandline to run several AO bakes overnight, and basically all it does is load up xnormal, flash me a window for about .1 second, and then exit..
Using the latest build from the xN site. Before updating today, this sort of fbx worked...
Otherwise, happy new year for xNormal, hope eveything is going well.
I got the same problem yesterday. I don't know if it's your case, but mine was caused by the triangulation. Since the cage is a little bit more bigger than the LP, some vertex are more closer than other, in this case some quads can triangulate differently. My solution was to first triangulate my cage before to push it, by this way the vertex order of the cage and the LP is exactly the same.
I know it's quite obvious, but since it tooks me 30 minutes to figure out that was the problem I share my solution.
Which version of xNormal are you both using?
It's uncheced as defualt in the most recent versions but you might want to check that the "Shortest diagonal first" option is unchecked in Plugins> Triangulators> Default Triangulator> Configure> Shortest diagonal first
This can cause the topology to change on the meshes by flipping triangles differently when xNormal automatically triangulates the meshes before baking.
It's a 3DS Max setting ? From what I see in Maya I don't have the possibility to set how the mesh is triangulated.
When processing the meshes before a bake, xNormal will automatically triangulate them if they contain quads and with the "Shortest diagonal first" option checked, it can sometimes triangulate the LP mesh and the cage differently, even though the topology is the same for both the cage and LP mesh.
I'm wondering why I have never clicked on this icon before. Thx mate !
Hope it works!
I figured out what I was doing wrong, and it has nothing to do with triangulation and all that...
I was setting one low poly object in xnormal to use a cage and at least one NOT using a cage in the same bake. Xnormal doesn't seem to allow this.
Here I was exporting over and over without success - being meticulous about my process. I don't know if that helps anyone else.
This normal map fragment is this bulging out section.
What are you viewing the normal map in? You must remember that xNormal is not synced to Maya or 3dsMax's tangent basis, so unless you view your maps in something like blender (which xNormal uses their current tangent basis calculation) you won't get things looking exactly right.
I get this seam in xNormals viewer too.
i have a trouble with baking color map. highpoly source is from zBrush and GUVtiles are flipped verticaly before export from zBrush.
everything is baking right except color map... tried not flipping uvs before exporting color map from zBrush, but no luck here. hope for the help, thanks!
1. Make sure you a clearing all masking before you export your .obj from Zbrush. A good way to ensure this is to use Subtool Master to export out your .obj and check on "Clear Masking" and "Show Hidden Points"
2. Make sure you are unchecking "Ignore per-vertex-color" on your High Definition Mesh in Xnormal when you bake the color map
it works if i export as .3ds, but then there are some annoying seam issues due to 3ds splitting along verts uvw seams.