# Blender (Software)

Blender ist eine freie, mit der GPL lizenzierte 3D-Grafiksoftware, mit welcher sich Körper modellieren, texturieren und animieren lassen. Diese können in Grafiken, Animationen und Software systematisiert werden. Geschaffene Bildsynthesen können mithilfe des integrierten Compositors und Videoschnittprogramms nachbearbeitet werden. Das Programm wird von professionellen und ehrenamtlichen Mitarbeitern entwickelt. C und C++ werden als Programmiersprachen genutzt, Python wird als Skriptsprache verwendet.
Das Programm ist trotz seines Funktionsumfanges eher klein (je nach Version und Betriebssystem zwischen 100 MB und 557 MB) und läuft auf den meisten gebräuchlichen Rechnersystemen. Da der Quelltext frei verfügbar ist, kann es bei Bedarf auch für die eigene Plattform übersetzt werden. Es ist als portable App verfügbar und kann somit auf vielen Systemen, beispielsweise Windows, Linux, macOS, AmigaOS oder FreeBSD, ohne Installation betrieben werden (z. B. von einem Netzwerklaufwerk oder USB-Stick).

## Funktionalität

Blender ist ein Programmpaket zur Modellierung, Texturierung, Animation, Bildsynthese, Video- und Bildbearbeitung. Seine dynamische Benutzeroberfläche passt sich den jeweiligen Aufgaben an. Dazu gehören unterschiedliche Objekttypen (Polygonnetze, Bézierkurven, NURBS-Oberflächen, Metaball-, Text-, Empty-, Lattice-, Armature- und Lampenobjekte), eine große Zahl an Modifikatoren, die Polygonnetz-Bearbeitung und Sculpting-Werkzeuge, das umfangreiche Material-Nodesystem, in dem die Eigenschaften der Materialien mit Hilfe von Shadern verändert werden können, die sich wiederum durch Werte und Texturen beeinflussen lassen, und schließlich die Keyframing-Funktionen, sowie die Werkzeuge zur Postproduktion.
Blender verfügt ab Version 2.80 über drei interne Rendering-Engines: die traditionelle Engine Workbench Render, Cycles Render (die u. a. auch Raytracing unterstützt) und „Eevee“, die eine sogenannte Realtime-Render-Engine ist.
Die veraltete Blender Game Engine (BGE) ist seit der Version 2.80 kein Bestandteil von Blender mehr. Quelloffene Alternativen sind beispielsweise Godot, Armory3D oder UPBGE.

### Interaction Modes

Es gibt verschiedene Modi, in denen man Objekte verändern kann.

#### Object Mode

    grobes Bearbeiten von Objekten (Skalieren und Rotieren) und das Anordnen der Szene

#### Edit Mode

    Modellieren der Punkte, Kanten und Flächen eines Objektes

#### Sculpt Mode

    Mit einem Multiresolution-Modifier oder Dynamic Topology kann man mit verschiedenen Pinseln ein Objekt bearbeiten, ohne einzelne Punkte zu bewegen.

#### Vertex Paint

    Man kann Vertexgruppen erstellen, indem man einzelne Punkte einfärbt.

#### Weight Paint

    Vertexgruppen können durch das Färben der Punkte erstellt werden. Wenn ein Objekt blau ist, dann hat es keine Wirkung, wenn ein Objekt oder Punkt rot ist, dann hat es volle Wirkung. Alle Farbabstufungen dazwischen haben dementsprechend eine Wirkung dazwischen.

#### Texture Paint

    Objekte können mit einer UV-Map texturiert werden. In diesem Modus ist es dem Nutzer möglich mit einem Pinsel auf den Objekten zu malen und so eine Textur für diese zu erstellen.

### Benutzeroberfläche

