PDA

View Full Version : Bevel Problems


Charlotte
03-13-2008, 09:14 AM
Hi guys :)

I've a question for you.. there is something strange in a work that I'm doing (and I don't succeed to find a solution).
This is the screen:

http://www.zoefactory.com/Loki/XSI/BevelProblem.jpg

Well, when I use "bevel" on the edges of this object I have strange defects on the surface, as you can see, and this problem appears in rendering, not only in viewport.

The object is really simple: I've tried to use weld, to eliminate some of the edges... but nothing! The only thing that I can do is to use "HardEdge" on the edges that I've to bevel but it creates discontinuity on the surface... (I've tried to modify also the values of discontinuity)

How can I do it? There is something that is not as I think it should be...

Well, thank you in advance :)

Adrian Lazar
03-13-2008, 11:09 AM
it's quite common, happens because the object is low poly (has only one big polygon in the area where the problem appears)

You can redo the object with more polygons and after you bevel the edges you apply a smooth operator or you can use hard edges as you said or you can just duplicate the polygons that have this problem using CTRL+D but the result is similar when using hard edges.

Loki
03-13-2008, 12:51 PM
I found today a temporary solution to this annoying problem.

The concept is to close the artifact in a little space, near the bevel. If you build an outline edge around the bevel, the artifact disapperar on the surface.
However, creating edges would be annoying and would slow down the workflow, especially with more complex objects.
So, I found this process:

- Select the Edge you want to bevel
- Right click and select Disconnect Components
- Bevel the edges just a bit more than desidered radius (this operation creates the outline I'm talking about)
- Now, select all the Boundary Edges and Weld them together.
- With the Edges still selected, Bevel them, now with the desidered radius.

Now, your model sould be correct

In this way, you don't need to rebuild the model or made it too heavy applying tassellations. Even more, this way don't stretch or spoil your texture projection (if the model already have it)

I'm not able to write a script to automatize this solution but I think it shouldn't be so hard to script.
Anyone could script it?

ace63
03-13-2008, 07:41 PM
Another way to solve this is to select the polygons which are badly shaded and run an Inset Polygons operator on them - creates extra polys but gets rid of the shading issues.

kim aldis
03-15-2008, 03:57 AM
Adrian; it's not just because it's low poly, if you get your geometry right you can build beveled objects like this without adding much, if at all, to what's already there.

Charlotte, either the inset poly solution, which will keep you a nice, smooth bevel, or mess with your automatic discontinuity settings, which may not keep things smooth on the bevel.

Quick explanation why; think about how flat polys on a sphere appear rounded. Same thing.

I'm going to write an article about this, it comes up a lot.

giant551
03-15-2008, 07:34 AM
Hey guys, this is how i would go about this, I think the problem here Charlotte is the way you have built the geometry. As said previously insetting the poly's would help anyway I've done a little picture to illustrate. But as with everything in 3D there is a dozen ways of skinning a cat (or polygon!) So I'm not saying this is the best way but its straight forward.

cheers

http://i6.photobucket.com/albums/y248/giant551/bevel.jpg

kim aldis
03-15-2008, 08:20 AM
or you could use the TinyThickness -www.kim-aldis.co.uk -tool to add the depth and bevels. It has a 'fix' button to fix top face shading curvature.

</plug>

Charlotte
03-15-2008, 10:59 AM
wow.. thank you guys! there are a lot of suggestions..! Thanks kim aldis for your explanations :) I've tried Loki's method and the method of the inset. This one, indeed, resolves the problem of the shading but at the same time it creates problems on the objects that are already mapped. Instead, the method that Loki has recommended works well, also on the objects that are already mapped because it doesn't create stretch on the texture projections. This is a screen.. in this way you can see the differences:

http://www.zoefactory.com/Charlotte/XSI/BevelSolutions.jpg

AlanMc
03-15-2008, 11:28 AM
This is an interesting thread as a bevel is one of the simplest features to add to a model. However, it can prove tricky.

I have to say that an even more challenging bevel is window within a curved surface such a a sphere. I have tried many ways to obtain a clean surface and the best I have found so far is using Kim Aldis' TinyThickness plug-in.

Also, a large amount of geometry helps as well.

One, thing always puzzles me is how do you quickly reverse or alter a bevel when modelling. I find it difficult to regain the original surface. Any thoughts on this issue?

Regards,
Alan

kim aldis
03-17-2008, 01:01 PM
In fact the inset method still isn't quite right; shading on the longer bevels is still getting pulled out by their neighbours on the corners.

A trick, which I've not seen used for the best part of 20 years, is to flag surfaces which will be removed from normal calculation on other faces. Using this method you can get nice small rounded edges with only one face. This would require a custom operator but it does work very well

skovron
04-04-2008, 10:35 AM
It's a very interesting thread.

I've got problems with bevel too. I know there are many ways of doing something but what do you advise for modeling mechanical parts:
1) use sub-d and add many many geometry to keep it's almost-hard edges
2) play with geometry aproximation, lower the angle value at which normals start to blend together and try to adjust angles on bevels
3) turn of (in geometry approximation) blending of normals, the geometry will be very hard and then add many bevels in places where I need to make some round corners

