For those whom may not know, please introduce yourself and how you are involved with Blender’s development?

My name is Joe Eagar, I’m from California, USA. I’m heading the effort to rewrite Blender’s mesh modeler to be robust, maintainable, and support polygons with more then four sides. This has been a long project, marked by several aborted attempts, that has finally reached the threshold of success in the current iteration.

I also occasionally fix bugs in the main development branch and helped bring back a few missing features (loopcut and edge slide).

Bmesh appears to be your primary project, what is it exactly?

BMesh is both the name of this project, and a library used to write mesh tools and represent non-manifold meshes, written by Geoffry Bantle after the failure of the last iteration of the mesh refactor project (which he and I had worked on). He looked at the problems he and I had encountered in that attempt, and redesigned the core API to address them.

Geoffry had to bow out of the project for professional reasons; he handed me his revised API, and I used it in a restart of the project. I deleted the old bmesh branch and rebranched it from 2.5, and used this new API to to rewrite much of the 2.5 modeler code (which itself had been refactored a bit to fit into the new 2.5 architecture by Ton and Shul). Thanks to Geoffry’s efforts in designing a good core API and his continuing incredibly helpful advice, I was able to write much more maintainable code then in the past attempt, and the project has progressed quite nicely.

bmesh demo

What has been the most difficult thing to overcome while developing Bmesh?

I had to do this project with limited time resources; because of this I was forced to find ways to keep old code I hadn’t yet rewritten working, allowing me to do the refactor one step at a time. Now that the majority of the refactoring work is complete, I’ve removed the remaining old code entirely, and plan to have it reimplemented within the next few weeks.

How will BMesh change the modeling experience for Blender users?

Ngon modeling is far superior to quad-limited modeling. It allows you to change topologies much more easily, often times without ruining UV coordinates or vertex colors. Subdivision surface modeling is much more powerful and easier to use with it (at least in my opinion). I’ve found the modeling experience in BMesh far superior to the old tools, to the point that I couldn’t model at all in 2.49 when doing a modeling demonstration for a friend.

When you don’t have your head buried in code/computers what do you do to relax, or unwind?

I like to watch good TV schools online, go for a drive, improvise on the piano, and listen to good music.

How has the experience been interfacing on an open source project with so many individuals around the world?

It’s been awesome. I’ve learned things on this project I never would have in school; practical software development and design, how to write maintainable code, how to work in a team across the internet, how to read and comprehend other people’s code quickly and easily, etc.

ngon spiral

How can the community help the testing or development of Bmesh?

You can always donate on my blog, http://bmeshblender.wordpress.com There are testing builds on graphicall.org, and there’s a bug tracker at http://rm.letworyinteractive.com/projects/show/bmesh .

I’m currently finishing up refactoring the last remaining old tools code (I had these tools working via a hack, that was causing too many problems to be usable), so people may want to wait two weeks or so before doing more testing. Solidify, join triangles, separate, screw/spin, and a few of the primitives creation tools are still not working, along with a variety of selection tools (loop to region, select random, etc).

I also need to tackle the bug tracker, which I’m putting aside for the next couple of weeks so I can concentrate on what I’m doing now.

Do you have your sights on a particular project after Bmesh?

I don’t know. I have a pretty strong interest in animation, which I’m currently attending school for, so I might simply concentrate more on that, or modeling (which I’ve not had time for), or learning to use the new sculpting system.

There’s also a bunch of things in my Deep Shadow Maps (basically volumetric, transparent shadows) branch that needs to be ported to the implementation Brecht recently wrote (I went to a great deal of effort to balance speed, memory usage, disk cache usage, etc, and I would be devastated if this wasn’t applied to the trunk version of DSM. I designed my code to run on crappy, cheap, consumer hardware, and I really, really want Brecht’s implementation to do the same).

You must be logged in to upload images. Register

Discussion

