request: multiple smoothgroups or hard/soft edges
Moderators: jesterKing, stiv
request: multiple smoothgroups or hard/soft edges
I use BLender for low-poly modeling and think the only main feature it is missing to do this is multiple smoothgroups or hard/soft edges. The only way to do this now is to change everything you want to be in a smoothgroup to a different object, which creates problems by having that many object when imported to a game. A smoothgroup select like in Max with 64 different groups wold be useful. Another way of doing this would be to select which edges are hard of soft as seen in the picture.
http://img12.exs.cx/img12/8439/ac-Smooth.jpg
The select edge in the first picture wold be set to hard and all the others would be set to soft, or the top and bottom halfs would be in seperate smoothing groups.
http://img12.exs.cx/img12/8439/ac-Smooth.jpg
The select edge in the first picture wold be set to hard and all the others would be set to soft, or the top and bottom halfs would be in seperate smoothing groups.
this has been asked many times
I personally hate the idea of smoothing groups, and would rather like an edge specific hard/soft flag [as in wings3d]
my favorite thread on this topic [easy to find others] is:
http://www.blender.org/modules.php?op=m ... pic&t=4141
it seems like it would be much more possible now than in 2.33, but as far as I know it hasn't been implemented [more than subsurf creases]
I personally hate the idea of smoothing groups, and would rather like an edge specific hard/soft flag [as in wings3d]
my favorite thread on this topic [easy to find others] is:
http://www.blender.org/modules.php?op=m ... pic&t=4141
it seems like it would be much more possible now than in 2.33, but as far as I know it hasn't been implemented [more than subsurf creases]
I'd go for smooth/hard edges.
That's where the smoothing has to take place, from one face to the other, over an edge.
How does it work: select an edge or multiple edges, press "smooth" to make smooth or "hard" button to make the edge hard.
An "Autosmooth" button can take a variable and make all edges between connected faces smooth or hard if the angle between the face nornals is bigger or smaller then the given value.
That's where the smoothing has to take place, from one face to the other, over an edge.
How does it work: select an edge or multiple edges, press "smooth" to make smooth or "hard" button to make the edge hard.
An "Autosmooth" button can take a variable and make all edges between connected faces smooth or hard if the angle between the face nornals is bigger or smaller then the given value.
-
- Posts: 46
- Joined: Tue Oct 29, 2002 3:27 pm
- Location: Belgium
-
- Posts: 0
- Joined: Mon Dec 06, 2004 2:22 am
-
- Posts: 0
- Joined: Mon Dec 06, 2004 2:22 am
As I understand it there are different area's where people want this:
-In the model, so they can export the model to other game engines.
game engines mostly work with 1 single object for 1 character and thus it's very usefull to have hard and soft edges in 1 object.
-In sub surf you can't have multiple objects for separating hard and soft edges because it will make holes. The hard/soft info needs to be past on to the subdiv edges.
I'd say you need it in the viewport to see what the user is doing.
-In the model, so they can export the model to other game engines.
game engines mostly work with 1 single object for 1 character and thus it's very usefull to have hard and soft edges in 1 object.
-In sub surf you can't have multiple objects for separating hard and soft edges because it will make holes. The hard/soft info needs to be past on to the subdiv edges.
I'd say you need it in the viewport to see what the user is doing.
Absolutely agree with Joeri.
Wings3d has hard edges and autosmooth (automatically puts the hard edges depending on the threshold angle you set, angle between every two faces, I think. In real cases, is really useful. )
In OBJ, it is exported as "smooth groups" .While I agree max smooth groups has a bad workflow, being hard edges in Wings3d much more clever, the fact is the name the engine coders (the many game engines out there) know is "smooth groups".Obj files (I can't remember if ideasman finally exported smooth groups, now that I think of it, how it could if there's not yet the feature in blender...) do support this feature. Is an ideal format (for other reasons too) fo rthis: it uses to just add a tag , "s" in the ascii file, and all contained in that part is an "smooth group" .but for us woul dbe the same: the hard edges thing would make, I suppose, "groups" internally of faces, limited by hard edges. If i am not wrong.
Obj is very standard too.Good also. Poser exports and understands also smooth groups.
In games, this stuff is really important.
But it can come handy also if you do animations and make not-so hi models...
I specially agree on the Joeri's point of making it visible in the viewport.
No matter the package, it's all the time a tweak-fight with poly count and smoothing: with this weapons(and good texturing) is with what you can achieve quite a good looking game model.
I have used successfully Maya hard edges, Max smooth groups, and Wings hard edges (the workflow I prefer, again, is wings's) .And how ever, it gives a very important step in game art workflow. Specially good modelling static, metal objects, helmets, etc. Is great to set very smooth organic parts while having creasing edges in needed parts. You get this with just autosmooth, if u just set the angles cleverly, but that makes you force the geometry too much. is better the freedom of adding a needed hard edge. And helps you also keep the count really low.
Wings3d has hard edges and autosmooth (automatically puts the hard edges depending on the threshold angle you set, angle between every two faces, I think. In real cases, is really useful. )
In OBJ, it is exported as "smooth groups" .While I agree max smooth groups has a bad workflow, being hard edges in Wings3d much more clever, the fact is the name the engine coders (the many game engines out there) know is "smooth groups".Obj files (I can't remember if ideasman finally exported smooth groups, now that I think of it, how it could if there's not yet the feature in blender...) do support this feature. Is an ideal format (for other reasons too) fo rthis: it uses to just add a tag , "s" in the ascii file, and all contained in that part is an "smooth group" .but for us woul dbe the same: the hard edges thing would make, I suppose, "groups" internally of faces, limited by hard edges. If i am not wrong.
Obj is very standard too.Good also. Poser exports and understands also smooth groups.
In games, this stuff is really important.
But it can come handy also if you do animations and make not-so hi models...
I specially agree on the Joeri's point of making it visible in the viewport.
No matter the package, it's all the time a tweak-fight with poly count and smoothing: with this weapons(and good texturing) is with what you can achieve quite a good looking game model.
I have used successfully Maya hard edges, Max smooth groups, and Wings hard edges (the workflow I prefer, again, is wings's) .And how ever, it gives a very important step in game art workflow. Specially good modelling static, metal objects, helmets, etc. Is great to set very smooth organic parts while having creasing edges in needed parts. You get this with just autosmooth, if u just set the angles cleverly, but that makes you force the geometry too much. is better the freedom of adding a needed hard edge. And helps you also keep the count really low.
Soft hard edges is good for a few resions.
It gives the user manual controle and it takes less computing then autosmooth does.
Its also wysiwyg-
I export to a realtime engine right now, and I use my own basic autosmoothing math, this is in python therefor its fairly slow, There isnt any good way to get this data directly from blender right now. face.no will always give you a flat shaded face and the vertex no will always give you an interpolated vertex normal.
Its possible to use the faces smooth flag to decieded which to use but I think It would be better to keep face smooth flag and just use edge hardness as a smoothing delimiter.
So you would have all faces smoothed by default, then youd harden eny edges you didnt want to smooth.
It gives the user manual controle and it takes less computing then autosmooth does.
Its also wysiwyg-
I export to a realtime engine right now, and I use my own basic autosmoothing math, this is in python therefor its fairly slow, There isnt any good way to get this data directly from blender right now. face.no will always give you a flat shaded face and the vertex no will always give you an interpolated vertex normal.
Its possible to use the faces smooth flag to decieded which to use but I think It would be better to keep face smooth flag and just use edge hardness as a smoothing delimiter.
So you would have all faces smoothed by default, then youd harden eny edges you didnt want to smooth.
How are you calculating it?ideasman wrote:There isnt any good way to get this data directly from blender right now. face.no will always give you a flat shaded face and the vertex no will always give you an interpolated vertex normal.
Couldn't you just compute the smoothed edge normal from both smoothed vertice normals and then compare to the face normal and apply the angle threshold to check if it's smooth or not?
I don't see why that would be slow.
Martin
Life is what happens to you when you're busy making other plans.
- John Lennon
- John Lennon