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!") } } } } }
结果如下图所示: