Tuesday, October 11, 2005

Blender3d - when two dimensions just aren't enough

I've been working with Open Source programs for over 2 year now, and I've been amazed at what people are willing to give away. Programs like OpenOffice.org and Firefox are completely awesome, and they allow users to get the job done when it comes to common computing tasks like web surfing and word processing. It kind of makes sense that people would be willing to help other people handle the basics, and even to do so in an feature-rich way, but 3D graphics, animation, and interaction? You mean people are handing out free and legal copies of a program that could easily cost a couple of grand? No way!

Yes Way!

Enter Blender. No, not literally, sir. Please get out of the food processor.

Blender is the first and only open source fully integrated 3D graphics creation suite on the market. It allows modeling, animation, rendering, post-production, real-time interactive 3D and game creation and playback with cross-platform compatibility. All of these features are available in one neat, easy to install, and freely downloadable open source program! It's available for Windows, Mac OS X, Linux, Solaris, FreeBSD, and Irix.

I'll have to admit, in reviewing this program, I'm a tad bit over my head. I am no 3D graphics artist, and I can't remember the last time I created a "The Incredibles" quality film on my PC, but with Blender, it is possible. (Okay, maybe not on *my* PC, but one with some horsepower, then it's possible.)

I'm going to include some artwork created using Blender just to wet your appetite before I start throwing features at you. (All graphics taken from the gallery of http://www.blender3d.org/.)

These are just a few examples of what's possible through the use of this free 3D graphics program. Notice the use of light, shadow, and reflection. The photo-quality realism that can be made, as well as the smooth, colorful cartoon-like characters, mean Blender users can make whatever kind of graphics they need.

This graphics program has served different purpose than GIMPShop. GIMPShop is excellent at its job of a two-dimensional raster graphics creator/editor. Photo editing, jpeg making, Photoshop replacement, creation and editing of photorealistic 2d images - these all look like jobs for GIMPShop.

Blender 3D is different. It's 3D. That all-important difference does come with a price, not a financial price, of course, but one in terms of ease of use. It's easy to ride a bike, it's not hard to drive a car, it's very difficult to pilot a helicopter, and nearly impossible to fly to the moon. It's all a matter of what the user wants to be able to do, and how hard he is willing to work to learn how to do it.

Blender comes with a range of 3D object types including polygon meshes, NURBS surfaces, bezier and B-spline curves, metaballs, and vector fonts (TrueType, PostScript, OpenType). It offers 'smooth proxy' style catmull-clark subdivision surfaces, Boolean mesh functions, editing functions such as extrude, bevel, cut, spin, screw, warp, subdivide, noise, and smooth Soft selection editing tools for organic modeling. All of these tools serve as your base for modeling your 3D objects in the construct space.

If you don't know what any of those words mean, then Blender might not be for you. In fact, I only know half of them. Curves I recognize. But if you are a graphics engineer with a need of a program to use to make your next movie, then here you go.

Which brings us to animation. Blender can make some awesome movies - and games. Blender uses Armature (skeleton) deformation with forward/inverse kinematics, auto skinning and interactive 3D paint for vertex weighting, a non-linear animation mixer with automated walk cycles along paths, a constraint system, vertex key framing for morphing, with controlling sliders, a character animation pose editor, and a ton of other features. It has audio tools as well, including playback, mixing and editing support for sound synchronization.

Now for the *really* cool part. Blender can make GAMES, even without programming! Blender makes this possible by using a graphical editor for defining interactive behavior, so you can point and click your way to your own video game! It includes collision detection and dynamics simulation, so your characters won't "ghost" through each other. It's got some awesome lighting tools and reflection, as I mentioned before, so your characters can have real-time shadows and look in a mirror in the game, just like in your 3D pictures. And your games can be made into a stand-alone executable (i.e. program) with a plug-in. You can download and try out some of these Blender created games here.

Blender has a ton of other features, like powerful rendering tools, so you can take your 2D graphics and wrap them around 3D frames, and give the surfaces of your objects all kinds of depth and characteristics - like rough, reflective, shiny, dull, soft, hard, muted, etc.. It also supports a ton of different file formats, including jpg, png, iff, avi, tiff, psd, tga, sgi, gif, dxf, and more. Users can save an entire 3D scene or movie sequence in its native .blend format. So you don't have to have a ton of files lying around for one 3D scene, which is nice.

To sum up, Blender isn't for everyone. But then again, not everyone sits around making their own video games, movies, or 3D landscapes. However, if you ever want to get into graphics design, and you don't want to spend $3000 on a program to do it, look no further than Blender. You can learn more and grab your copy at the Blender homepage, http://www.blender3d.org/.

2 comment(s):

Hey Chad do you ever read comments?

By Anonymous James, at October 11, 2005 5:40 PM  

Yes indeed I do.

By Blogger Chad Smith, at October 11, 2005 10:18 PM  

Post a comment

<< Home