Python-Dolmetscher in Maya, Houdini, Mixer, Nuke

Was ist das?

In vielen Fällen verwenden DCC-Tools und ihre Umgebung Python als Erweiterungssprache. (Außer den im Titel aufgeführten Softimage, 3dsMax, Cinema4D, LightWave, Modo, 3D-Coat, Motionbuilder, Metasequoia, Vue usw. Adobe ist hartnäckig jsx)

In diesen Python-Umgebungen muss die Anwendung selbst nicht gestartet werden (GUI). Es kann im interaktiven Modus verwendet werden. Ich habe mit den vier im Titel aufgeführten überprüft.

Umgebung

Maya Verwenden Sie ** mayapy.exe ** im Bin Ihres Maya-Installationsordners.

Beispiel: C:\Program Files\Autodesk\Maya2016\bin\mayapy.exe

Offizielles Dokument: http://help.autodesk.com/view/MAYAUL/2016/JPN/?guid=GUID-83799297-C629-48A8-BCE4-061D3F275215

Modul

Derzeit gibt es zwei Arten von Modulen für die Verwendung von Maya-Funktionen.

--Maya Python (oder nur cmds)

In vielen Fällen ist Ersteres "import maya.cmds as cmds" (oder "~~ as mc"). Letzteres wird als "import pymel.core as pm" (oder "pm as pmc") verwendet. Letzteres ist eine objektive Umhüllung des ersteren (grob) Ursprünglich extern entwickelt, wird es seit Maya 2011 als Standardausrüstung installiert. Es wird auf Github veröffentlicht. https://github.com/LumaPictures/pymel

Maya Python maya.cmds kann gelesen werden, aber

import maya.cmds as mc

Selbst wenn Sie nach innen schauen, fühlt es sich nicht so an, als könnte es verwendet werden

>>> dir(mc)
['__builtins__', '__doc__', '__file__', '__name__', '__package__', '__path__']

Sie können es verwenden, indem Sie ** initialisieren **. Das Folgende ist ein Beispielsatz (▼), der im Dokument enthalten war

initialize


try: 			
    import maya.standalone 			
    maya.standalone.initialize() 		
except: 			
    pass

mayapy.png Mögen.

PyMEL PyMEL kann auch gelesen werden. Sobald Sie es gelesen haben, wird ein Protokoll gedruckt, das dem Protokoll ähnelt, das beim Start von Maya im Skripteditor angezeigt wird.

import pymel.core as pm

Als ich cmds initialisierte, war der Speicher ungefähr 109 MB groß, aber mit PyMEL waren es ungefähr 475 MB. Es sind ungefähr 677 MB für einen normalen Maya-Start einschließlich GUI. mayapy_memory.png

Die Initialisierung ist übrigens auch beim Lesen von PyMEL enthalten. Es ist auch im Kojiki geschrieben. https://github.com/LumaPictures/pymel/blob/master/pymel/internal/startup.py

Houdini Verwenden Sie ** hython.exe ** im Houdini-Installationsordner.

Beispiel: C:\Program Files\Side Effects Software\Houdini 15.0.244.16\bin\hython.exe

Irgendwie sys.argv

>>> sys.argv
['C:\\PROGRA~1\\SIDEEF~1\\HOUDIN~1.16\\houdini\\python2.7libs\\houdiniInterpreter.py']

Aha.

Modul

Das Modul zur Verwendung der Funktionen von Houdini ist das Modul "** hou **". Es wird geladen, wenn hython.exe gestartet wird.

>>> dir()
['__builtins__', '__doc__', '__name__', 'hou']

Es gibt verschiedene Dinge im Inneren. dir_hou.png

Offizielles Dokument: http://www.sidefx.com/docs/houdini15.0/hom/commandline

Wenn Sie einfach nach "hython" suchen, finden Sie auch Haskell-implementiertes Python. Seien Sie also vorsichtig.