Die Benutzeroberfläche des Programms setzt sich aus Regionen (Regions) zusammen, welche dynamisch angeordnet, skaliert und ein- bzw. ausgeblendet werden können. In ihnen lässt sich je ein Menü platzieren. Menüs teilen sich in Werkzeugleisten (Panels) auf, in welchen sich Steuerelemente (Controls) befinden. Die zahlreichen Tastenkombinationen ermöglichen effizientes und schnelles Arbeiten.
Blender enthält u. a. folgende Menüs:
* 3D-View:
** Die 3D-Ansicht ist ein zentrales Menü des Programms, das sich zusammensetzt aus dem Viewport (einer Vorschau, in der die Szenerie abstrahiert dargestellt wird), einer Leiste, auf der grundlegende Einstellungen zur Szenerie vorgenommen werden können, sowie einer weiteren Leiste, die einfache Eingaben ermöglicht.
* Shading-FensterProperties:
** Im Properties-Menü können Einstellungen zum selektierten Objekt vorgenommen werden. Es lassen sich u. a.:
*** Einstellungen zur Vorbereitung der Bildsynthese vornehmen
*** Einstellungen zur Szenerie vornehmen
*** Einstellungen zum Hintergrund vornehmen
*** Einstellungen zum Objekt vornehmen
*** Constraints beifügen
*** Materialien verwalten
*** Modifikatoren (Modifier) hinzufügen
*** Texturen verwalten
*** Partikel- und Physiksimulationen verwalten
* Timeline:
** Die Timeline ist ein Animationswerkzeug. Sie ermöglicht u. a.:
*** Eine Vorschau geschaffener Animationen im Viewport darzustellen
*** Unterschiedliche Frames der Animation im Viewport darzustellen
*** Keyframes zu setzen, zu verschieben und anzuordnen
* Node Editor
** Im Node Editor lassen sich sämtliche Arbeiten, bei welchen Knoten eingesetzt werden können, verrichten. Er lässt sich in folgenden Bereichen einsetzen:
*** Shading
*** Texturierung
*** Compositing
* Geometry Node Editor
** Geometry Nodes können verwendet werden, um die Geometrie eines Objekts in einer komplexeren Weise zu ändern als normale Modifikatoren.
* UV/Image Editor
** Im UV/Image Editor kann man Bilder oder UV-Maps (2D-Abbildungen eines 3D-Objekts) einfügen. Er lässt sich dafür einsetzen:
*** Texturierung
*** Referenzen abbilden
*** Projection Paint
Zur Organisation der Projekte können innerhalb einer Datei mehrere Szenerien (Scenes) erstellt werden. Objekte können auf verschiedenen Ebenen (Layers) platziert werden, um sie separiert bearbeiten und ein- und ausblenden zu können.
Körper lassen sich in unterschiedlichen Modi editieren. Wird ein Objekt einem Modus zugeordnet, werden in der 3D-Ansicht Steuerelemente, welche für Arbeiten in diesem Modus von Bedeutung sind, eingeblendet. Zudem wird die Visualisierung des Objekts im Viewport an die Modusfunktion angepasst. Dadurch soll Übersichtlichkeit geschaffen werden.

### Features

