Epic Games Donates $13,500 to Blender Development Fund

Subject: General Tech | July 17, 2014 - 05:16 PM |
Tagged: open-source, open source, fbx, epic games, Blender

Blender, probably the most popular, open source 3D creation suite (sorry Wings!), was given a healthy donation of $13,500 USD by Epic Games. According to the tweet from Ton Roosendaal, Chairman of the Blender Foundation, this is intended to support FBX development, which is becoming the industry standard method of importing and exporting 3D models, skeletons, animations, and so forth. It is also for "epic-game-style navigation controls" (not sure what this is -- Unreal Editor-style controls maybe??)

FBX support would definitely be a welcome area of development. It exists, but not at the level of other 3D applications, because those could link directly to Autodesk's library. The format is owned by Autodesk after they acquired Kaydara in 2006. Its closed-source SDK was put under a license that was incompatible with Blender and its public documentation was non-existent. Since then, the Blender community has been working on reverse-engineered support. They have come a long way, the exporting from Blender and importing into Unreal Engine 4 is apparently reasonable, today. Of course, with Epic's focus on the indie developer, $13,500 seems like a good investment to help it continue.

Beyond its status as the default import format into Unreal Engine 4.x, FBX is also standard in many different modeling applications. While it is fairly easy to move around most base, polygonal geometry (and UVs to properly apply materials to them) from suite to suite, the same cannot be said for animation data, and so forth. FBX was designed to be a single pipeline for all of that.

Hopefully, Blender can become a first-class citizen.

July 17, 2014 | 07:34 PM - Posted by Anonymous (not verified)

Wings is just a 3d modeling, mostly, editor while Blender does much more. I still use Wings for quickly making rough models, then importing into Blender, but OMG is Blender slow for some mesh editing tasks, and hopefully they can get some multicore/multithreading going for the mesh editor, like they do for the CPU render. Wings was more popular, before Blender got Ngons support, and wings is still good for some things, hell even OpenFX(the old 3d graphics OpenFX) has some mesh tools that the others don't have. Blender's node editor can be useful for 2d graphics, as well as 3d rendering, and I use Blender's node editor for some 2D post processing, that Gimp can not do. Hopefully Blender will utilize OpenCL more for editing meshes on the GPU, as well as CPU, what ever is better for the type of mesh editing.

The problem with Blender is they break too much functionality with their new releases, and do not have the resources to keep all the bells and whistles working from release to release. Sometimes I have to wait for up to 3 release cycles before the features that I need to work becomes fixed, and I can update to the latest Blender. The Blender Foundation needs to produce a detailed manual(step by step, with no details left out) on how to submit a bug report, including giving each function a proper name, so the user can report the proper function that is broken, each function/button should be able to bring up an identifier/Object-assembly number with the right click of the mouse and a menu that lists the proper information. Hopefully someone with some cash to spare, can donate funds to the Blender Foundation, that are earmarked for documentation, And Only Documentation, of the various Bells and Whistles that are in the package, and there are quite a few, and it is always growing.

July 18, 2014 | 10:59 AM - Posted by BBMan (not verified)

It is nice to see someone giving money towards this. People who do this sort of thing need to eat too and this is one hell of a lot of work.

My only qualm is that this isn't really payment- but charity. $13,500 basically gets you a used car. Makes you wonder where some developers of good, "free" open source are today. Even if they are moonlighting it, I hate the thought of many of them going unrewarded.

July 19, 2014 | 12:48 PM - Posted by Sonic4Spuds

First off, my thoughts. Basically we have seen this sort of support for the blender foundation from gaming companies recently, most notably with valve sponsoring two developers. The blender foundation has been wanting to develop FBX support for some time, but hasn't had the demand, or the support to do so, so someone like Epic stepping in to support the needed work is really great to see. Even if the sum that they are donating isn't enough to finish the work, it will be enough to get the blender dev team working on the problem.

Second off, in reply to the first comment. They have good documentation on most of their features, as well as a super easy bug reporting method, generally fast bug fixing, and fully available source code, and encourage people to stick with a specific version for similar or the same projects. The habit that they have of breaking functionality between releases is really important for the further development of the software, as they aren't tied into the flawed ways that they do first implementations, which generally become a huge problem for any software.

July 19, 2014 | 10:10 PM - Posted by Anonymous (not verified)

