From BlenderWiki

Jump to: navigation, search
Note: This is an archived version of the Blender Developer Wiki. The current and active wiki is available on wiki.blender.org.

Who is this anyway?

real name: Mike Erwin

aliases: merwin, significant.bit, @DangerCobraM, danger_cobra_m (Steam)

home base: Apex, NC, USA

user (dedicated amateur) since 2008

developer since 2010 -- all my commits

Past

I built and continue to maintain Blender's NDOF (n degree of freedom) input system. This started as a GSoC 2010 project, then continued with support of 3Dconnexion in 2011. Whenever 3Dconnexion comes out with a new device, it's my job to get it working in Blender. User reports really help, as I have an abundance of 3D mouse hardware at this point and don't need every new model!

Really familiar with the GHOST layer; enjoy doing platform specific coding.

Mentored a GSoC 2012 project, where Nick Rishel did multitouch/gestural work. Experimental, hasn't made it into a release. Attended the mentor summit at Google HQ, a highlight of that year.

Finally made it to Amsterdam for the 2014 Blender Conference!!

Lived in the Boston area from 2011 to 2015. Regularly attended the FSF's LibrePlanet & Software Freedom Days, Northeast Linux Fest, Khronos Boston chapter and the once-thriving Boston Blender User Group. Hope to find some like-minded people in the Raleigh area now that this is home.

Present

Currently working on the 3D viewport. I maintain a Work Log / Notes page. The goals of this project are basically:

  • improve speed / responsiveness <-- this is my jam!
  • task-oriented view modes (beyond simple wireframe, solid, etc.)
  • bump OpenGL version to 2.1+, which cleans up the code and prepares us for the future

Actually the goals are much better stated by Psy-Fi in these posts:

Viewport Project Targets and Future Viewport Design

So far have spent most effort on geometry drawing performance, as that is the #1 concern voiced on various blenderartists threads. So far so good: mesh display is faster and uses less VRAM. Solid shaded meshes -- whether normals are smooth or flat or mixed -- are consistently faster (up to 1.5x) and wireframe performance is through the roof. More complex & interesting drawing modes are forthcoming.

Developing / testing on the following configurations:

  • Mac nVidia GT 650M
  • Mac Intel HD 4000
  • Windows Radeon HD 6970
  • Linux (Mesa/Gallium drivers) Radeon HD 6970

Much Viewport/GL work has already been done by Jason Wilkins, Antony Riakiotakis, Alexandr Kuznetsov, and others. Read about their work here:

ViewportFX Design

OpenGL Compatibility Layer (for deprecated stuff in new GL)

Workflow Shaders

Framebuffer Post-Processing

Stream-Based Drawing

OpenGL ES on Android

Matrix Stack (part of compatibility layer)

Graphics Background

I've been blending since 2008, mesh modeling of game objects and environments. Like many, I had tried it years before, only to be frightened away by the interface. It took the Essential Blender book to get me working effectively, and the SIGGRAPH demo of 2.5 in New Orleans got me even more interested. Before devoting myself to blender, I used LightWave, PiXELS 3D Studio, and StrataVision. For 2D work, Photoshop was my best friend from version 4.0 to CS3, have since switched to GIMP.

Code Background

My first real-time graphics code ran on a 386 + VGA card, before switching to Macintosh in 1998. I have continued working mostly in C (20 years), C++ (15 years) and OpenGL (11 years). More recently added Python 3 and WebGL to the mix. For a long time my primary machines were PowerMacs, used for graphics production and (more often) code development. I still fire up the Pismo PowerBook G3 when the mood strikes.