I'm modeling simple space ship and I can't make some surfaces look like made of steel, flat but with subtle bevel around some edges.

Can't attach images right now.

kim aldis
04-04-2008, 11:02 AM
The correct answer is:-

4) Understand why it does it and work accordingly.

skovron
04-04-2008, 02:23 PM
:)
Well, I can understand why the beveled parts look like they look. I know about averaging normals and how it works.
I'm confused mainly about using subdivision for modeling mechanical parts. It looks great but adds so much geometry to the model that it's hard to manage later, for example when I need to bevel edges running through other beveled edges.

I'm curious, when they use chamfer (same as bevel ???) in 3dsmax it looks great for the first time. Chamfer seems to not average/blend normals on edges but when they use same technique for spherical or cylindrical parts, it gets nice smooth. Is it about using different angle threshold for averaging normals (45 degrees instead of XSI's default 60)? or maybe they use smoothing groups? I've seen many video tutorials about modeling mechanical parts in 3dsmax and they only use chamfer and don't even touch smoothing groups and everything just looks great.

I don't complain on XSI. I just can't achive same effect as in max.

toma
04-12-2008, 04:57 AM
if you render in xsi with mental ray you can use the "rounded_corner" shader, it's perfect for micro bevel and you don't have to model the bevel, keeping your geometry more easy to edit…

skovron
04-14-2008, 02:58 AM
Thanks. I'll try this kind of beveling. Does this add new geometry during rendering or is it only some trick done by the shader? I'm afraid it doesn't allow me to make different bevels in different places and only apply small bevel to whole mesh. Anyway it's nice feature.

toma
04-14-2008, 05:32 AM
it's just a bump effect at the material level, so the radius can be different for each material.

Werner
05-19-2008, 04:01 PM
You don't need more geometry to fix the problem.

Bevel the edge, then go to Get / Property / Geometry Approximation / Poly Mesh tab and slide the Discontinuity Angle slider lower then the default 60 deg. This will fix the smoothing angle.

Let me know if it works.

Loki
05-19-2008, 04:29 PM
No Werner... it doesn't work

kim aldis
05-20-2008, 04:26 AM
There's a trick that's possible with normals - not out of the box with XSI - where you tag faces as 'highlight' faces. Such faces don't contribute to normal averaging and the result, with small thin faces, is a nice highlight edge that solves most of the rounding problems with standard normal calculation. As I said, not with standard XSI but there is, or used to be, a normal editing plugin that would let you do this. Anyone know if it's still around?

norvman
05-20-2008, 09:48 AM
Try this... only bevel the edges you need...

440

441

kim aldis
05-20-2008, 09:50 AM
check see how that shades.

norvman
05-20-2008, 01:54 PM
Okay yeah ... I see what you mean... it does need a bit of GeoApprox Adjustment
442

kim aldis
05-20-2008, 03:43 PM
was that picture your solution because it still looks wrong to me.

norvman
05-20-2008, 06:07 PM
As far as the broad side of the part goes yes... that is the rendering error is not there partly due to not beveling everything ... and also due to having to do a bit Geometry Approximation adjustment...

however there are Ngon polys in the object that might have to be reworked...

So yes and no... on the solution end of it...

as far is it looking 'wrong' ... please explain more... I'm not sure what your saying

Thanks

kim aldis
05-21-2008, 10:08 AM
if it's to shade properly it should shade smoothly from the front face, which should appear flat, right around the bevel - actually it's a round, not a bevel - and into the side faces which should also appear flat. Your solution, adjusting the auto discontinuity, introduces a shading discontinuity which is incorrect.

kim aldis
05-21-2008, 10:35 AM
Everybody underestimates the difficulty of solving this problem using modeling methods alone. It looks simple but it's very, very nasty. The best way to fix it is to frig the normals. This is almost certainly what Max does.

What you need is Alain Laferriere's excelent and largely forgotten XSI UserNormalEditing plugin, downloadable (32 bit only) from www.softimage.com/xsinet. (search normal edit, don't confuse it with the other normal editing tool (check the author)).

Before starting you should make sure all your bevels are single segment - only one face along the bevel profile.

When you have it installed select your model then <alt>RMB and select XSI Normal Editing from the context menu. Now select all the polygons on your model except the bevel polygons and hit the 'Polygon' button on the plugin's ppg. Your bevels will be nicely rounded and the front and side surfaces nicely correct.

