Open2

Substance 3D Designer で NodeOut を QImage にする

sho7nokasho7noka

IDはノード上のコンテキストメニューから取れます。

import sd, sd.api

# 基本準備
context = sd.getContext()
app = context.getSDApplication()
graph = app.getUIMgr().getCurrentGraph()

# SDNode > SDTexture
id = ""
node = graph.getNodeFromId(id)
out = node.getProperties(sd.api.sdproperty.SDPropertyCategory.Output)[0]
vtex = node.getPropertyValue(out)

# SDTexture > QImage
img = sd.api.qtforpythonuimgrwrapper.QtForPythonUIMgrWrapper(app.getUIMgr()).convertSDTextureToQImage(vtex.get())

# img.save("/")
sho7nokasho7noka

ctypes の影響か、パッケージ階層が深くて作るのが結構面倒です。