Substance Painter (以下简称sp)被越来越多的影视和游戏公司使用,所以为了提高艺术家的工作效率就需要像其他DCC软件一样开发一些比较实用的工具但是Sp和PS一样使用JavaScript语言和qml的UI进行开发,这就需要开发人员掌握开发语言。下面简单介绍一下,开发步骤。
1.首先需要创建插件文件夹名称(例如 MCC-Tools)放在文档路径下(例如:C:\Users\mcc\Documents\Allegorithmic\Substance Painter\plugins)
2.需要创建qml文本文件(main.qml)内容如下:
import QtQuick 2.2
import Painter 1.0
PainterPlugin {
Component.onCompleted: {
// create toolbar buttons
var t = alg.ui.addToolBarWidget("dock.qml");
t.rectangle.color = "blue"
t = alg.ui.addToolBarWidget("dock.qml");
t.rectangle.color = "green"
t = alg.ui.addToolBarWidget("dock.qml");
t.rectangle.color = "yellow"
t = alg.ui.addToolBarWidget("dock.qml");
t.rectangle.color = "purple"
// create a dock widget
alg.ui.addDockWidget("dock.qml");
}
}
3.创建dock.qml文件(名称可以任意)
import QtQuick 2.3
import QtQuick.Window 2.2
import QtQuick.Layouts 1.2
Item {
width: 24
height: 24
objectName: "My plugin UI"
property alias rectangle: rect
Rectangle {
id: rect
anchors.fill: parent
color: "red"
MouseArea {
id: mouseArea
anchors.fill: parent
onClicked: {
var ok = alg.mapexport.showExportDialog();
if (ok) {
alg.log.info("Export successful!")
} else {
alg.log.warn("Export cancelled!")
}
}
}
}
}
结果如下图所示: