Blender 2.7 released

20. March 2014

 

Today marks the release of Blender 2.7 and you can download it here.  Let’s take a look at what’s new, with an eye towards game development.image

 

The first and most obvious thing you will notice is the changes to the user interface.

 

UI Changes

 

The number one thing you are going to notice is the toolbar tabs.  The Tools (T) pane is now organized in context sensitive tabs.  So like minded operations are grouped together, like so:

image

 

Personally I am a huge fan of this change, it makes the UI much more streamlined and cuts down on the noise. 

 

There is another UI change that I personally love, as I love very sparse windows when possible.  You can now collapse menus down.  For example, you can now go from this:

image

To this:

image

Simply right click, select Headers->Collapse Menu.  Again, I like this change.

There are several other UI refinements, but those are the most visible.

 

Modeling

 

First they’ve added the wireframe modifier, which is useful in a very limited number of scenarios.  Basically it makes a (3D) wireframe out of the selected model.  So this:

image

Becomes this:

image

 

NGon tessellation has been improved. No more holes on bad geometry.

In 2.69 it did this:

 

Now it does this:

 

Much better.

 

Bevel has more options now:

image

 

Laplacian modifier added.  To be honest, I don’t really get this one yet but it sounds pretty cool.

 

Of particular use for game exporting, the triangulate modifier has been improved with more fine control over how triangulation will occur:

image

 

Game Engine Changes

 

PSD File support added.

1st person shooter style camera controls (WASD).

Level of Detail (LoD) support added:

Manual-Level-of-Detail-Panel.png

 

Cycles Rendering

 

Cycles is probably the biggest improvement portion of this release.   Probably the biggest new feature is WIP support for volume rendering.

 

CPU support has been improved, shader language updated to increase performance and a host of other changes.

 

 

There were a host of other improvements including threading improvements for the dependency graph, API updates for the NPR (non-photorealistic) renderer, motion tracking improvements, general bug fixes and more.

 

All told a very nice release, with some great first steps for an improved UI.

News, Art




MakeHuman 1.0.0 finally released

15. March 2014

 

MakeHuman started life in 1999 as a Blender plugin named MakeHead, a plugin for procedurally creating head meshes.  In 2000 the first version of MakeHuman was released.  In 2005 it was turned into a stand alone application. Today we seem a major milestone release of MakeHuman 1.0.0!

 

So what exactly is MakeHuman?  It’s an application for generating human models.  Most impressively it generates very clean, fully rigged, quad only, Mudbox/zBrush ready models using 1170 controllable morph targets.  If you’ve ever played a video game that allowed you to fully customize your character, you have an idea what MakeHuman provides.  The major difference is MakeHuman generates a model ready for use in major 3D applications.  In many ways it is very similar to the application Poser.

 

image

 

Oh yeah, did I also mention it was completely free and open source?

 

Now for a couple key links. 

You can download MakeHuman here.

The source code is available here.

You can access the current buglist here.

The 1.0.0 press release is available here (and repeated below).

 

So why should you as a game developer care?

Well first of all, it is about one of the easiest ways to create game ready human assets.  Speaking of game ready, you also have the ability to create game appropriate rigs:

image

 

Perhaps most importantly, the resulting mesh is both clean and relatively low polygon ( unless of course you choose the smooth option ).  Here is an exported mesh opened in Blender:

image

All told its about 24K quads as currently configured.  The mesh is and ampature are both logically laid out (with clothing all as separate meshes) and ready for use:

image

 

If you need a human model for your game, you really have nothing to lose checking out MakeHuman.

 

Press release:

Art, News




Blender 2.7 release candidate available

7. March 2014

 

Yesterday the Blender Foundation announced the release of Blender 2.7 RC, a preview build of the upcoming full 2.7 version.  This release is going to jump out at you immediately as they have started refining the UI.  Now sidebar actions are group in context sensitive tabs making the bar much less cluttered.

image

 

This is just the most obvious UI tweak, there were a number of other small changes under the hood.  Here are the release notes.


New features include initial support for volumetrics in Cycles, and faster rendering of hair and textures. The motion tracker now supports weighted tracks and has improved planar tracking. For mesh modeling there are new Laplacian deform and wireframe modifiers, along with more control in the bevel tool. The game engine now supports object levels of detail.