* Blender arbeitet mit Polygonnetzen, Bézierkurven, NURBS-Oberflächen, Metaball- und Textobjekten. Die Unterstützung für die Bearbeitung von Polygonnetzen (ab Version 2.63 auch mit mehr als 4 Ecken je Polygon) ist dabei ein deutlicher Schwerpunkt. Dafür sind unter anderem verfügbar:
** Unterteilungsflächen (Subdivision Surfaces)
** Multiresolution-Netze, also Objekte in mehreren Auflösungsstufen
** Sculpting-Werkzeuge, mit denen Objekte wie virtueller Ton verformt werden können
* Blender besitzt Material- und Texturierungswerkzeuge:
** Verschiedene UV-Unwrapping-Methoden (u. a. Angle-Based, Conformal, Smart Projections)
** knotenbasierte Material- und Textureditoren, die sehr komplexe Materialien erlauben
** 3D-Malwerkzeuge erlauben das Malen direkt auf dem Modell
** Unterstützung für Grafiktabletts
* Die Animationswerkzeuge umfassen unter anderem:
** Shape-Keys (Morph Targets)
** Charakteranimationen mit direkter und inverser Kinematik
** auf Kurven und Lattice (Käfig) basierende Verformungen
** Simulation elastischer Objekte (Softbodies), einschließlich Kollisionserkennung
** Simulation von Festkörpern (Rigidbodies), ebenfalls mit Kollisionserkennung
** Kleidungssimulation
** partikelbasierte Haare, Gräser usw.
** Partikel mit Kollisionserkennung
** Flüssigkeitsdynamik, inklusive Feuer- und Rauchsimulation
* Blender benutzt ein eigenes mit „.blend“ gekennzeichnetes Dateiformat, auf welches mit anderen Programmen nur schwer zugegriffen werden kann. Es ist plattformübergreifend und auf- und abwärtskompatibel. Import- und Exportskripte sind für diverse Formate integriert, z. B. für OBJ- und FBX-Dateien, und zusätzlich über Plug-Ins erweiterbar.
* Als Skriptsprache dient Python.
* Ebenfalls in Python wird die 3D-Spieleengine programmiert. Mit dieser können eigenständige Echtzeitanwendungen in Blender erstellt werden.
* Blender enthält ein einfaches, aber funktionales Videoschnittprogramm, welches den ressourcensparenden Umgang mit großen Dateien erlaubt.
* Blender beinhaltet einen umfangreichen knotenbasierten Compositor, um Bilder und Animationen direkt im Programm zu bearbeiten.
* Blender kann ab Version 2.61 Punkte in Videos verfolgen (Tracken) und daraus ihre Position im Raum errechnen. Damit lässt sich sowohl die Bewegung der Kamera als auch die von Objekten in Blender übertragen. Dies eignet sich zum Beispiel, um animierte Modelle in reale Aufnahmen zu setzen.
* Zudem kann Blender durch sogenannte Add-ons, von denen viele nicht von Blender selbst kommen, erweitert werden.

### Renderengines

Blender kann die erzeugten Szenen mittels verschiedener Renderengines zu einem finalen Bild ausgeben. Standardeinstellung ist nach Programmstart der Renderer „Eevee“, der seit Version 2.8 enthalten ist. Zusätzlich enthält das Programm ab Version 2.6 auch eine Unbiased-Renderengine namens „Cycles“, die auch in Echtzeit, d. h. während des Redigierens funktioniert und mithilfe von Nvidia CUDA, OptiX und AMD HIP, Intel Zero (bis 2.9.3 OpenCL) auch mit der GPU rendern kann. Eevee gibt eine OpenGL-Vorschau aus, deren Darstellung allerdings deutlich von der verwendeten Grafikhardware abhängen kann.
Unabhängig von der verwendeten Renderengine (auch bei der OpenGL-Vorschau) können die erzeugten Bilder in verschiedene Ausgabeformate einschließlich HDR, EXR oder diversen Videoformaten abgespeichert werden. Dank der verwendeten FFmpeg-Bibliotheken ist diese Ausgabe dabei unabhängig von auf dem System installierten Codecs.
Cycles wird seit Erscheinen beständig weiterentwickelt und hat sich auch unter den Benutzern als neue Standardengine durchgesetzt. Der klassische Renderer Blender Internal wird seit längerer Zeit nicht mehr weiterentwickelt und ist ab Version 2.8 nicht mehr Bestandteil von Blender; auch die Blender Game Engine ist entfallen und soll durch eine Alternative ersetzt werden.
Beide Renderengines sind voll multithreadfähig und unterstützen unter anderem:
* Kantenrendern (Cartoon-Linien)
* Raytracing
* Umgebungsverdeckung (Ambient Occlusion)
* Radiosity
* mehrschichtiges Rendering und Compositing
* Rendern von volumetrischen Partikeln
* Haare und Fell
* Bewegungsunschärfe
Neben den drei internen Renderern können verschiedene externe Renderengines eingesetzt werden (z. B. YafaRay Kerkythea, Indigo, OctaneRender, AMD Radeon ProRender, Pixar RenderMan oder LuxCoreRender).
Ab Blender Version 3.0 wird voraussichtlich die neue Renderengine Cycles X eingeführt werden.