numpy In der Hython-Umgebung kann numpy standardmäßig geladen werden. Danke Danke (

blender Starten Sie den Mixer mit der Option "** - Python-Konsole **".

Beispiel: "C:\Program Files\Blender Foundation\Blender\blender.exe" --python-console blender_console.png Vor allem ist es beeindruckend, dass das stille Mixer-Fenster auftaucht (es erscheint, aber es ist ein Fenster, das ich nicht besonders benutze).

Irgendwie sys.argv

>>> sys.argv
['blender-app.exe', '--python-console']

Aha.

Modul

Das Modul zur Verwendung der Blender-Funktion ist das Modul "** bpy **". Lesen.

import bpy

Inhalt. Es ist bis zu einem gewissen Grad zusammengefasst.

>>> dir(bpy)
['__all__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__path__', '__spec__', 'app', 'context', 'data', 'ops', 'path', 'props', 'types', 'utils']

... Ich habe es nicht sorgfältig verwendet, daher bin ich mir nicht sicher, ob es einsatzbereit ist (lacht) (Es scheint, dass sich die gelesene Klasse von der Python Console on Blender (GUI) unterscheidet.)

Offizielles Dokument: http://wiki.blender.org/index.php/Doc:JA/2.6/Manual/Render/Command_Line

Python Console : http://www.blender.org/manual/editors/python_console.html Blender Python API : http://www.blender.org/api/blender_python_api_2_76_2/ Scripting & Extending Blender » Introduction : http://www.blender.org/manual/advanced/scripting/introduction.html

numpy Wie Houdini kann Blender Numpy lesen, ohne etwas zu tun.

Ende

Sie werden gewarnt, wenn Sie ein Mixer-Fenster haben, das nicht hinter Ihnen reagiert, oder wenn Sie versuchen, das Fenster lose zu schließen. Beenden wir es richtig mit "quit ()" oder "exit ()". (... Ich habe am Ende für einen Moment einen Fehler bekommen, es scheint nicht gefunden zu sein, aber gut ...)

Nuke Starten Sie Nuke mit der Option "** - t **". t des Terminals.

Beispiel: "C:\Program Files\Nuke9.0v8\Nuke9.0.exe" -t

… Dann scheint es als Python-Interpreter zu beginnen, Die kostenlose Testversion schien nicht lizenziert zu sein und ich konnte sie nicht ausprobieren. nuke_licError.png …。 Das Rendern über die Befehlszeile ist ebenfalls eingeschränkt, das ist also richtig. ist. Also habe ich versucht, es wie gewohnt auf Nuke zu sagen.

※ Wenn Sie nach -t eine Python-Skriptdatei angeben, scheint diese ausgeführt zu werden. "C:\Program Files\Nuke9.0v8\Nuke9.0.exe" -t path\to\your\script.py

Modul

Das Modul zur Verwendung der Nuke-Funktionen ist das Modul "** nuke **". nuke_script.png Trotzdem haben Sie, wenn Sie nur "dir ()" verwenden, bereits viele Dinge weltweit. .. ..

Offizielles Dokument: https://www.thefoundry.co.uk/products/nuke/developers/90/pythondevguide/command_line.html

NUKE Python Developer's Guide v9.0v8 documentation : http://docs.thefoundry.co.uk/nuke/90/pythondevguide/index.html

Zusammenfassung

Houdini, Nuke, die Kraft, mit der das Modul von Anfang an geladen wird, Maya, Mixer kann beliebig gelesen werden, war.

Ebenfalls, Maya und Houdini haben eine Exe, die den Python-Interpreter so startet, wie er ist. Blender und Nuke sind Muster, die durch Hinzufügen von Optionen als Interpreter verwendet werden können.

sys.argv war in Houdini und Mixer, aber Maya und Nuke, die nicht erwähnt wurden, waren "".

Maya ist begeistert davon, Dokumente rund um die Entwicklung ins Japanische zu übersetzen. Es ist ein anderer Rahmen als ob es als Dokument ausgezeichnet ist und ob es eine falsche Übersetzung gibt, aber ich bin dankbar.

Ich würde gerne sehen, ob andere Python-Arbeitstools auch einen interaktiven Modus haben.

Bonus

3dsMax Die Python-API ist jetzt standardmäßig in Max enthalten, kann jedoch für Max verwendet werden, das anstelle des oben beschriebenen interaktiven Modus gestartet wird. Der Rest ist ** 3dsmaxcmd.exe **. Aber gibt es keinen interaktiven Modus? Gibt es? Es ist im Grunde eine Person für das Batch-Rendering. Es tut mir leid, dass ich nicht verstehe (lacht)

Executing Python scripts from the command line: http://docs.autodesk.com/3DSMAX/16/ENU/3ds-Max-Python-API-Documentation/files/GUID-379E0B39-7F56-4764-88B6-B26090948800.htm

ConEmu Es ist bequem, sich zu registrieren conemu.png

ConEmu Project Japanische Top-Seite --ASCII: https://osdn.jp/projects/conemu/

Recommended Posts

Python-Dolmetscher in Maya, Houdini, Mixer, Nuke
Blender Python API in Houdini (Python 3)
Generieren Sie 8 * 8 (64) Cubes mit Blender Python
Zeichnen Sie Sinuswellen mit Blender Python
Beginnen Sie mit Python mit Blender
Verwenden Sie pathlib in Maya (Python2.7), um sich auf das kommende Python3.7 vorzubereiten
Quadtree in Python --2
CURL in Python
Metaprogrammierung mit Python
Python 3.3 mit Anaconda
Geokodierung in Python
SendKeys in Python
Metaanalyse in Python
Unittest in Python
Zwietracht in Python
Blender 2.9 Python Extrude extrudieren
DCI in Python
Quicksort in Python
nCr in Python
N-Gramm in Python
Programmieren mit Python
Plink in Python
Konstante in Python
SQLite in Python
Schritt AIC in Python
LINE-Bot [0] in Python
CSV in Python
Reverse Assembler mit Python
Reflexion in Python
Verwenden Sie Python im Docker-Container als Pycharm-Interpreter
Konstante in Python
nCr in Python.
Format in Python
Scons in Python 3
Puyopuyo in Python
Python in Virtualenv
PPAP in Python
Quad-Tree in Python
So nehmen Sie Python Interpreter-Änderungen in Pycharm vor
Reflexion in Python
Chemie mit Python
Hashbar in Python
DirectLiNGAM in Python
LiNGAM in Python
In Python reduzieren
In Python flach drücken
Beachten Sie, dass Sie Materialien in Maya Python Bildtexturen zuweisen
[Maya Python] Anzeige .ui erstellt von Qt Designer in Maya
Sortierte Liste in Python
Täglicher AtCoder # 36 mit Python
Clustertext in Python
AtCoder # 2 jeden Tag mit Python
Täglicher AtCoder # 32 in Python
Täglicher AtCoder # 6 in Python
Bearbeiten Sie Schriftarten in Python
Singleton-Muster in Python
Dateioperationen in Python
Lesen Sie DXF mit Python