[Bf-committers] Surface Simplifier / Mesh Reducer well under way :)

Jaevixa McNomera jjv.mnr at gmail.com
Thu Feb 11 01:31:18 CET 2010


HI! My name is Jaevixa McNomera. I've been told by a few people on
#blendercoders that I ought to let you all know that I'm quite far along the
process of making a hi quality surface simplifier for Blender. It is
currently running well as a stand alone app. I'm a long time c / c++
programmer, but I'm rather new to the Blender code and just trying to get it
all working inside blender as a modifier.

It's all written from scratch so there wont be any copyright issues or
special patches to link to it. I'm making this specifically FOR inclusion in
Blender.

Here are the basics right now:

1. Currently it supports triangle and quad input. I spoke with joeedh and
Briggs and BMesh support and ngons are going to be working fine, so far as I
can see in my tests with my system. I do have it working with non-planar
ngons as well.

2. It supports poly counts well over 100k. The highest poly count I've
tested it with was about 198k.

3. Right now, it will ray trace new materials for the output mesh to make it
look as close as possible to the original.

4. Currently I do also produce normal maps as well to preserve as much
surface detail as I can. This does even work against non-planar ngons. The
way I have it implemented seems to produce good results.

5. I haven't yet settled on how I'm going to get vertex group simplification
working. I have 2 different methods I'm testing, but if I can't get it right
then that just wont go in my first patch of this.

6. Run times are fast. For pure geometric simplification without materials
at all, a 98k mesh downsampled to 5k took only 0.03 seconds :)

7. There are 3 different quality / speed settings right now, and some edge
preservation settings that can be adjusted. I'm still debating how exactly
these will be presented to the end user.

Here are a few screens of what it currently does. All models were provided
by users on #blender and/or #blendercoders for my tests.

http://www.pasteall.org/pic/1077

http://www.pasteall.org/pic/1078

http://www.pasteall.org/pic/1079

http://www.pasteall.org/pic/1080

http://www.pasteall.org/pic/1081

http://www.pasteall.org/pic/1082

http://www.pasteall.org/pic/1083

http://www.pasteall.org/pic/1084

It pretty far along but I am still working out a few parts.

If anyone out there has lots of experience with Vertex Groups and animation
with them, I'd like some input on few things in that area. It may help me
determine how to handle that part.

Thanks everyone! :)
Jae


More information about the Bf-committers mailing list