17 Responses to “Interview: Joe Eagar | Bmesh Developer”
  1. Posts: 54

    Bmesh sounds like it will be a very cool blender feature. It looks like it will make modeling a lot easier in some areas :)

    #
    1
    Jan 30, 2010 at 1:52 am
  2. Tobey
    Posts: 98

    Thanks for this enlightening intro to Bmesh and good luck Joe!

    #
    2
    Jan 30, 2010 at 3:10 am
  3. Wehrdo
    Posts: 18

    To say I’m excited would be an understatement. I can barely wait until Bmesh gets complete and merged into the trunk! It’s nice to hear about the person behind the computer, so please keep these interviews up Blender Cookie.

    #
    3
    Jan 30, 2010 at 7:51 am
  4. Marcus
    Posts: 20

    Nice picture, really shows the possibilities of BMesh at a glance!

    #
    4
    Jan 30, 2010 at 9:46 am
  5. corniger
    Posts: 40

    Dude, now I really think I understand what BMesh actually IS. It enables me to do what I did during my first Blender hard surface models, winding up with a totally screwed up mesh after adding subsurf that was cracked open everywhere because I had deleted connecting vertices to “keep it clean” :P
    I’m gonna send some cash asap! That’s gonna be an awesome new feature!

    #
    5
    Jan 30, 2010 at 1:19 pm
  6. Shiretoko
    Posts: 7

    More interviews.

    #
    6
    Jan 30, 2010 at 2:14 pm
  7. Posts: 299

    Glad you enjoyed the interview – also if you guys know of somebody interesting in the Blender Community you would like to hear from drop an e-mail to me to line em up. ;)

    #
    7
    Jan 30, 2010 at 2:16 pm
    • Reflux
      Posts: 1

      What about the guy who did volumetrics, or Jahka the guy doing the new particle stuff?

      #
      7.1
      Jan 31, 2010 at 2:23 am
  8. kivig
    Posts: 2

    Interesting. Those are features I had a wish to see in Blender.

    #
    8
    Jan 30, 2010 at 3:21 pm
  9. Solineoz
    Posts: 95

    Thanks for this great interview Wes and Joe :)

    It’s really appreciated that you took the time to pass by and give us some hints about some features and tools that’s gona be in the final version of 2.5.

    Now we can better estimate how much work is in the process of creating (recreate) a very well done software as Blender.

    Congrats and thank you very much to all of the Blender Foundation’s members. (directly implicated or not)

    #
    9
    Jan 30, 2010 at 8:06 pm
  10. Kris
    Posts: 10

    The lack of nice modeling tools are what keep me from using Blender exclusively. I bought Silo a year ago, which replaced my modeling in Maya (the app I use for work).

    This Bmesh is exactly what Blender needs and why it wasn’t able to support these features and have a decent cut tool like even the smallest of apps like wings3d is beyond me.

    Good job and you sir, are a good man.

    #
    10
    Jan 30, 2010 at 9:51 pm
  11. lucky
    Posts: 1

    That’s a very nice feature, thanks. This is going to ease modelling for me…

    #
    11
    Jan 31, 2010 at 10:09 am
  12. Piiichan
    Posts: 14

    Really impressive.
    I’m looking forward to it! :)
    Keep us updated.

    #
    12
    Jan 31, 2010 at 3:47 pm
  13. Nixon
    Posts: 61

    great interview *thumbsup*
    b-mesh wil be a huge addition to blender….
    i really like how this is coming along since i first seen it in action on mfoxdoggs tours …
    really looking forward to this and wanna pull my hat before the devs and especially Joe Eagar of course!
    best regards

    #
    13
    Feb 1, 2010 at 7:24 am
  14. Awesome
    Posts: 1

    That is probably very awesome. My experience is very poor so i don’t know how beneficial this is.
    Though with the gaming engine isn’t it best to not use ngons?
    My openGl is rather limited. I thought it was odd that quads worked in the game engine. As most gome engines i think draw everything is triangles. As you can just feed in an array to opengl and render triangles and it would split it up accordingly.

    #
    14
    Feb 2, 2010 at 6:14 am
  15. Posts: 208

    Yes , B mesh for blender . That is indeed , power .

    #
    15
    Feb 2, 2010 at 5:12 pm
  16. Alexander
    Posts: 1

    Would be nice for Game Modeler to be able to turn the possibility of ngons on and off, or to have any kind of warning etc

    #
    16
    Jun 14, 2010 at 4:03 am

Leave a Comment