The Final Death of EditMesh

When I originally got the updated BMesh API from Geoffry Bantle, we both knew it was going to be a lot of work to integrate it.  We had tried and failed a from-scratch rewrite (that started by removing much of the old tools code) in the first BMesh project, so when I started again I decided to keep unported mesh code working via a compatibility layer, until it came time to rewrite it.  This worked very well in the beginning of the project, as I could write tools and improve the BMesh API.  More then that, I was able to rewrite or refactor a large portion of the mesh code one piece at a time, and still have everything mostly working.

Unfortunately, as more and more tools and code got ported to BMesh, the compatibility layer got more and more unstable and buggy.  From a coding point of view, it made the code more confusing and muddled the underlying design.  I finally realized I was going to have to remove it entirely, and port the remaining tools to the new system.

I have now started this process.   I’ve removed the compatibility layer and all the old code it supported, and I’ve started porting it to BMesh.  Currently join triangles, a bunch of selection tools, and some of the primitives code (cone/grid/circle/tube) remain to be ported.  I hope to have all of this done within the next two weeks; the hardest will be join triangles and region to loop,  the rest is only one or two days of work.

BMesh should be much more stable after this, as no longer will things randomly break or tools unpredictably mess up your mesh.  After that, all I have to do is fix the remaining bugs and BMesh will be ready for a merge into trunk (yay!).

26 comments January 29, 2010

Sculpt/Multires

I’m in the process of porting over the new sculpt/multires tools to bmesh.  It’s not working quite yet, but I don’t expect it to take too long, brecht did a good job making the new code easily extensible to ngons.

I’m excited, because sculpt/multires was the biggest thing blocking inclusion of bmesh in trunk.

24 comments January 5, 2010

Donation credits

Someone recently reminded me about this in email.  Originally I planned to give donators credit on this site.  My plan was to launch this along with a system of incentives, whereby some random subset of donators would receive free bmesh t-shirts.   I wanted to do this all at once, but I ran into problems with the tshirt manufacturer I chose that I’ve not yet resolved.

In hindsight, I suppose I got too obsessed with the gimmicky aspect of my plan and forgot about the important part.  This is something I intend to rectify.  Look for an official donators credit list in the next day or two.

11 comments December 8, 2009

Development Update

I’ve decided not to stop working on bmesh.  I’ve done some more work on it; fixed a few bugs, merged recent changes from trunk into the branch, and I’m tackling edge slide (which is turning out to be quite hard to do correctly, but should work great when I’m done).

I’m planning to have bmesh in trunk by march of next year (or the third 2.5 release, whichever comes first).  This is a more then generous timeline, imho, and is achievable for me.  I’ve also had several new developers show interest in the project, and of course Wael has been very helpful.

I’m committed to finishing this project; I love modeling, and I can’t stand the old toolset (after using decent modeling tools in an ngon modeler, it’s hard to go back).  I don’t want to see this part of blender stuck in the 90s anymore.

22 comments December 7, 2009

Status Update

I may have to take a hiatus from BMesh for a while.  The donations haven’t really been enough lately, and unfortunately I can’t make enough money working on both BMesh and a real job, since at the moment I can only spend a very small part of my time doing either.  I was supposed to start a medication today that may have allowed me to be more productive, but there was a glitch and it looks like I’m going to have to wait a bit longer.

I certainly will continue working on BMesh if people donate more, but I don’t want to get a reputation for constantly asking for money or the world will end.  Either way, once I start this medication there’s a good chance I’ll be much more productive and will be able to spend time on it again.  The truth is that I need at least $1000 USD a month to maintain my current level of commitment to BMesh, and if that isn’t possible I’m going to have to work exclusively on other projects to make more money, at least until I start that medication.

 

35 comments November 12, 2009

BMesh in Third 2.5 Release

BMesh is now scheduled to be included in 2.5 Beta 2, the third 2.5 release.  This is an exciting time for this project; I’m very happy with it’s success, which is largely due to donations and the time they’ve allowed me to devote to working on BMesh.

