Ab Substance Painter 2020.1 (6.1.0) wurde zusätzlich zur traditionellen JavaScript-API die Python-API hinzugefügt.
[Substance Painter Version 2020 \ .1 \ (6 \ .1 \ .0 ) Versionshinweis - Born Digital Support](https://support.borndigital.co.jp/hc/ja/articles/900000700626-Substance-Painter -Version-2020-1-6-1-0-% E3% 83% AA% E3% 83% AA% E3% 83% BC% E3% 82% B9% E3% 83% 8E% E3% 83% BC% E3% 83% 88)
In der offiziellen Dokumentation wurde die Existenz der Python-API jedoch noch nicht erwähnt. Es war schwierig zu wissen, wo ich anfangen sollte, notieren Sie sich also nur den Eingang.
Ab SP 2020.2 ist die Python-API-Version 0.0.2. Bitte beachten Sie, dass der Inhalt dieses Artikels wahrscheinlich bald veraltet sein wird.
#Modul laden
import substance_painter
#Modulbeschreibung anzeigen
help(substance_painter)
#Beschreibung des Projektmoduls anzeigen
help(substance_painter.project)
Erstellen Sie plugins / hello_plugin.py
mit den folgenden Inhalten.
"""The hello world of python scripting in Substance Painter
"""
from PySide2 import QtWidgets
import substance_painter.ui
plugin_widgets = []
"""Keep track of added ui elements for cleanup"""
def start_plugin():
"""This method is called when the plugin is started."""
# Create a simple text widget
hello_widget = QtWidgets.QTextEdit()
hello_widget.setText("Hello from python scripting!")
hello_widget.setReadOnly(True)
hello_widget.setWindowTitle("Hello Plugin")
# Add this widget as a dock to the interface
substance_painter.ui.add_dock_widget(hello_widget)
# Store added widget for proper cleanup when stopping the plugin
plugin_widgets.append(hello_widget)
def close_plugin():
"""This method is called when the plugin is stopped."""
# We need to remove all added widgets from the UI.
for widget in plugin_widgets:
substance_painter.ui.delete_ui_element(widget)
plugin_widgets.clear()
if __name__ == "__main__":
start_plugin()
Scannen Sie die Ordner erneut mit _ "Python> Plugin-Ordner neu laden" _.
Es gibt ein Element namens _ "Python> Hallo \ _plugin" _, also klicken Sie darauf.
Wenn ein Widget (Bereich) mit dem Namen "HALLO PLUGIN" auf dem Bildschirm erstellt wird, ist dies erfolgreich.
Recommended Posts