## Geschichte

Ursprünglich war Blender ein firmeninternes Programm des niederländischen Animationsstudios NeoGeo. Der Chefentwickler Ton Roosendaal gründete im Jahr 1998 das Unternehmen Not a Number Technologies (NaN), um Blender weiterzuentwickeln und zu vertreiben. Nach der Insolvenz von NaN stimmten die Gläubiger zu, Blender für einen Betrag von 100.000 $ als Open Source freizugeben und unter die freie Softwarelizenz GNU General Public License (GPL) zu stellen. Am 18. Juli 2002 wurde daher von Ton Roosendaal die Stiftung Blender Foundation mit dem Ziel gegründet, Spenden zu sammeln. Am darauffolgenden 7. September war das Ziel von 100.000 Euro erreicht. Diese Strategie der Spendensammlung nennt man auch das Street Performer Protocol bzw. Crowdfunding.
Die Weiterentwicklung von Blender wird auch weiterhin durch Spenden unterstützt und nach eigenen Angaben der Blender Foundation wurde im Monat Mai 2022 eine Gesamtsumme von 169.546 Euro von insgesamt 36 Unternehmen und 2.929 Personen gespendet. Offizielle Unterstützer sind unter anderem Intel, Unity, AMD und Epic Games.

### Versionen

Eine Übersicht über alle erschienenen Programmversionen ist auf der offiziellen Webseite und im deutschsprachigen Handbuch im Kapitel „Die Geschichte von Blender“ zu finden.
Ebenfalls erhältlich sind sogenannte „Daily Builds“-Versionen mit den neusten Änderungen.
Die rasche Weiterentwicklung der Software führt dazu, dass Anwender nach Möglichkeit immer die aktuellste stabile Version verwenden. Um aber für langfristige und professionelle Projekte, zum Beispiel in der Gaming-Branche und bei Filmproduktionen, ein zuverlässiges Werkzeug zu bieten, gibt es seit Juni 2020 das Blender LTS Programm. Kritische Fehler werden in Blender LTS-Versionen über den Zeitraum von 2 Jahren behoben.

### Suzanne

Als im Januar 2002 klar wurde, dass NaN im März die Tore schließen würde, wollten die Entwickler noch einmal eine „persönliche Note“ in ihrem letzten Release (v2.25) setzen und fügten als eine Art Easter Egg ein Mesh-Grundmodell (primitive) eines Affenkopfes ein. Dieser wurde von Willem-Paul van Overbruggen erstellt und ist nach einem Orang-Utan aus dem Film Jay und Silent Bob schlagen zurück benannt. Suzanne, die innerhalb der Software in den Menüs nur namenlos als „Monkey“ bezeichnet wird, wurde in den späteren Open Source Releases beibehalten, gewann in der Blender-Community schnell Kultstatus und wurde so zum Blender-Maskottchen.
Suzanne ist ein Low-Poly-Modell (nur 500 Polygone) und stellt in Blender die Alternative zur sonst gebräuchlichen Utah-Teekanne dar. Es dient oft als schnelle und einfache Möglichkeit, Materialien, Texturen und Licht-Setups zu testen. Dabei ist Suzanne darauf optimiert, unter Anwendung eines Subdivision-Surface-Modifiers dargestellt zu werden.
Im Rahmen der alljährlich in Amsterdam stattfindenden Blender Conference wird ein Animationspreis mit dem Namen „Suzanne Award“ vergeben.

## Einsatz

