Tuesday, August 30, 2011

Blender (software)


Blender.svg
Blender 2.66 Mac OS X.png
Blender 2.66 welcome screen
Developer(s)Blender Foundation
Initial release1995
Stable release2.67b / May 30, 2013; 13 days ago[1]
Written inC, C++ and Python
Operating systemFreeBSD, GNU/Linux, Mac OS X andMicrosoft Windows[2]
Type3D computer graphics software
LicenseGNU General Public License v2 or later
Websitewww.blender.org
Blender is a free and open-source 3D computer graphics software product used for creating animated films, visual effects, interactive 3D applications or video games. Blender's features include 3D modeling, UV unwrapping, texturing,rigging and skinning, fluid and smoke simulation, particle simulation, soft bodysimulation, animating, match moving, camera tracking, rendering, video editingand compositing. It also features a built-in game engine.

History[edit]

The desktop in version 2.63
Blender was developed as an in-house application by the Dutch animation studio Neo Geo and Not a Number Technologies (NaN). It was primarily authored by Ton Roosendaal, who had previously written a ray tracer called Traces for Amiga in 1989. The name "Blender" was inspired by a song by Yello, from the album Baby.[3]
Roosendaal founded NaN in June 1998 to further develop and distribute the program. The program was initially distributed as shareware until NaN went bankrupt in 2002.
The creditors agreed to release Blender under the terms of the GNU General Public License, for a one-time payment of €100,000 (US$100,670 at the time). On July 18, 2002, a Blender funding campaign was started by Roosendaal in order to collect donations and on September 7, 2002 it was announced that enough funds had been collected and that the Blender source code would be released. Today, Blender is free, open-source software and is, apart from the two half-time employees and the two full-time employees of the Blender Institute, developed by the community.[4]
Blender 2.4 screenshot
The Blender Foundation initially reserved the right to use dual licensing, so that, in addition to GNU GPL, Blender would have been available also under the "Blender License", which did not require disclosing source code but required payments to the Blender Foundation. However, this option was never exercised and was suspended indefinitely in 2005.[5] Currently, Blender is solely available under GNU GPL.

Suzanne[edit]

Suzanne
In January–February 2002 it was quite clear that NaN could not survive and would close the doors in March. Nevertheless, they found the energy for doing at least one more release: 2.25. As a sort-of easter egg, a last personal tag, the artists and developers decided to add a 3D model of a chimpanzee. It was created by Willem-Paul van Overbruggen (SLiD3), who named it Suzanne after the orangutan in the Kevin Smith film Jay and Silent Bob Strike Back.
Suzanne is Blender's alternative to more common test models such as the Utah Teapot and the Stanford Bunny. A low-polygon model with only 500 faces, Suzanne is often used as a quick and easy way to test material, animation, rigs, texture, and lighting setups, and is also frequently used in joke images[citation needed]. Suzanne is still included in Blender. The largest Blender contest gives out an award called the Suzanne Awards.

Features[edit]

Steps of forensic facial reconstruction of a mummy made on Blender
Blender has a relatively small installation size, of about 70 megabytes for builds and 115 megabytes for official releases. Official versions of the software are released for GNU/Linux, Mac OS X, Microsoft Windows, and FreeBSD[6] in both 32 and 64 bits. Though it is often distributed without extensive example scenes found in some other programs,[7] the software contains features that are characteristic of high-end 3D software.[8] Among its capabilities are:
  • Support for a variety of geometric primitives, including polygon meshes, fastsubdivision surface modeling, Bezier curves, NURBS surfaces, metaballs, multi-res digital sculpting (including maps baking, remeshing, resymetrize, decimation..), outline font, and a new n-gon modeling system called B-mesh.
  • Internal render engine with scanline ray tracing, indirect lighting, and ambient occlusion that can export in a wide variety of formats.
  • A pathtracer render engine called Cycles, which can use GPU to assist rendering. Cycles supported Open Shading Language shading since blender 2.65.[9]
  • Integration with a number of external render engines through plugins.
  • Keyframed animation tools including inverse kinematics, armature (skeletal), hook, curve and lattice-based deformations, shape keys (morphing), non-linear animation, constraints, and vertex weighting.
  • Simulation tools for Soft body dynamics including mesh collision detection, LBM fluid dynamics, smoke simulation, Bullet rigid body dynamics, ocean generator with waves.
  • A particle system which includes support for particle-based hair.
  • Modifiers to apply non-destructive effects.
  • Python scripting for tool creation and prototyping, game logic, importing and/or exporting from other formats, task automation and custom tools.
  • Basic non-linear video/audio editing.
  • Game Blender, a sub-project, offers interactivity features such as collision detection, dynamics engine, and programmable logic. It also allows the creation of stand-alone, real-time applications ranging from architectural visualization to video game construction.
  • A fully integrated node-based compositor within the rendering pipeline accelerated with OpenCL.
  • Procedural and node-based textures, as well as texture painting, projective painting, vertex painting, weight painting and dynamic painting.
  • Realtime control during physics simulation and rendering.
  • Camera and object tracking.