kim aldis
05-21-2008, 11:15 AM
there are Ngon polys in the object

and I think that's a tautology. :-)

andystopps
05-21-2008, 02:36 PM
What a useful tool - you'd think they'd include it as standard.

norvman
05-21-2008, 10:30 PM
it's to shade properly it should shade smoothly from the front face, which should appear flat, right around the bevel - actually it's a round, not a bevel - and into the side faces which should also appear flat. Your solution, adjusting the auto discontinuity, introduces a shading discontinuity which is incorrect.

aaa yes that is correct... round is the goal I'm starting see more where the problem is here...

there are Ngon polys in the object
and I think that's a tautology. :-)
Well I mean Ngon being as a ployface with more than 4 sides... which some 3D programs don't like at rendering time... I have not really seen any problems with XSI in this area... but then I do my best to have as few Ngons as possable... having gotten in the habit in other softwares... 5 sided polys are normaly my maxium... and the examples I gave previously had some faces with more than 5sides...

I use some of your plugins by the way... great work!

Also thanks for the heads up on Alain Laferriere's plug in and the sharing of some knowledge on modeling and rendering ...

I had not realized there was such a problem (with rounded corners) within XSI... (as I have used Max before an can understand the the non-issue it is over on that side of the 3D universe.

Thanks

kim aldis
05-22-2008, 02:39 AM
Well I mean Ngon being as a ployface with more than 4 sides 'n', in mathematics, is used by convention to denote an arbitrary number - for example "The n-body problem is the problem of finding, given the initial positions, masses, and velocities of n bodies". and poly, from the Greek, meaning 'much'. Strictly speaking they mean the same thing, hence the tautology.
Mathematically 'Ngon' is a dubious term, there's nothing there that denotes 'more than 4' and it defies the mathematical convention so I try and avoid it. Precision is important in both maths and programming.

I had not realized there was such a problem (with rounded corners) within XSIIt's almost certainly a problem in Maya, maybe Houdini and Lightwave too, although I'm not sure if they recognise it and provide solutions. It's part and parcel of the way vertexnormals are calculated throughout the CG world. Max is much more protective of it's users and just quietly fixes without saying anything. I'm not sure if this is such a good idea, I think it's much better to educate users.

glad you like the plugins. :-)

grahamef
05-22-2008, 01:21 PM
'n', in mathematics, is used by convention to denote an arbitrary number - for example "The n-body problem is the problem of finding, given the initial positions, masses, and velocities of n bodies". and poly, from the Greek, meaning 'much'. Strictly speaking they mean the same thing, hence the tautology.
Mathematically 'Ngon' is a dubious term, there's nothing there that denotes 'more than 4' and it defies the mathematical convention so I try and avoid it. Precision is important in both maths and programming.

Since 3 or 4 hardly qualifies as "many", in hindsight perhaps it would have been better to reserve "polygon" for 5 or more sides and refer to triangles and quads as "oligogons".

Coming from a maths background, I sympathize with your concern about precision. Alas, language is out of our direct control and it's far too late to change things. I thought about alternatives to "n-gon" before I used it in the docs but there isn't any other convenient term. "N-gon" has become an industry standard, and anybody with 3D experience understands it. It's just one of those things you have to hold your nose and go along with, like using "access" as a verb.

When you think about it, "quad" suffers from similar problems --- four of what, exactly?

Anyway, I blame "n-gon" on Lightwave's tech writers. (j/k)

And don't get me started on "NURB" without an "S".

norvman
05-22-2008, 04:54 PM
Well ha!

it's a bit like hot-water heater (why do you need to heat water allready hot?) and Lake Tahoe (Tahoe is Sioux (American Indian) for Lake... So to say Lake Tahoe is to just simply say Lake Lake...

So nothin' you can really do about it Kim the dictionary never is what defines a word... it is the 'usage' of a word that defines it...

So accurate or not some words just will be what they are...

believe me, I have been attending school to get Certified in Auto CAD and I have had the damnedest time trying to convince people that a 'Raster Image' is not nessiarily the same thing as a 'Bit map Image'... but because this has become a convention over in the AutoCAD crowd ... (that is that Raster and BitMap are interchange able terms) one has a really hard time convincing them that they are not... AutoDesk being the God they pay homage too over there and all........... ha!

Yah I picked up the term N-gon from my Lightwave period

kim aldis
05-26-2008, 02:50 AM
http://icantdrawfeet.com/comics/Mathematics%20Ver.%202.1.2.txt

grahamef
05-26-2008, 06:43 PM
http://icantdrawfeet.com/comics/Mathematics%20Ver.%202.1.2.txt

