Blender is a free and open-source 3D computer graphics software suite. It runs on Windows, macOS, Linux, BSD, Haiku, and IRIX and is used for general 3D modeling, animation, digital sculpting, visual effects, rendering, compositing, motion tracking, drawing, 2D animation and video editing. It is widely used to create animated films, visual effects, art, 3D-printed models, motion graphics, interactive 3D applications, virtual reality, and 3D models for video games.
History
Blender was initially developed as an in-house application by the Dutch animation studio NeoGeo (no relation to the video game brand), and was officially launched on 2 January 1994. Version 1.00 was released in January 1995, with the primary author being the company co-owner and software developer Ton Roosendaal. The name Blender was inspired by a song by the Swiss electronic band Yello, from the album Baby, which NeoGeo used in its showreel.Archived at Ghostarchive and the Wayback Machine: Some design choices and experiences for Blender were carried over from an earlier 3D ray-tracing software application, called Traces, that Roosendaal developed for NeoGeo on the Commodore Amiga platform during the 1987–1991 period.
On 1 January 1998, Blender was released publicly online as SGI freeware. NeoGeo was later dissolved, and its client contracts were taken over by another company. After NeoGeo's dissolution, Ton Roosendaal founded Not a Number Technologies (NaN, a reference to the computing term of the same name) in June 1998 to further develop Blender, initially distributing it as shareware until NaN went bankrupt in 2002. This also resulted in the discontinuation of Blender's development.
In May 2002, Roosendaal started the non-profit Blender Foundation, with the first goal to find a way to continue developing and promoting Blender as a community-based open-source project. On July 18, 2002, Roosendaal started the "Free Blender" campaign, a crowdfunding precursor. The campaign aimed at open-sourcing Blender for a one-time payment of €100,000 (US$100,670 at the time), with the money being collected from the community. On September 7, 2002, it was announced that they had collected enough funds and would release the Blender source code. Today, Blender is free and open-source software, largely developed by its community as well as 26 full-time employees and 12 freelancers employed by the Blender Institute.
The Blender Foundation initially reserved the right to use dual licensing so that, in addition to GPL 2.0-or-later, 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. Blender is solely available under "GNU GPLv2 or any later" and was not updated to the GPLv3, as "no evident benefits" were seen. The binary releases of Blender are under GNU GPLv3 or later because of the incorporated Apache libraries.
In 2019, with the release of version 2.80, the integrated game engine for making and prototyping video games was removed; Blender's developers recommended that users migrate to more powerful open source game engines such as Godot instead.
Suzanne
In February 2002, the fate of the Blender software company, NaN, became evident as it faced imminent closure in March. Nevertheless, one more release was pushed out, Blender 2.25. As a sort of Easter egg and last personal tag, the artists and developers decided to add a 3D model of a chimpanzee head (called a "monkey" in the software). 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 included in Blender and often used as a quick and easy way to test materials, animations, rigs, textures, and lighting setups. It is included as a primitive, alongside other meshes such as cubes and planes.
The largest Blender contest gives out an award called the Suzanne Award.
Features Modeling Blender has support for a variety of geometric primitives, including polygon meshes, Bézier curves, NURBS surfaces, metaballs, icospheres, text, and an n-gon modeling system called B-mesh. There is also an advanced polygonal modelling system which can be accessed through an edit mode. It supports features such as extrusion, bevelling, and subdividing.
Modifiers Modifiers apply various non-destructive effects which can be applied upon rendering or exporting, such as subdivision surfaces. These effects are sorted into categories such as generate and deform. A few examples of commonly used modifiers are generally subdivide surface, geometry nodes, solidify, and shrinkwrap.
Sculpting Blender has multi-resolution digital sculpting, which includes dynamic topology, "baking", remeshing, re-symmetrization, and decimation. The latter is used to simplify models for exporting purposes (an example being game assets).
Geometry nodes
Blender has a node graph system for procedurally and non-destructively creating and manipulating geometry. It was first added to Blender 2.92, which focuses on object scattering and instancing. It takes the form of a modifier, so it can be stacked over other different modifiers. The system uses object attributes, which can be modified and overridden with string inputs. Attributes can include positions, normals and UV maps. All attributes can be viewed in an attribute spreadsheet editor. The Geometry Nodes utility also has the capability of creating primitive meshes. In Blender 3.0, support for creating and modifying curves objects was added to Geometry Nodes; in the same release, the Geometry Nodes workflow was completely redesigned with fields, in order to make the system more intuitive and work like shader nodes.Archived at Ghostarchive and the Wayback Machine:
Simulation Blender can be used to simulate smoke, rain, dust, cloth, fluids, hair, and rigid bodies.
Fluid simulation The fluid simulator can be used for simulating liquids, like water being poured into a cup. It uses Lattice Boltzmann methods (LBM) to simulate fluids and allows for plenty of adjustment of particles and resolution. The particle physics fluid simulation creates particles that follow the smoothed-particle hydrodynamics method.
Blender has simulation tools for soft-body dynamics, including mesh collision detection, LBM fluid dynamics, smoke simulation, Bullet rigid-body dynamics, an ocean generator with waves, a particle system that includes support for particle-based hair, and real-time control during physics simulation and rendering.
In Blender 2.82, a new fluid simulation system called Mantaflow was added, replacing the old FLIP system. In Blender 2.92, another fluid simulation system called APIC, which builds on Mantaflow, was added. Vortices and more stable calculations are improved from the FLIP system.
Cloth Simulation Cloth simulation is done by simulating vertices with a rigid body simulation. If done on a 3D mesh, it will produce similar effects as the soft body simulation.
Animation Blender's keyframed animation capabilities include inverse kinematics, armatures, hooks, curve- and lattice-based deformations, shape keys, non-linear animation, constraints, and vertex weighting. In addition, its Grease Pencil tools allow for 2D animation within a full 3D pipeline.
Rendering
Blender includes three render engines since version 2.80: EEVEE, Workbench and Cycles.
Cycles is a path tracing render engine. It supports rendering through both the CPU and the GPU. Cycles supports the Open Shading Language since Blender 2.65.
Cycles Hybrid Rendering is possible in Version 2.92 with OptiX. Tiles are calculated with GPU in combination with CPU.
EEVEE is physically based real-time renderer. While it is capable of driving Blender's real-time viewport for creating assets thanks to its speed, it can also work as a renderer for final frames.
Workbench is a real-time render engine designed for fast rendering during modelling and animation preview. It is not intended for final rendering. Workbench supports assigning colors to objects for visual distinction.
Cycles
Cycles is a path-tracing render engine that is designed to be interactive and easy to use, while still supporting many features. It has been included with Blender since 2011, with the release of Blender 2.61. Cycles supports the Advanced Vector Extensions, AVX2 and AVX-512 extension sets, as well as CPU acceleration in modern hardware.
GPU rendering
Cycles supports GPU rendering, which is used to speed up rendering times. There are currently five GPU rendering backends:
CUDA, which is the preferred method for older Nvidia graphics cards with CUDA capability (generally Kepler architecture and newer). CUDA remains compatible with many NVIDIA cards but is typically slower than OptiX on RTX hardware. OptiX, which is available for Nvidia RTX GPUs based on the Turing architecture and newer versions of it. It uses dedicated hardware ray-tracing cores to accelerate ray tracing and AI-based denoising. HIP, which enables GPU rendering on AMD Radeon graphics cards using the HIP framework. It supports modern AMD GPU architectures and is available on Windows and Linux. oneAPI for Intel and Intel Arc GPUs, through Intel's oneAPI framework. Metal, which is used on Apple computers running macOS with Apple silicon (such as M1, M2, and later processors) and supported AMD GPUs. Metal support was introduced in Blender 3.1 and has since been expanded and optimized.
GPU rendering typically requires compatible graphics drivers installed on the system. Blender automatically detects supported GPU devices through these drivers without requiring manual installation of development toolkits in most cases.
Multiple GPUs are also supported (with the notable exception of the Eevee render engine) which can be used to create a render farm to speed up rendering by processing frames or tiles in parallel—having multiple GPUs, however, does not increase the available memory since each GPU can only access its own memory. Since Version 2.90, this limitation of SLI cards is broken with Nvidia's NVLink.
+Supported features Feature CPU CUDA OptiX HIP oneAPI Metal Minimum Supported Hardware x86-64 or ARM64 CPUs NVIDIA GPUs with CUDA capability (Kepler or newer) NVIDIA RTX GPUs with hardware ray-tracing support AMD Radeon GPUs supporting the HIP backend (RDNA architecture or newer)(Windows, Linux) Intel GPUs supported by oneAPI, including Intel Arc graphics cards (Windows, Linux) Apple computers with Apple silicon in macOS 12.2, AMD Graphics Cards with macOS 12.3 Basic shading Shadows Motion blur Hair Volume Subsurface scattering Open Shading Language (1.11) (OSL 1.12.6 in 3.4) Correlated multi-jittered sampling Bevel and AO shaders Baking Can use CPU memory Distribute memory across devices with render farm with NVLink with NVLink Adaptive subdivision
Integrator The integrator is the core rendering algorithm used for lighting computations. Cycles currently supports a path tracing integrator with direct light sampling. It works well for a variety of lighting setups, but it is not as suitable for caustics and certain other complex lighting situations. Rays are traced from the camera into the scene, bouncing around until they find a light source (a lamp, an object material emitting light, or the world background), or until they are simply terminated based on the number of maximum bounces determined in the light path settings for the renderer. To find lamps and surfaces emitting light, both indirect light sampling (letting the ray follow the surface bidirectional scattering distribution function, or BSDF) and direct light sampling (picking a light source and tracing a ray towards it) are used.