User interface[edit]

Blender's user interface underwent a significant update during the 2.5x series
Blender has had a reputation of being difficult to learn for users accustomed to other 3D graphics software[citation needed]. Nearly every function has a direct keyboard shortcut and there can be several different shortcuts per key. Since Blender became free software, there has been effort to add comprehensivecontextual menus as well as make the tool usage more logical and streamlined. There have also been efforts to visually enhance the user interface, with the introduction of color themes, transparent floating widgets, a new and improved object tree overview, and other small improvements (such as a color picker widget). Blender's user interface incorporates the following concepts:
Editing modes
The two primary modes of work are Object Mode and Edit Mode, which are toggled with the Tab key. Object mode is used to manipulate individual objects as a unit, while Edit mode is used to manipulate the actual object data. For example, Object Mode can be used to move, scale, and rotate entire polygon meshes, and Edit Mode can be used to manipulate the individual vertices of a single mesh. There are also several other modes, such as Vertex Paint, Weight Paint, and Sculpt Mode. The 2.45 release also had the UV Mapping Mode, but it was merged with the Edit Mode in 2.46 Release Candidate 1.[10]
Hotkey utilization
Most of the commands are accessible via hotkeys. Until the 2.x and especially the 2.3x versions, this was in fact the only way to give commands, and this was largely responsible for creating Blender's reputation as a difficult-to-learn program. The new versions have more comprehensive GUI menus.
Numeric input
Numeric buttons can be "dragged" to change their value directly without the need to aim at a particular widget, thus saving screen real estate and time. Both sliders and number buttons can be constrained to various step sizes with modifiers like the Ctrl and Shiftkeys. Python expressions can also be typed directly into number entry fields, allowing mathematical expressions to be used to specify values.
Workspace management
The Blender GUI is made up of one or more screens, each of which can be divided into sections and subsections that can be of any type of Blender's views or window-types. Each window-type's own GUI elements can be controlled with the same tools that manipulate 3D view. For example, one can zoom in and out of GUI-buttons in the same way one zooms in and out in the 3D viewport. The GUI viewport and screen layout is fully user-customizable. It is possible to set up the interface for specific tasks such as video editing or UV mapping or texturing by hiding features not utilized for the task.[11]

Hardware requirements[edit]

Blender has very low hardware requirements compared to other 3D suites.[12][13] However, for advanced effects and high-poly editing, a more powerful system is needed.
Blender hardware requirements[14]
HardwareMinimumRecommendedProduction-standard
Processor2 GHz, Dual CoreQuad CoreDual 8-Core
Memory2 GB RAM8 GB16 GB
Graphics cardOpenGL card with 256 MBVideo RAMOpenGL card with 1 GB Video RAM (CUDA or OpenCLfor GPU rendering)Dual OpenGL cards with 3 GB RAM, ATI FireGL or Nvidia Quadro
Display1280×768 pixels, 24-bit color1920×1080 pixels, 24-bit color2x 1920×1080 pixels, 24-bit color
InputTwo-button mouseThree-button mouseThree-button mouse and a graphics tablet

File format[edit]

Blender features an internal file system that allows one to pack multiple scenes into a single file (called a ".blend" file).
  • All of Blender's ".blend" files are forward, backward, and cross-platform compatible with other versions of Blender, with the exception of loading animations stored in post-2.5 files in Blender pre-2.5 (this is due to the reworked animation subsystem introduced in Blender 2.5 being inherently incompatible with older versions)
  • Snapshot ".blend" files can be auto-saved periodically by the program, making it easier to survive a program crash.
  • All scenes, objects, materials, textures, sounds, images, post-production effects for an entire animation can be stored in a single ".blend" file. Data loaded from external sources, such as images and sounds, can also be stored externally and referenced through either an absolute or relative pathname. Likewise, ".blend" files themselves can also be used as libraries of Blender assets.
  • Interface configurations are retained in the ".blend" files, such that what you save is what you get upon load. This file can be stored as "user defaults" so this screen configuration, as well as all the objects stored in it, is used every time you load Blender.
