smoothing algorithm without quads


Re: smoothing algorithm without quads
#4
Oops - sorry - yeah, that C code pretty useless from Javascript. :-)

The algorithm that Travis and I use smooths every seam (connection between two polygons) that are both:

- Not too sharp of an angle and
- Do not have a line primitive on the seam.

So both lines and sharp angles break the smoothing.

Two last performance notes:

- the C code depends on using index structures to do the searching for common edges. If the "triangle soup" was not indexed, this step would be O(N^2), which would be way too slow for parts like base plates and some of the more complex animals.

- In order for the index to work, vertices that have near-exact coordinates are snapped to get exact coordinates. This has two advantages: once the coordinates are snapped, comparisons don't require floating point math (and buckets of identical vertices can be indexed together) and it also helps prevent cracking and gaps in the mesh that would otherwise be introduced by imperfect matrix transforms.

cheers
Ben
Reply
« Next Oldest | Next Newest »



Messages In This Thread
smoothing algorithm without quads - by Nicola - 2013-08-30, 14:07
Re: smoothing algorithm without quads - by Ben Supnik - 2013-08-30, 15:58

Forum Jump:


Users browsing this thread: 3 Guest(s)