Maya (Software)
# Maya (Software)

Maya ist eine Software zur 3D-Visualisierung und -Animation. Maya wird in der Film- und Fernsehindustrie sowie bei der Entwicklung von Computerspielen eingesetzt. Weitere Anwendungsgebiete sind die industrielle Fertigung, Architekturvisualisierung, sowie Forschung und Entwicklung. Maya ist eines der bekanntesten und meistgenutzten Softwareprodukte im Bereich 3D-Modellierung, Computeranimation und Rendering.
Die Entwicklerfirma Alias wurde am 10. Januar 2006 von einem ihrer größten Konkurrenten, Autodesk, übernommen.

## Geschichte

Maya hatte mehrere Vorgängerprogramme zur 3D-Visualisierung und Computeranimation, vor allem „Alias Sketch!“ und „Poweranimator“. Nachdem der Hersteller von Grafikcomputern Silicon Graphics 1995 die beiden Firmen Alias Research in Toronto und Wavefront Technologies in Santa Barbara gekauft hatte und sie unter dem Namen „Alias|Wavefront“ zusammenbrachte, machte man sich an die Entwicklung eines neuen Produkts zur Computeranimation, das die Bausteine der beiden Firmen vereinen und mit einer neuen Benutzerschnittstelle ausstatten sollte. Die einzige Konkurrenz im High-End-Animationsbereich war Ende der 1990er Jahre Softimage.
Bei der Portierung auf das SGI-Betriebssystem IRIX brachte das Team in Kalifornien den Arbeitstitel „Maya“ ins Spiel – benannt nach dem Sanskritwort für „Illusion“, angelehnt an die Hindu-Gottheit der Illusion. Man arbeitete in dieser Phase mit Praktikern aus der Trickfilmproduktion bei Disney zusammen, die vom 2D-Trick kamen und mit 3D liebäugelten. Von ihnen kam der Wunsch, das neue Animationspaket mit einer offenen Schnittstelle auszustatten, um es individuell konfigurieren zu können. Diese Offenheit trug wesentlich zum Erfolg von Maya bei.
1998 brachte Alias|Wavefront Maya auf den Markt.

## Funktionsumfang

Eine der Funktionalitäten der Maya-Software ist neben der hohen visuellen Qualität der mit Maya generierten Bilder und dem umfassenden Editor zum Erstellen neuer Szenen oder Objekten die Offenheit des Grundmoduls zu Erweiterungen von Drittanbietern. Dies gestattet es, die Software selbst an sehr individuelle Anforderungen einer bestimmten Zielgruppe anzupassen.

### MEL

Neben dieser Möglichkeit zur Einbindung von Plug-ins existiert auch eine Maya-interne Steuerungssprache, MEL (Maya Embedded Language). MEL orientiert sich dabei konzeptionell an Skriptsprachen wie PHP und erinnert in Aufbau und Syntax an C. Diese Skriptsprache bietet umfangreiche Möglichkeiten bestimmte Aufgaben zu automatisieren, den Editor anzupassen und vieles mehr. Wichtig ist auch zu erwähnen, dass in Maya die Steuerung der gesamten GUI über MEL erfolgt (Das Erstellen/Verändern/Abfragen von GUI Elementen rein über die C++ basierte API ist nicht möglich). An diesem und vielen weiteren Beispielen lässt sich sehen, dass MEL und die C++-API nicht Alternativen darstellen, sondern sich gegenseitig ergänzen, da ihr Funktionsumfang sich nur teilweise überschneidet.

### Python

Seit Maya 8.5 steht neben der Skriptsprache MEL auch Python zur Verfügung. Dadurch wird die Erweiterbarkeit und Flexibilität von Maya enorm ausgeweitet. Maya bringt seinen eigenen Python-Interpreter sowie die nötigen Bibliotheken mit. Das Schreiben von Plugins und Skripten ist vor allem für Programmierneulinge attraktiv, da die Python-Syntax sehr verständlich ist. Man kann mit Python auf sämtliche MEL-Befehle zugreifen, umgekehrt funktioniert dies ebenfalls. Zusätzlich kann der Funktionsumfang durch frei verfügbare Python-Bibliotheken problemlos erweitert werden. Die Interoperabilität durch Python zwischen Maya und dem Betriebssystem sowie anderen Programmen mit Python-Unterstützung verspricht einen enormen Vorteil zur MEL-Skriptsprache.