The actual ".blend" file is similar to the EA Interchange File Format, starting with its own header (for example BLENDER_v248) that specifies the version, endianness and pointer size, followed by the file's DNA (a full specification of the data format used) and, finally, a collection of binary blocks storing actual data. Presence of the DNA block in .blend files means the format is self-descriptive and any software able to decode the DNA can read any .blend file, even if some fields or data block types may need to be ignored.
Although it is relatively difficult to read and convert a ".blend" file to another format using external tools, there are several software packages able to do this, for example readblend. A wide variety of import/export scripts that extend Blender capabilities (accessing the object data via an internal API) make it possible to inter-operate with other 3D tools. CAD software uses surface description models that are significantly different from the ones used in Blender because Blender is not designed for CAD. Therefore, the direct import or export of CAD files is not possible.
Jeroen Bakker documented the Blender file format to allow inter-operation with other tooling. The document can be found at the The mystery of the blend website.[15] A DNA structure browser[16] is also available on this site.
Blender organizes data as various kinds of "data blocks", such as Objects, Meshes, Lamps, Scenes, Materials, Images and so on. An object in Blender consists of multiple data blocks – for example, what the user would describe as a polygon mesh consists of at least an Object and a Mesh data block, and usually also a Material and many more, linked together. This allows various data blocks to refer to each other. There may be, for example, multiple Objects that refer to the same Mesh, allowing Blender to keep a single copy of the mesh data in memory, and making subsequent editing of the shared mesh result in shape changes in all Objects using this Mesh. This data-sharing approach is fundamental to Blender's philosophy and its user interface and can be applied to multiple data types. Objects, meshes, materials, textures etc. can also be linked to from other .blend files, allowing the use of .blend files as reusable resource libraries.

Comparison with other 3D software[edit]

A 2007 article[which?] stated that Blender's interface was not up to industry standards, but was nevertheless suited to fast workflow and was sometimes more intuitive. Poor documentation was also criticized[according to whom?].[17]
Blender is a dominant open-source product with a range of features comparable to mid- to high-range commercial, proprietary software.[17] In 2010, CGenie rated Blender as a fledgling product with the majority of its users being "hobbyists" rather than students or professionals but with its high standards rising yearly.[18] They also reported that users thought Blender needed more development and required more compatibility with other programs.[19] Blender is also used by scientific groups all over the world [20] in tandem with applications such as MatLab.
In 2011, Blender 2.5 was released. Featuring a completely redesigned user interface, it aims to improve work flow and ease of use.[21]During beta-testing, Blender 2.5's animation system was considered by the Sintel animators to be as good as or better than some commercial packages.[22]

Development[edit]

Game engine GLSL materials
Since the opening of the source, Blender has experienced significant refactoring of the initial codebase and major additions to its feature set.
Improvements include an animation system refresh;[23] a stack-based modifier system;[24] an updated particle system[25] (which can also be used to simulate hair and fur); fluid dynamics; soft-body dynamics; GLSL shaders support[26] in the game engine; advanced UV unwrapping;[27] a fully recoded render pipeline, allowing separate render passes and "render to texture"; node-based material editing and compositing; Projection painting.[28]
Part of these developments were fostered by Google's Summer of Code program, in which the Blender Foundation has participated since 2005.
The current stable release version is 2.67a[1] (as of 22 May 2013), a bugfix release to the previous version 2.67 that was released on May 7, 2013. New features in 2.67 included:[1]
  • New Freestyle rendering engine
  • Improved paint system
  • Improved compositing and nodes
and improvements to the Cycles render engine, the motion tracker, mesh editing tools, 3D printing Addon, and other new Addons. Besides new features, 260 bugs from previous releases were fixed.

Support[edit]

In the month following the release of Blender v2.44, it was downloaded 800,000 times;[29] this worldwide user base forms the core of the support mechanisms for the program. Most users learn Blender through community tutorials and discussion forums on the internet such as Blender Artists;[30] however, another learning method is to download and inspect ready-made Blender models.
Numerous other sites, for example BlenderArt Magazine[31]—a free, downloadable magazine with each issue handling a particular area in 3D development—and BlenderNation, provide information on everything surrounding Blender, showcase new techniques and features, and provide tutorials and other guides.

