画像を保存する際に保存ダイアログボックスで「アルファチャンネル」の有無をスクリプトで操作したい。

Shade3Dでは、レンダリングした画像に対しスクリプトなどで編集/加工することができます。
しかし、保存の際に表示されるダイアログボックスの「アルファチャンネル」の有効/無効を制御するスクリプトは、
Shade3Dではご用意しておらず、引数を指定したsave関数ではアルファチャンネル有効の状態で保存されます。
そのため、Shade3Dでレンダリングした画像に対してアルファチャンネルを無効にする場合は、Python script側で以下のような記述を行う必要があります。


i = xshade.scene().rendering.image.duplicate()
for y in range(i.size[1]):
	for x in range(i.size[0]):
		c = i.get_pixel_rgba(x, y)
		i.set_pixel_rgba(x, y, (c[0], c[1], c[2], 1.0))
i.save(“d:\\test.png”)
 

また、画像を保存する際に保存ダイアログを表示して問題なければ、以下を指定して
「アルファチャンネル」の有無を保存ダイアログを選択する方法もございます。
(saveは引数なしだと画像の保存ダイアログが出る)


xshade.scene().rendering.image.save()
 
この記事のタイトルとURLをコピーする
Translate »