The first results from the new user interface project are also in this release, with dozens of changes to make the interface more consistent and powerful. This is also the first release of the multithreaded dependency graph, which makes modifier and constraint evaluation faster in scenes with multiple objects.

Cycles Rendering

Cycles 270 Volume.png

Cycles now has initial support for volume rendering including emission, absorption and scattering. Volume rendering can be used to render effects like fire, smoke, mist, absorption in glass, and many other effects that can't be represented by surface meshes alone.

CPU rendering performance was improved, particularly for hair, textures and Open Shading Language.

Motion Tracker

Blender2.70-PlaneTrackImage.png

Trackers can now be weighted, to keep the result stable as feature disappear or become difficult to track. The plane track workflow was improved to be easier to control. Automatic feature detection was made more robust using a new detector algorithm.

User Interface

Header menu collapsed.png

The toolbar now has tabs to organize tools in categories. Multiple buttons can now be edited at once, for example for XYZ axes or color channels. Transform tools now have a mode to enter expressions and units. Other changes were done to improve lists, header menus, tooltips, buttons, menus and more.

Modeling

Wireframe Mod Result.png

The Laplacian Deform modifier was added to pose a mesh while preserving geometric details of the surface, and a new wireframe modifier allows you transform your mesh into a wireframe representation. The boolean modifier now supports ngons, and there are improvements to the bevel, screw and triangulate modifiers.

The bevel tool now offers more control over the bevel profile and results, and the knife tool was improved as well.

Threaded Dependency Graph

GSoC-DepsGraph-ThreadedCPULoad.png

An important change that happened under the hood is the threaded dependency graph. This means that object modifiers and constraints, among other things, can now be computed with multiple threads taking advantage of multicore processors. This will be most noticeable with scenes that have many objects, or multiple objects with heavy modifiers. This is the first step in making the dependency graph in Blender more powerful.

Game Development

FPS-Walk-Navigation-Shortcuts.png

The Blender game engine now supports discrete level of detail for meshes. For game developers, support for working with Photoshop PSD files has been added.

A new view navigation walk mode has been added, which has a control scheme as typically found in first person shooter games. This can be useful for game developers to navigate levels as if in a game.

Freestyle NPR Rendering

Blender261 python changes.png

The Freestyle Python API is an essential part that makes it a highly programmable NPR rendering engine. This API has been reorganized.

More Features

Blender2.70 MaskOverlapFill.png

Many small changes and features were done all over Blender. Some notable new feature are normalized display for FCurves, derivative map baking, baking to vertex colors, better visualization of masks and control over mask filling, gravity option for sculpting, negative texture values to support vector displacement and a Lamp Data shading node to create more customized NPR shaders.

Feature Videos

For a visual demonstration of some of the new features in this release, check out the feature videos created during the development of this release.

Addons

Several addons have been added and updated, including Node Wrangler (aka Node Efficiency Tools) and a new Sketchfab Exporter addon

Bug Fixes

In addition to the new features, over 560 bugs that existed in previous releases have been fixed.

 

You can download Blender 2.7RC on the Blender website.  If you are trying to figure out what the vc2012_preview versions are, these are builds compiled with the most recent version of Visual Studio.  This should cause some performance improvements, but as the name says, it’s a preview so your mileage may vary!

Art




Interesting book on how the other half live: Production Pipeline Fundamentals for Film and Game

27. February 2014

 

Just recently the book Production Pipeline Fundamentals for Film and Game ( Safari Link ) was released and it has been an interesting read.  Here is the thing, I am an ProductPipelineCoverabsolute sucker for post-mortems.  This was my favorite part about Game Developer Magazine every month.  I loved having a peak behind the curtain to see how other people accomplish do what they do, the problems they run into and their solutions to them.  This book is essentially a post mortem, from a number of different people in the industry, for the entire art production pipeline for both movies and games.

 

The book pretty much covers the process that game and movie companies use to develop art.  This starts at the money and concept stage, discusses pre-production, then production, discusses the details of the pipeline, the IT infrastructure each studio uses, gets into nitty-gritty details like software used, managing data and assets, disaster recovery, etc. 

 