Use in the media industry[edit]

Big Buck Bunny poster
Sintel promotional poster
Tears of Steel promotional poster
Blender started out as an inhouse tool for a Dutch commercial animation company, NeoGeo.[32] Blender has been used for television commercials in several parts of the world including Australia,[33] Iceland,[34]Brazil,[35][36] Russia[37] and Sweden.[38]
The first large professional project that used Blender was Spider-Man 2, where it was primarily used to create animatics and pre-visualizations for the storyboard department.
As an animatic artist working in the storyboard department of Spider-Man 2, I used Blender's 3D modeling and character animation tools to enhance the storyboards, re-creating sets and props, and putting into motion action and camera moves in 3D space to help make Sam Raimi's vision as clear to other departments as possible.[39] – Anthony Zierhut,[40] Animatic Artist, Los Angeles.
The French-language film Friday or Another Day (Vendredi ou un autre jour) was the first 35 mm feature film to use Blender for all the special effects, made on GNU/Linux workstations.[41] It won a prize at theLocarno International Film Festival. The special effects were by Digital Graphics[42] of Belgium.
Blender has also been used for shows on the History Channel, alongside many other professional 3D graphics programs.[43]
Tomm Moore's The Secret of Kells, which was partly produced in Blender by the Belgian studio Digital Graphics, has been nominated for an Oscar in the category 'Best Animated Feature Film'.[44]

Elephants Dream (Open Movie Project: Orange)[edit]

In September 2005, some of the most notable Blender artists and developers began working on a short film using primarily free software, in an initiative known as the Orange Movie Project hosted by theNetherlands Media Art Institute (NIMk). The resulting film, Elephants Dream, premiered on March 24, 2006. In response to the success of Elephants Dream, the Blender Foundation founded the Blender Institute to do additional projects with two announced projects: Big Buck Bunny, also known as "Project Peach" (a 'furry and funny' short open animated film project) and Yo Frankie, also known as Project Apricot (an open game in collaboration with CrystalSpace which reused some of the assets created during Project Peach). This has later made its way to Nintendo 3DS's Nintendo Video between the years 2012 and 2013.

Big Buck Bunny (Open Movie Project: Peach)[edit]

On October 1, 2007, a new team started working on a second open project, "Peach", for the production of the short movie Big Buck Bunny. This time, however, the creative concept was totally different. Instead of the deep and mystical style of Elephants Dream, things are more "funny and furry" according to the official site.[45] The movie had its premiere on April 10, 2008.

Yo Frankie! (Open Game Project: Apricot)[edit]

"Apricot" is a project for production of a game based on the universe and characters of the Peach movie (Big Buck Bunny) using free software. The game is titled Yo Frankie. The project started February 1, 2008, and development was completed at the end of July 2008. A finalized product was expected at the end of August; however, the release was delayed. The game was released on December 9, 2008, under either the GNU GPL or LGPL, with all content being licensed under Creative Commons Attribution 3.0.[46]

Plumíferos[edit]

Plumíferos, a commercial animated feature film created entirely in Blender,[47] was premiered in February 2010 in Argentina. Its main characters are anthropomorphic talking animals.

Sintel (Open Movie Project: Durian)[edit]

The Blender Foundation's Project Durian[48] (in keeping with the tradition of fruits as code names) was this time chosen to make afantasy action epic of about twelve minutes in length,[49] starring a female teenager and a young dragon as the main characters. The film premiered online on September 30, 2010.[50] A game based on Sintel was officially announced on Blenderartists.org on May 12, 2010.[51][52]
Many of the new features integrated into Blender 2.5 and beyond were a direct result of Project Durian.

Tears of Steel (Open Movie Project: Mango)[edit]

Derek de Lint in a scene from Tears of Steel
On October 2, 2011, the fourth open movie project, codenamed "Mango", was announced by the Blender Foundation.[53][54] A team of artists was to be assembled using an open call of community participation. It is the first blender open movie to use live action as well as CG.
Filming for Mango started on May 7, 2012, and the movie was released on September 26, 2012. As with the previous films, all footage, scenes and models were made available under afree content compliant Creative Commons license.[55][56]
According the film's press release, "The film's premise is about a group of warriors and scientists, who gather at the 'Oude Kerk' in Amsterdam to stage a crucial event from the past, in a desperate attempt to rescue the world from destructive robots."[57]