On the topic of donations, I’ve put up another progress bar which represents the current level of donations (which is rather low at the moment).

3 comments November 11, 2009

Donations

Don’t forget to donate!  Even small donations help.  This project is funded by the community, which allows me to devote much more time to it then I would otherwise.

Add comment November 8, 2009

Call for Testing

bmesh subsurf ngon

BMesh is now in the alpha testing stage.  It’s reached the point where it needs user testing to further progress and identify bugs.

You can find builds on graphicall.org, and report bugs on redmine.  Please use the redmine bug tracker!  Feel free to leave comments in the blog, of course.

Build Links

Please use a build no older then November 4th.

Linux SuSe: http://www.graphicall.org/builds/builds/showbuild.php?action=show&id=1164

Win32: http://graphicall.org/builds/builds/showbuild.php?action=show&id=1165

QuickStart

Dissolve is xkey->dissolve, and vertex connect is ykey.  Those two are used a lot, so it’s a good idea to familiarize yourself with them.  Subsurf now works with ngons, which allows for all sorts of cool modeling tricks (and to get rid of the ngons you simply apply the first level of subsurf).

I’ve also made a start of feature notes on blender.org.

Crash Recovering

Blender will now save recovery files on crashing.  So if blender crashes, look for a [filename].crash.blend file.   Note that the recovery file will not include changes made in editmode, so I’d suggest cycling through editmode/objectmode every once in a while.

Known Issues

  • GLSL draw mode doesn’t work.
  • Edge Slide doesn’t work.
  • Particles are buggy.
  • MultiRes hasn’t been brought back yet.
  • Sculpting may not work.
  • The vkey rip tool isn’t quite finished yet.

Notes

Not everything works yet.  Some parts need attention by their maintainers, e.g. particles and MultiRes, and are things I shouldn’t really be dealing with (meddling in ;) ) myself.  And I’m sure there’s a great many bugs I’ve not uncovered yet myself.

On the other hand, things are fairly functional.  Most tools have been ported over.  Only a few are missing.

Donate!

Please remember to donate, even small contributions help.  Donations are what allow me to spend as much time on bmesh as I do.

30 comments November 4, 2009

Status Update

I’ve been rather busy moving (and sick) the past month or so, so I didn’t get  as much work done as I’d like.  I’m just about finished moving though, and I’ve started putting more time into BMesh again.

BMesh is very close to being testable; I’m currently merging recent changes from 2.5 into the BMesh branch before tying up some loose ends and putting out a call for testing.

I did manage to find time to rewrite the vkey split tool; it now behaves much the same as the edge split modifier, making it a lot more useful.   The old tool was very hackish, and getting the new one to work well turned out to be quite a bit of effort, but it’s almost working now (it still has a few cases that need attention).  The new tool is much more usable then the old one; it can handle many more situations.

Once I’ve gotten the merge done and vkey finished up, I’ll post a call for testing on the blog.  I’ll also provide links to a special BMesh bug tracker, which will be hosted on Nathan Letwory’s new redmine installation.

I’m hoping to get BMesh into the main development trunk sometime early next year; when this happens will depend a lot on future sculpt/multires developments (and how difficult it’ll be to port them to BMesh).  One of the purposes of Durian is to develop a fast sculpting/multires system, so BMesh cannot be merged into trunk until that gets going (and is ported over to BMesh).

Thanks to everyone who have donated; it’s very, very helpful.  It allows me to spend considerably more time on BMesh then I’d be able to otherwise, and is responsible for the success of this project.

9 comments October 17, 2009

Demo Video

Michael Fox has kindly put together a bmesh demo video for me, you can watch it on vimeo, or at his blog.

11 comments September 4, 2009

Previous Posts


One-Time Donation


Subscription Options

Donate $10 USD/month recurring
Donate $20 USD/month recurring
Donate $50 USD/month recurring Cancel a recurring donation

Note: Use a PayPal account for recurring donations; it's unclear how you cancel if you simply use a credit card or a bank transfer

Recent Posts

Categories

Feeds