Blender wird sowohl von Privatpersonen als auch von kleineren Studios genutzt, da die Software gegenüber anderen populären 3D-Grafiksuiten den Vorteil hat, dass sie kostenfrei erhältlich und neben Modellierungs-, Texturierungs- und Renderingfunktionen über Menüs zum Sculpting, zum Videoschnitt und zur digitalen Nachbearbeitung verfügt.

### Beispielgrafiken

* „Einsames Haus“ – in Blender modelliert, mit Texturen versehen und gerendert
* Szene aus dem Film Big Buck Bunny (2008)
* Modelle, in Version 2.66 gerendert
* Digitales Kunstwerk „cubes“ (2024)
* Ein würfelförmiges Labyrinth, erstellt mit Cycles in Blender 4.1

### Blender Studio und Blender Open Movies

Ein Team von Software-Entwicklern und 3D-Künstlern erstellen im Blender Studio Filme mit Blender und veröffentlichen die fertigen Filme, die Projektdateien und zugehörige Trainings-Videos.

### Einsatz in filmischen Projekten und Videospielen

* Im September 2005 begannen einige der angesehensten Blender-Künstler und -Entwickler die Arbeit an einem Kurzfilm. Dabei benutzten sie hauptsächlich freie Software. Dieses Projekt ist als Orange Movie Project bekannt. Der daraus entstandene Film, Elephants Dream, hatte am 24. März 2006 Premiere, wurde im Mai 2006 auf DVD herausgebracht und über Tauschbörsen zum Herunterladen freigegeben.
* Ein weiteres Filmprojekt namens Big Buck Bunny erschien am 20. Mai 2008 auf DVD. Es stellt das Folgeprojekt von Elephants Dream dar.
* Das von erfahrenen Spieleentwicklern in Blender realisierte quelloffene Spiel Yo Frankie ist seit dem 14. November 2008 als DVD und seit dem 9. Dezember 2008 im Internet erhältlich. Als Grafikengines kommen die quelloffenen Engines Crystal Space und die blenderinterne Engine zum Einsatz. Das Spiel kann in Blender selbst verändert und erweitert werden.
* In Argentinien entstand der 80-minütige Animationsfilm „Plumiferos“, der am 18. Februar 2010 in Buenos Aires Premiere hatte.
* Am 1. September 2009 startete das dritte Open Movie Project unter dem Arbeitstitel Durian. Der fertige Film namens Sintel hatte seine Premiere am 28. September 2010 auf dem Niederländischen Filmfestival; seit dem 30. September 2010 steht der Film zum Herunterladen bereit und kann auf öffentlichen Videoplattformen, wie YouTube, angesehen werden.
* Im Oktober 2011 startete das vierte Open Movie Project der Blender Foundation mit dem Projektnamen Mango. Ziel des Projekts war es, die Funktionalität im Bereich visueller Effekte zu erweitern. Der fertige Film trägt den Namen Tears of Steel und feierte am 26. September 2012 seine Premiere. In dem zwölfminütigen Kurzfilm versucht eine Gruppe von Kämpfern und Wissenschaftlern, die Erde vor der Zerstörung durch Roboter zu retten. Der komplette Film ist als Torrent frei verfügbar, das Quellmaterial (PNG-Einzelbilder, Stereo- und 5.1-Sound, Render in 4000 × 2000 Pixeln und weitere Projektdateien) wurde ebenfalls veröffentlicht.
* In den virtuellen Welten Second Life und OpenSim werden damit häufig Objekte wie Gebäude, Fahrzeuge oder Kleidungsstücke von Spielern gestaltet.
* Im Bereich des Simracing hat sich Blender als Werkzeug zur Erstellung und Nachbau von Rennstrecken etabliert. Im Vergleich zu anderen 3D-Suiten bietet Blender hier einiges an Funktionalität, für die man in anderen Programmen zu teils kostenpflichtigen Add-ons greifen muss.
* 3D-Objekte können mit der Hilfe von Blender für den Microsoft Flight Simulator 2020 erstellt werden. Hierfür wird ein spezielles Plugin zur Verfügung gestellt.