### Module/Plug-ins

Maya ist modular aufgebaut, je nach Version lassen sich unterschiedliche Teile des Programmpaketes aus- oder einschalten. So gibt es unter anderem Maya Live, ein Modul, mit dem es möglich ist die Kamerafahrten von Realaufnahmen zu rekonstruieren, um so später computergenerierte Objekte in den Film zu montieren. Mit Maya Fur lassen sich Fell, Haarflächen, Gras etc. simulieren. Mit Maya Fluids kann man Gas- und Flüssigkeitsimulationen erstellen. Diese ermöglichen die realistische Simulation von Flüssigkeiten und Gasen (bzw. Rauch). Der Unterschied zu herkömmlichen Partikelsystemen besteht dabei in der Art des Ansatzes: Während Partikelsysteme punktförmige Masseobjekte simulieren, die sich frei im Raum bewegen können, basiert Maya Fluids auf Voxeln. Zwar ist Wassersimulation leider nicht möglich (es kann nur ein Medium simuliert werden), allerdings lassen sich gerade Wolken oder Feuer gut, wenn auch vergleichsweise langsam, simulieren. Maya Cloth erlaubt es Kleidungsstücke und Stoffstücke zu simulieren. Neu hinzugekommen ist Maya Hair, eine auf Paint Effects basierende Haarsimulation, mit der unterschiedlichste Arten von Haar- oder Pfadsimulationen erstellt werden können.
nCloth, nHair, Toon und Paint Effects wurden von Duncan Brinsmead entwickelt und patentiert. Er ist einer der Chefentwickler im Kernteam für Maya in Toronto. Sein Kollege, der Holländer Jos Stem steckt hinter Maya Fluids. Beide erhielten zusammen mit zwei anderen Kollegen 2008 den technischen Oscar für das Fluid Effects-System in Maya.

### Rendering

Um die erstellten Objekte und Animationen zu rendern bietet Maya verschiedene Möglichkeiten an:
* Maya Software ist der native Renderer von Maya, mit ihm werden alle Objekte berechnet. Er ist ein qualitativ hochwertiger Renderer, allerdings nicht ganz so schnell und nicht immer physikalisch korrekt.
* Maya Hardware ist eine Einbindung der 3D-Grafikkarte in den Renderingprozess. Hierbei wird das Bild nicht vom Prozessor berechnet, sondern großteils über die Grafikkarte. Dies bringt große Geschwindigkeitsvorteile, aber auch die für Hardwarerendering typischen Limitationen mit sich. So ist die Texturgröße begrenzt, es wird nur Gouraud geshaded und viele andere Rendereffekte werden erst gar nicht berücksichtigt. Da Maya allerdings gewisse Partikeltypen nur im Hardwarerenderer darstellen kann, ist er nach wie vor von großer Bedeutung, vor allem im Bereich der Previsualisierung komplexer Szenen.
* Mental Ray ist eigentlich ein eigenständiger Renderer der deutschen mental images GmbH aus Berlin. Mit mental ray ist es möglich annähernd physikalisch korrekte, globale Beleuchtung, Kaustiken, Raytracing, Bewegungsunschärfe, Tiefenunschärfe, Final Gather Bilder zu berechnen.
* Vektor Rendering wird von Maya ebenfalls unterstützt, auch hier handelt es sich eigentlich um einen separaten Renderer, der wie mental ray in Maya eingebettet ist. Mit ihm lassen sich comicartige flächige Bilder erstellen, meist wird er für die Erstellung von Webanimationen mit Flash genutzt.
* Seit Version 2017 ist der Renderer Arnold in Maya integriert und wird standardmäßig mitgeliefert. Dieser ist ein fortgeschrittener Monte-Carlo-Raytracer der Firma Solid Angle und unterstützt unter anderem Fur-Rendering, Bewegungsunschärfe, Subsurface Scattering, und Volumen-Rendering.
Alle anderen wichtigen Renderengines, wie Pixar RenderMan und Maxwell Render, unterstützen Maya.

## Prominente Ergebnisse mit Maya

