Hello,
Can someone tell me what i need to setup in max to avoid edges on objects when a normal map is projected on them? I set the padding alreday to the max of 64 but it doesn't change a bit on the object.
Same object without stiched UVs works perfect, basically just the stitched areas show the edges in the engine or max...
Replies
Without pictures I can only guess as to what the problem is.
i will post later a screenshot, but it is a simple cube, no smoothing groups, i just used the turbo smooth modifier.
by the way, where i can get a good script for triangulate objects in max ?
The best way to triangulate is the non destructive way, in Max, add a "Turn to poly" modifier on your low poly, and set the "Number of Sides" to 3. This way you you can make changes to your low later if needed, working in triangles sucks.
i will post some screenshots tomorrow
I would like to see
1. your uvs
2. your low poly with no normal map and only smoothing groups
3. your low poly with only the normal map applied with a dark diffuse and high-ish spec, 80 or so.
On the HP Object is a turbosmooth modifier applied. As i wrote if there are not stitched together, it works fine.
@earthQuake i tried both ways, before and after triangulating the objects.
You have two options.
Break apart your uv islands based on the smoothing groups you have here.
Or the reverse,
Set your smoothing groups by your uv islands, which in this case, would be to make the entire cube have 1 smoothing group.
An image, unknown author: http://i.imgur.com/YgC0V.png
In an unsynced workflow, for this case you would want to set the smoothing groups at harsh angles ~80°.
Also to make sure, are you using a cage to do your bake?
@Quack That means, i have to set for the whole lp object the smooting group 1 and than back it again ? thats all ?
@EarthQuake when i split the UVs, the object isn't any longer seamless ?
i mean what is now the right way if you bake something for games? Is there any good tutorial about this? i found some about baking normals etc but i found no tutorial about this whole smoothing groups thing and how to do it right ....
You are correct, your object will no longer be seamless. If you want seamless, you will have to chamfer your edges, leave it all as 1 smoothing group and bake that way.
The result you posted looks correct for an unsynced workflow.
Some good tuts:
http://www.handplane3d.com/videos.html
http://www.polycount.com/forum/showthread.php?t=118043
You should read this entire thread, don't skim: http://www.polycount.com/forum/showthread.php?t=81154
what you mean by unsynced workflow ?
Correct, that is expected. You have to fix this. Chamfer the edges of the low poly using 1 smoothing group(matching the high poly as close as possible), or split the uv shells and split the smoothing groups.
Are you baking with a cage?
for solution number two, when i split the uvs, in know the probleam disapperas but the object isn't any longer seamless in this case
i think i will watch the tutorials in the links first ti get a better understanding of this here, casue i'm a little bit lost right now. many thanx for the links!
in the endit is always an "it depends" and no "do it this way" whats the bst solution is very much case dependent, polygons ad vertices will not block you that much these days, but texturecompression might hit you bad with one SG on one object, as sogt gradients are much harder to compress than one value over a majority of the uv shell.
In the case of concrete i just leaved the stitching and i think it looks still good, or not ?
But i also noticed that the edges in shadow areas are not really smmoth...
The 'best' would be to match the highpoly as close as possible. So the best would be to chamfer the cube and use 1 smoothing group AND bake with an averaged cage.
This time i was using different smoothing groups and the uvs are not stitched together. the texture is the same size like the rendered map in max.
i will try today also the other way with one smoothing group but what you mean with averaged cage?
to me it looks correct besides the diffuse texture having a seam
this looks like lack of padding to me, but really it is hard to say, could you post your textures as well?
Even with a synced pipeline you will still have problems getting a 6 quad cube to render correctly, its simply beyond the technical ability of a tangent space normal map. This may seem like a simple task, but its actually one of the most stressing things you can do with a normal map.
A synced pipeline means that the normal map baker and the renderer/game engine all use the exact same math (bi-normals and tangents). There is quite a bit of variance between different pieces of software. If youre using a common game engine like Unity or UDK you can bake an object space map and use handplane to convert it to a tangent space map with the correct tangent basis.
All that aside, I think generally you've got the wrong approach here. It looks like youre trying to bake soft edges onto very large pieces of concrete. In a game environment, you wouldn't do it like this. You would use a tiling concrete texture and add bevels to give the model smooth edges. Otherwise you will need way too many textures which uses too much memory. Modern hardware can render very, very many triangles, but we never really have as much texture memory as we would like.
no really if the shading looks bad in the lowpoly, gets super black around the corners you should consider changing that, it can work and will work in many cases, but considering that your maps will be compressed you should think about lowering the amount of soft gradients inside your normalmap.
A synced workflow can only take you as far as compression lets you
Now i'm trying to bake a normal for a cylinder but there are again some problems, it seems like the normal didn't work at all on the corners...