Hey guys. Quick question on smoothing groups.
I've read that you want to keep the group numbers to a minimum on your models when possible. I'm just a bit confused by the wording in this. I'm working in max, so I have a total of 32 smoothing groups. Now say I've made a cube. So six hard surfaces, right? Does the minimum smoothing groups mean I should put 2 faces in '1', 2 in '2', and 2 in '3'? Or for organization could I put a face in each smoothing group and have six separate smoothing groups in Max? I assume it's the latter, because smoothing groups just tell the engine where to split the verts, right?
Just wanted to make sure, because it's a pain trying to plan it out to pack every hard selection into the first 4 or 5 groups. If I don't have to go about it this way, that would be great!
Replies
I know that you're only supposed to use as many as needed. I'll use some pictures to better illustrate what I'm wondering about.
In the top row I'm packing faces into as little numbered groups as possible. In the bottom I'm placing each into its own for better organization. Will doing what I've done in the second row of images actually put more information into the model file and make it less optimized, or are the group numbers just in Max for ease of organization?
For example, let's just say you had a model that had 30 faces, and you wanted each one to be hard-edged for some reason. Would you want to divide the faces up amongst as little numbered groups as possible (Let's say you fit it into 4 of the buttons), or would you be fine in putting each one into its own separate number (So 30 buttons would be 'clicked' for the model)? Are these buttons contained solely in Max, or are the numbered groups information that is passed along with the model once it is exported?
However, if you're keeping it in packages of choice, then any number of normals should be fine.
The context of the question might help more with what I'm asking. I want to know this because when assigning smoothing groups, I don't like trying to pack half the model onto number one, and the rest onto number two. I'd rather take all the split areas (Let's say I have 20 separate UV islands), and put each into its own numbered group for easy selection later. 20 separate groups that I can select by going to "Select by smoothing group." The way I've been doing it is I try to pack everything onto the smallest amount of buttons possible. So if I select smoothing group 1 I might have 7 different UV islands selected.
I hope that makes sense now. I'm sorry if this is just a really silly question. I've just never seen this addressed anywhere and it really bugs me!
[edit] no, the amount of smoothing groups you've used in the max UI has absolutely no relevance, and its only "too much" if you think it is, as you're the only one who will ever need to care about it.
Whats with these "marked" replies? Set up some bookmarks or something if you want to come back to a thread later.
I think you misunderstood what they said, or they're simply blowing smoke up your ass.
A smoothing group has absolutely no direct corelation to performance. Its hard edges/split vertexes that are important(and as noted above, if these hard edges are on uv borders, which they should be for normal bakes anyway, there is no extra cost).
For instance, you could use 4 smoothing groups, and have absolutely 0 hard edges(assign SG's to different mesh chunks), or use 4 SGs to add hundreds of hard edges on your mesh.
You also could have a shoddy exporter, that poops its pants after 4 SG's, but this again wouldn't be a "performance" issue. SG's aren't ever stored in a game mesh in any sort of way, just mesh normals.
If these polys are in this group and its neighbors are in another then the edge between them is hard/broken. If they share groups then its soft/unbroken.
You can have a bunch of broken edges with only two groups just by assigning every other poly to alternating groups. 1,2,1,2,1,2,1,2 ect... You don't need to go 1,2,3,4,5 ect however the performance is the same.
UNLESS there is something else that is pulling info from the smoothing groups. Source uses smoothing groups when creating collision meshes. Each convex piece of a collision mesh is assigned a unique smoothing group. It limits the number of unique pieces to 18 unless you set a flag.
It's set to 32 because some kind of array or bit array limits it to 32 groups. If you had 64 groups that would require two arrays and tracking between them which tracking inside one is already more difficult than it should be. It's an old programmer friendly method that really needs to be redesigned. The way Maya does it makes a lot more sense to a lot of artists and there is a script on script spot that enables max to work that way.
Select edge, decide if it should be hard or soft. So simple, so perfect would save a TON of space in the UI.