[Bf-committers] Mesh development freeze

joe joeedh at gmail.com
Mon Apr 13 16:40:52 CEST 2009


I'm requesting a freeze on all non-bmesh-related mesh development
(excluding modifiers).  In the two times I've participated in
significant mesh refactors (first hemesh, then when I kickstarted the
bmesh branch), both suffered from other people doing concurrent work
in the same code I was refactoring.  The second was the worst; during
the first major push at integrating bmesh, significant work was done
on DerivedMesh in trunk (digging that particular hole deeper and
deeper) which after a certain point killed that branch, and all of the
integration work in it.

While no work is expected to be done in this area now, the same could
be said of when we started the first bmesh branch, so I'd like a
commitment now from people.  The bmesh branch will now be diverging
fairly significant from 2.5, where it branched off.  Bmesh will
replace editmesh, using the accessor functions I recently added to
allow legacy editmesh tools to continue to work.  Converting editmesh
to/from bmesh for tools turned out to not be stable enough to be
releasable.

For your information, I'm envisioning a roadmap like this:

1. Replace editmesh with bmesh.  Mesh DNA unchanged.
2. Change mesh DNA, but in a backwards-compatible way (which is yet to
be finalized).
3. Improve stability of existing code/tools.
4. Period of user testing and developor feedback
5. Merge with 2.5.  Note that some editmesh legacy tools will remain.
DerivedMesh will not be ngon-aware,
   though there might be a hack for subsurf to work with ngons properly.
6. At some happy point in the future, gradually refactor DerivedMesh
so it actually becomes useful as an abstract mesh
    structure.  This'll be done in steps, I imagine, slowly replacing
certain interfaces with ones based off of
    geometry iterators.

Note that I'm not expecting additional develop assistance until step 4
or 5.  This means the majority of this coding work will be done by me,
in my spare time.  I don't have that much resources, so keep that in
mind.  This is the third time I've done this integration, however, so
it should hopefully not be too bad.

Joe


More information about the Bf-committers mailing list