The book actually turns into a weird mashup of experiences, and due to the many different contributors, the tone and purpose of the book seems to change all the time.  Sometimes it makes the book truly great, while other times it makes the book confused.  A good example is LIDAR being dropped as a term early on, like the reader is aware of what LIDAR is.  Assuming a certain audience is fine.  However, a few chapters later, a different chapter by a different author actually explains the process of LIDAR.  ( LIDAR coincidentally is the process of scanning an environment into digital form ).  A simply re-ordering of the book would have addressed this, but the disjointed nature of the book made that not happen.  That said, the most interesting segments of the book are when the authors are talking to you like they are talking to peers.  So the transition between lecturing ( this is what X is/does ), to tutoring ( this is how to do X ) to sharing ( this is how we did X ) can be a bit jarring.

 

That’s why I am hesitant to recommend this book straight out.  For the indie developer put frankly, the processes describe are almost entirely beyond your budget.  It’s almost the definition of what makes you an Indie vs a AAA.  On the other hand, if you are in the industry, you will find the tutorial/lecture portions of the book often either simple or patronizing.  That said, if you are wondering how other people do things, or what its like to work in various fields, this book is very unique in its perspective.  Just be prepared to struggle a bit at times.

 

There is a whole lot of knowledge being shared by a number of very talented individuals.  Just be prepared to fight a bit to access it.  If you are an artist or developer and want to see how all the pieces slot together to form a whole, this book illustrates that very well.  If you however are on an indie shoestring budget and looking for a practical book, this probably isn't the one for you.  This isnt a review, as I think this is one of those books you cant really review.  I can see how one person could love it for the exact reason another person hates it.

 

Oh and one last observation… it was funny reading how often I got the impression from (some of) the film guys that they were trying to wow with how uber-impossible their job is, while the game people seemed much more matter of fact.  If you read it, I will be interested to see if you got the same impression.

Art




Exporting 3D model to LibGDX directly from Blender

26. February 2014

 

Last month I wrote about creating and exporting a model from Blender to LIbGDX.  Part of the process involved exporting to FBX then running fbx-conv.  Wouldn’t it be nice if you could export directly from Blender?  Thankfully you can!  A week or so back @Dancovich told me about his Blender plugin on Twitter.  I intended to check it out right away, but truth told, recent experience had made me pretty sick of Blender, so I’ve taken my time.  Today we are going to look at that plugin.

 

First, download it from Github (direct zip download here)

Copy the folder io_scene_g3d to your Blender plugins folder.

image

In my case on my Windows 8 install, the plugin directory is: C:\Program Files\Blender Foundation\Blender\2.69\scripts\addons, like so:

image

Your location will depend on the operating system you use and how you chose to install Blender.  The github page linked above has more details.

 

Now fire up Blender 2.69 ( note, the plugin currently only supports Blender 2.69!

Select File->User Preferences

image

Then select the Addons tab

image

Now scroll down and locate Import-Export: LibGDX G3D Exporter and check it.

image

 

 

Now you are able to export directly from Blender to FBX.

 

Select File->Export->LibGDX G3D text format.

image

 

As you can see, currently there is no binary support.  During development I tend to stick with g3dj anyway.

 

Here is the scene from Blender:

image

 

And now that I run it in LibGDX?

image

 

Ahhh, crap.  It’s an easy enough problem though.  The exporter saved my texture as an absolute path, I instead want a relative path.  Opening up the generated g3dj file, I see:

image

Change that to:

image

And you are good to go.  You can probably change Blender to work in relative paths and avoid this problem all together.  If not, altering the script to strip the paths should be a no brainer.  Now with that change we run it and:

image

Hmmmm… that’s not what you were expecting is it?  What’s going on here?

 

Well, fbx-conv automatically flips the axis from Blender Z up to LibGDX Y up.  This exporter does not.  You can easily perform the same thing in code by rotating –90 degrees about the X axis, like:

modelInstance.transform.rotate(1, 0, 0, -90);

 

Then run the code and:

 

image

 

Woot, identical to Blender!

 

I havent got the chance to test the exporter all that extensively, Ive not really done any work with Blender in the last week or so, so I cant really tell you how well it performs with animations.  That said, especially during development, this could be a huge time saver for quick iterations.  The developer is actively looking for people to try it out and report bugs back.  So if you fancy exporting from Blender to LibGDX directly try it out and let @Dancovich on Twitter know if you encounter any bugs.

Programming, Art , ,