Animationsfilme wie Findet Nemo, ein Film aus den Pixar Studios, Shrek und vor allem Final Fantasy: Die Mächte in dir, der erste rein computeranimierte Realfilm, sind mit Hilfe von Maya erstellt worden. Bemerkenswert ist die Tatsache, dass auch die spektakulären, weil sehr aufwändig in Szene gesetzten Schlachten in Peter Jacksons Herr-der-Ringe-Trilogie mit Hilfe von Maya unter der Verwendung von Massive entstanden, wie auch das lebensecht wirkende Geschöpf Gollum. Weiterhin entstanden der erste komplett in Deutschland produzierte Animationsfilm Back to Gaya mit Maya. Die Serie South Park wird komplett mit Maya erstellt. Der Film Ice Age 2 von 20th Century Fox wurde ebenfalls mit Maya erstellt, wobei hier aus Modelliermasse erstellte Modelle der Figuren eingescannt und dann nachbearbeitet und mit Fell versehen wurden. Auch Industrial Light & Magic nutzt Maya für ihre Produktionen. So wurde zum Beispiel Maya in Star Wars Episode III, mit ihren 2151 CG Shots, als Haupt-Animationssoftware eingesetzt.
Die australische Firma Animal Logic setzte Maya für den Film Happy Feet ein, um große Teile des oscarprämierten Films zu vervollständigen. Maya wurde hier für alle Rendering- und Lichteffekte eingesetzt. Der amerikanische Medienkonzern CBS setzt Maya ein, um die visuellen Effekte der ersten Star-Trek-Serie zu restaurieren. Die Außenaufnahmen des Raumschiffs USS Enterprise NCC-1701 werden dabei vollständig in Maya gerendert und neu eingespielt. Maya soll auch eingesetzt werden, um visuelle Effekte in Szenen mit Schauspielern – z. B. bei Kämpfen mit der Phaserwaffe – zu restaurieren.
Allgemein gilt jedoch, dass bei großen Produktionen nicht nur eine Software, sondern viele Softwarepakete verwendet werden, um jeweils von den spezifischen Vorteilen zu profitieren. Oft kommt es zu eigenen Entwicklungen von Plug-Ins oder größerer Software und Techniken. Das Berechnen der Bilder geschieht auf Render-Farmen mit PhotoRealistic RenderMan, einer Renderingsoftware von Pixar, oder Mental Ray. Maya wird in Projekten dieser Größenordnung meist wegen seiner guten Erweiterbarkeit anderen Produkten vorgezogen.
Beispielsweise verwendet Pixar für die Animation der Figuren die hauseigene Software Marionette.
Auch in der Computerspieleindustrie wird Maya verwendet, um z. B. komplexe Physiksimulationen zu rendern, beispielsweise bei Insomniac Games (Resistance 2), Valve (seit L4D2 oder Portal 2).

## Versionen

Bis zum Dezember 2008 gab es noch die kostenfreie „Maya Personal Learning Edition“ (PLE) für den nicht-kommerziellen Gebrauch, in der allerdings jedes gerenderte Bild bzw. „Frame“ mit einem Wasserzeichen versehen wurde. Sie gab einen guten Überblick über die Funktionsweise von Maya. Mittlerweile steht zu Testzwecken nur noch eine 30-Tage-Trial zur Verfügung. Vergünstigungen gibt es in Form von Lernlizenzen (kostenlose Educational Lizenz für 3 Jahre) und Studentenlizenzen (kostenpflichtige, zeitlich unbegrenzte Version). Mit diesen darf das Programm nicht kommerziell genutzt werden.
Bis Maya 2009 wurde zwischen zwei kommerziellen Varianten unterschieden: Maya Complete und Maya Unlimited. Letztere entsprach einem Maya Complete mit zusätzlichen Features. Die wichtigsten Unterschiede zur Complete Variante lagen in der Verfügbarkeit des Hair, des Cloth und des Fluids Moduls.
Mit Maya 2010 hatte Autodesk die Complete Version abgeschafft. Es hatte den Funktionsumfang von Maya 2009 Unlimited und lag preislich zwischen 2009 Complete und 2009 Unlimited. Zudem wurde ird mit Maya 2010 nun das Compositing Tool Autodesk Toxik (seit Maya 2012 umbenannt in „Maya Composite“) und das 2D/3D Kameratracking-Tool Autodesk MatchMover vertrieben.
Im April 2010 erschien die Version Maya 2011, im April 2011 erschienen die Version 2012. In der Version 2012 wurde vor allem der Viewport 2.0 verbessert und Nvidia PhysX Unterstützung für Partikelsimulationen hielt Einzug.