Their bug reporting method is not easy, if you are not a developer and familiar with the blender API! Somehow after blender 2.68a, in blender (2.69, 2.7, texture mapping an image to a curve, NON UV mapping, it is broken, the image alignment) Blender load/assign image as a texture mapping was screwed up when applying an image as a texture to a Bezier curve(closed curve with a material assigned) and have the image match up with the Bezier curve. The curve is originally created in GIMP(convert selection to path), based on the outline of an image, like a cooke cut out around/in the image, the path(curve, exported from gimp *.svg) in Gimp is then loaded into Inskape and given a color(20% gray, any color will do), and saved, so it will import into Blender as a curve with a material assigned to its surface(in the X and Y, and not the Z plane, 2d). The Image is then assigned to the curve(using the material editing, Texture, option in the blender 3d editor), and as the curve was derived from the image, the image should map exactly to the shape of the curve, to what ever internal and external pattern the curve takes. The resulting image should match the curve exactly with any holes in the pattern completely transparent (because there is no not a surface to take any value, where there is holes in the pattern). This creates a cutout that will leave a shadow the exact shape as the curve, with the image mapped to the surface of the solid areas of the pattern, aka shadow Puppet style, for any image when I create the cutout diorama/scene (simulated in blender paper cut out diorama).

This works fine in Blender 2.68a, but in Blender 2.69, and 2.7 the image does not line up, and it is loaded oversized, and out of register with the curve. It worked in Blender 2.68a(everything aligned perfectly with no tweaking needed) even in earlier than 2.68a blender versions, but AFTER 2.68a it no longer worked, without spending hours trying to hand tweak the mapping values(mapping values that were never documented properly, or described, I had to trial and error my way(hack around the interface) to get it to work, and it takes to much time and takes multiple hours to get right.

This image loading/assigning has nothing to do with UV mapping, and I am not using UV mapping, I am using the material options to assign a Image as texture to a curve or plane, in my case it is a curve that can be described as an exact cutout of an image.

And Blender's documentation is always 3 or 4 versions out of date, and it has never been kept up to date, ever. The broken feature is not a trivial feature, as without it, I can not use a later versions for assigning textures to curves. Blender needs to seriously get its documentation chops up to speed, and funds need to be marked for documentation, and only documentation! In fact the documentation on applying a image as a texture(NON UV method) is very out of date, and incomplete! The main problem with Blender is that all the features are not documented as thoroughly as they should be, before the feature is added to the application, and the only way to figure out what is going on is to look at the source code, or python script source. Each feature in Blender needs to be given a formal unique name/or identifier so the non expert/non system programmer can report the part that in broken, without having to become a code/script coder just to report a bug. Just try googleing Image as a texture for blender, there is plenty of info on UV editing, and assigning textures to UVs, but try and find documentation, other than old, out of date, documentation on assigning images as textures(to planes, and Curves), and there is no accurate description of just how and what all the bells and whistles do, when using the image as a texture(non UV) features of Blender.

Blender suffers from too much feature creep, and too little documentation! All my respect goes out to the Blender Coders, but someone needs to step up and force the coders to properly document the features that they add, I will be happy to donate, but I will only donate for the creation/funding of a person(s)/position(s) of technical writer/documenter for the blender foundation, a position that has the power to reject poorly documented features, and is mostly there to help the coders properly document their contributions. Breaking code/features that previously worked, important features, is a big NO NO, and should not be allowed to continue outside of BETA versions. Blender is a large and complex application, and should come with complete documentation, down to the smallest feature/button, there should be at least a paragraph of description, of what each feature/button/value/slider does, Like what it does to the RGBA values, or the Mesh(vertices, edges, faces), as well as the features/values that are unique to Blender.

Blender needs a Manual/Primer on how to classify the bug, and post it to their Bug reporting system, which is based on blender's Object/assemblies/other technical nomenclature, that is way to cryptic for the average user/non developer. Blender has a self documentation "Text Bubble" that sometimes describes what the Button/value does, but most of the time the text bubble just contains a script function prototype, and no cogent description in the "Text Bubble" for the Button's/Value's/other's purpose, this would be a great place to stick a unique identifier/name for novice error reporting, as well as at least a paragraph of cogent English/Other language description as the just what the button/value/slider/other does.

July 19, 2014 | 11:10 PM - Posted by P0ci (not verified)

Say what you want about epic in todays monster dev world.
But if you look at UE4 engine it blows away anything we have seen. Just look at it!! Be default support 10 cores/threads and has capability to use hundreds?

Gentlemen I think we have a new industry standard for benchmarking.

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Lines and paragraphs break automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <blockquote><p><br>
  • Web page addresses and e-mail addresses turn into links automatically.

More information about formatting options

By submitting this form, you accept the Mollom privacy policy.