Those are hilarious.

kim aldis
05-30-2008, 10:58 AM
Mathworld's definition of a polygon: ' A closed plane figure with http://mathworld.wolfram.com/images/equations/Polygon/Inline1.gif sides.'

From The Free Dictionary: 'a geometrical figure with three or more sides and angles'

Answers.com: 'an n-sided polygon, called an n-gon, has n vertices and n angles. In particular, if n is 3, 4, 5, 6, 7, 8, 10, or 12, the polygon is called a triangle (3), quadrangle (http://www.answers.com/topic/quadrangle) (4) [or quadrilateral, meaning four sides], pentagon (http://www.answers.com/topic/pentagon) (5), hexagon (http://www.answers.com/topic/hexagon) (6), heptagon (http://www.answers.com/topic/heptagon) (7), octagon (http://www.answers.com/topic/octagon) (8), decagon (10), or dodecagon (http://www.answers.com/topic/dodecagon) (12)'

Mathleague.com: ' A polygon is a closed figure made by joining line segments, where each line segment intersects exactly two others'.

Definitions of N-Gon:

mathleague.com: 'A polygon with n sides. For instance, a quadrilateral is a 4-gon'.

wikipedia: 'A generalized n-gon (n is a natural number greater than one) is an incidence structure (http://en.wikipedia.org/wiki/Incidence_structure) (P,L,I), where P is the set of points, L is the set of lines and http://upload.wikimedia.org/math/7/2/b/72b0c3ef7ac4d300351d6edf63d6aa38.png is the incidence relation (http://en.wikipedia.org/wiki/Incidence_relation), satisfying certain regularity conditions. In order to express them, consider the bipartite (http://en.wikipedia.org/wiki/Bipartite_graph) incidence graph with the vertex set P ∪ L and the edges connecting the incident pairs of points and lines'

That was pretty much all the mathematical definition of Ngon I could find. The rest referred mostly to Vietnames restaurants. There is very little evidence on the internet of Ngon being used to describe polygons in the way they are here. It seems to be peculiarly a CG thing. Although with the kind of people we see in CG these days I should hardly be surprised.

the dictionary never is what defines a word... Yes it is. That's what dictionaries are for. If a few decide to use words incorrectly they're wrong, not the dictionary. You're saying that if I decide to start calling a cat an elephant then the cat must then be an elephant. It's not and it never will be. Furthermore, if I did choose to use the wrong name and warned you that you were being charged upon by a cat, some chaos might result and you might be displeased. This is even more true when you use the wrong definitions in math. In fact if you want to see what shoddy use of definitions in maths can do, check out the polygon count thread on this very site.


Since 3 or 4 hardly qualifies as "many"read my post; ' 'n', in mathematics, is used by convention to denote an arbitrary number' I didn't say 'many'.

patrick.n
05-30-2008, 11:15 AM
Yes it is. That's what dictionaries are for. If a few decide to use words incorrectly they're wrong, not the dictionary.


Not quite. It depends on the remit of the dictionary you're reading. some are prescriptive, others descriptive. It's a big issue with much heated debate in linguistics.

kim aldis
05-30-2008, 01:22 PM
It's a big issue with much heated debate in linguistics.

but, to haul it back on track, more or less, I thought we were talking maths here. Besides, there's virtually no dictionary definition of n-gon or polygon I can find that lends weight to the definitions being pushed here.

grahamef
05-30-2008, 01:27 PM
read my post; ' 'n', in mathematics, is used by convention to denote an arbitrary number' I didn't say 'many'.

Agreed, but that wasn't what I meant.

"Poly-" means "many", but you could argue that doesn't apply to 3 or 4.

"Oligo-" means "few", as in oligosaccharide versus polysaccharide, oligarchy, etc.

kim aldis
05-30-2008, 02:13 PM
"Poly-" means "many", but you could argue that doesn't apply to 3 or 4.


or 5. Or 6. or 10. How many is many?

grahamef
05-30-2008, 04:54 PM
Kim, I sympathize with you about "n-gon" but I gave up that fight a while ago. It's not the only example of a term that's used differently in mathematics and the 3D industry. There's also:


Point. In 3D apps, this typically refers to control points or vertices. In math, it's more general, for example a curve or surface is defined as the locus of all points that obey an equation.
Geometry. In 3D apps, this means an object with "points" in the 3D sense. In math, it means a space with certain properties, more precisely, a complete locally homogeneous Riemannian manifold (yeah, I had to look that up).

When people in the 3D industry use the term "n-gon" among themselves, it's understood to mean a polygon with five or more sides. These polygons often need to be distinguished from triangles and quads for technical reasons, but there's no other commonly used term for them. There's little possibility of misunderstanding here.