### Unterstützte Betriebssysteme

Die Version 2018 unterstützte die folgenden 64-Bit-Betriebssysteme: Windows (Windows 7 SP1 und Windows 10 Professional), macOS (OS X 10.11.x und macOS 10.12.x) sowie die Linux-Betriebssysteme Red Hat Enterprise Linux (6.5 und 7.2 WS) und CentOS (6.5 und 7.2).
Die letzte Version von Maya, die zusätzlich zu 64-Bit-Betriebssystemen auch noch für 32-Bit-Betriebssysteme zur Verfügung stand, war die Version 2013.
Die Mac-OS-X-Version existiert seit 8.5 auch als Universal Binary.
Ab Version 8.0 unterstützt Maya auch nativ den 64-Bit-Modus der AMD64- und EM64T-Prozessoren unter Windows (XP x64-Edition), Linux und seit Maya 2011 unter Mac OS X. Seit dem 14. März 2006 wird Maya nicht mehr auf dem Betriebssystem IRIX angeboten und unterstützt.

### Frühere Versionen

| Version | Veröffentlichung | Anmerkungen und wichtigste Änderungen |
| Ältere Version; nicht mehr unterstützt: 1.0 | Februar 1998 | erste IRIX Version |
| Ältere Version; nicht mehr unterstützt: 1.0 | Juni 1998 | erste Windows-Version |
| Ältere Version; nicht mehr unterstützt: 1.0.1 | Juni 1998 | IRIX Version |
| Ältere Version; nicht mehr unterstützt: 1.0.1 | Oktober 1998 | Windows-Version |
| Ältere Version; nicht mehr unterstützt: 1.5 | Oktober 1998 | nur IRIX |
| Ältere Version; nicht mehr unterstützt: 2.0 | Juni 1999 | |
| Ältere Version; nicht mehr unterstützt: 2.5 | November 1999 | |
| Ältere Version; nicht mehr unterstützt: 2.5.2 | März 2000 | |
| Ältere Version; nicht mehr unterstützt: 3.0 | Februar 2000 | Erste Linux Version |
| Ältere Version; nicht mehr unterstützt: 3.5 | Oktober 2001 | Nur erste Mac OS X Version als Maya Complete |
| Ältere Version; nicht mehr unterstützt: 3.5.1 | September 2002 | nur Mac OS X |
| Ältere Version; nicht mehr unterstützt: 4.0 | Juni 2001 | ohne Mac OS X Version |
| Ältere Version; nicht mehr unterstützt: 5.0 | Mai 2003 | |
| Ältere Version; nicht mehr unterstützt: 6.0 | Mai 2004 | |
| Ältere Version; nicht mehr unterstützt: 6.0.1 | August 2004 | Mac OS X Version nun auch als Maya Unlimited |
| Ältere Version; nicht mehr unterstützt: 6.5 | Januar 2005 | letzte IRIX Version |
| Ältere Version; nicht mehr unterstützt: 6.5.1 | Dezember 2005 | |
| Ältere Version; nicht mehr unterstützt: 7.0 | August 2005 | |
| Ältere Version; nicht mehr unterstützt: 7.0.1 | Dezember 2005 | |
| Ältere Version; nicht mehr unterstützt: 8.0 | August 2006 | Erste AMD64/EM64T Version und neues Logo |
| Ältere Version; nicht mehr unterstützt: 8.5 | Januar 2007 | u. a. Integration der Python-Skriptsprache, neues Simulations-Framework „Maya Nucleus Unified Simulation Framework“, nCloth |
| Ältere Version; nicht mehr unterstützt: 2008 (9.0) | September 2007 | Verbesserte Unterstützung der Erstellung von Inhalten für Spielekonsolen, direkte Unterstützung für DirectX HLSL Shader im Viewport, neue Skinning-Werkzeuge |
| Ältere Version; nicht mehr unterstützt: 2009 (10.0) | August 2008 | nParticles, Maya Muscles, Animation Layers |
| Ältere Version; nicht mehr unterstützt: 2010 (11.0) | August 2009 | Matchmover 2010 und Maya Composite als Teil von Maya, integrierter stereoskopischer Workflow |
| Ältere Version; nicht mehr unterstützt: 2011 | April 2010 | Neue Oberfläche basierend auf Qt, neue Grafikpipeline, 64bit Version für Mac OS X, Camera Sequencer, verbesserte Skinning Werkzeuge (u. a. Deformer-Mirror-Weights-Funktion und Dual-Quaternion-Option für Smooth Skinning) |
| Ältere Version; nicht mehr unterstützt: 2012 | April 2011 | Viewport 2.0, Composite Vorschau in der RenderView, Vector Displacement Maps, editierbare Motion Trails, Unterstützung für Ptex Texturen, Verbesserte Kompatibilität mit Autodesk Mudbox, Softimage und Motion Builder, Ubercam (eine Kamera, die alle Einstellungen im Camera Sequenzer in einer Kamera abspielt), Plugin für NVIDIA PhysX; Quelle: |
| Ältere Version; nicht mehr unterstützt: 2013 | April 2012 | |
| Ältere Version; nicht mehr unterstützt: 2014 | April 2013 | |
| Ältere Version; nicht mehr unterstützt: 2015 | April 2014 | Bifrost Procedural Effects Platform, XGen Arbitrary Primitive Generator, Bullet Physics, Geodesic Voxel Binding, Streamlined retopology toolset, Polygon modeling, OpenSubdiv support, UV toolset, ShaderFX, Ptex support in mental ray |
| Ältere Version; nicht mehr unterstützt: 2016 | April 2015 | |
| Ältere Version; nicht mehr unterstützt: 2017 | Juli 2016 | Motion Graphics toolset, 3D Type, Improved vector graphics workflow, Interactive hair grooming (XGen), Bifrost Ocean Simulation System (BOSS), Deep adaptive fluid simulation, Time Editor, Animation performance (enhanced), Shape Authoring workflow (enhanced), Symmetry modeling (enhanced), Arnold in Maya, Render Setup, Additional look development shading nodes, Enhanced game engine workflows |
| Ältere Version; nicht mehr unterstützt: 2018 | November 2017 | |
| Ältere Version; nicht mehr unterstützt: 2019 | | |
| Ältere Version; nicht mehr unterstützt: 2020 | | Cached Playback updates, Cached Playback Dynamics support, Auto snap keys to whole frame, Ghosting Improvements, Bifrost Extension for Maya plug-in, Time Slider Bookmarks, Arnold GPU included in Maya 2020, Polygon Remesh and Retopologize, Rigging Improvements, Proximity Wrap Deformer, Better audio management, Graph Editor improvements, New Standard Surface shader available, New area lights Normalize option, Light Editor improvements, Render Setup improvements, Resizeable Time Slider, Animation Hotkeys |
| Ältere Version; nicht mehr unterstützt: 2020.1 | | |
| Ältere Version; nicht mehr unterstützt: 2020.2 | | Target Weld Tool: Preserve UVs option, Vertical splitter bar for Outliner, Reserve namespaces for unloaded references, Create sets easily with the new Outliner Sets contextual menu, Run Viewport 2.0 in OpenGL mode on a remote desktop, Maya Quick Start tutorial, Substance 2.1.2 plug-in, Bifrost Extension for Maya 2.0.5.1, Arnold for Maya 4.0.3 plug-in |
| Ältere Version; nicht mehr unterstützt: 2020.3 | 7. Oktober 2020 | Merge BaseAnimation layer on import, Paint Skin Weights Tool improvements, HumanIK: Neck Motion Reduction setting, Export support for .hikc v1, New Graph Editor display option, Improvements to the Script Editor, Bifrost Extension for Maya 2.1.0.0, Arnold for Maya 4.0.4 plug-in, Updated Rokoko plug-in, Updated ATF plug-in, Import Standard Surface with FBX, Obtain your own crash error reports |
| Ältere Version; nicht mehr unterstützt: 2021 | | |
| Ältere Version; nicht mehr unterstützt: 2022 | | |
| Aktuelle Version: 2023 | | |
| Legende:Alte VersionÄltere Version; noch unterstütztAktuelle VersionAktuelle VorabversionZukünftige Version |||