これはなに?
windows10環境でレンダーエレメントを編集しようとしたら落ちるので、
スクリプト経由で設定を変更したい
前提
オートデスク製品の Windows 10 および .NET 4.6 のサポート(2015年11月17日)
https://knowledge.autodesk.com/ja/support/autocad/troubleshooting/caas/sfdcarticles/sfdcarticles/JPN/Windows-10-support-for-Autodesk-products.html
Windows 10 は、まだオートデスク製品ライン全体で正式にサポートされているオペレーティング システムではありません。
現象
Windows10で3dsMax 2015(17.0 SP3)のRender Elementsタブを開いて
レンダーエレメントを編集しようとすると激落ち君
(今思ったこと)
(2016だったら起きなかったりして。手元にないけど。)
書いてみた
やりたいこと
- レンダーエレメントの一括ON
- レンダーエレメント出力先パスの削除
lookdev済みのシーンを受け取って
アニメーションつけたあと、
レンダリング投げる時に使いたい。
スクリプト
import MaxPlus
msEval = MaxPlus.Core.EvalMAXScript
msString ='''
reMgr = maxOps.getCurRenderElementMgr()
reNum = reMgr.numRenderElements()
for i = 0 to (reNum-1) do(
local re = reMgr.getRenderElement i
ElementName = re.elementname
DirfileNameType = getFilenameType (reMgr.GetRenderElementFilename i)
reMgr.SetRenderElementFilename i ""
re.enabled = true
renderSceneDialog.update()
)
'''
msEval(msString)
やったこと
local re = reMgr.getRenderElement i
でレンダーエレメント取得
reMgr.SetRenderElementFilename i ""
で出力先パスを空に
re.enabled = true
でレンダーエレメントをON
まとめ
MaxPlusの練習もかねてるけど
ほとんどMAXScriptをevalしてるだけだから意味ないよ!
参考
Executing MAXScript code from Python
http://help.autodesk.com/view/3DSMAX/2015/ENU/?guid=__files_GUID_050A2EBF_A176_49B8_8ED4_14FC2301531B_htm
※2016でこのページを探そうとすると、強制的に日本語版に飛ばされる上に、日本語版ドキュメントは無いよみたいなことをしれっと言ってくるので困ります。
Interface: RenderElementMgr
http://help.autodesk.com/view/3DSMAX/2015/ENU/?guid=__files_GUID_E8F75D47_B998_4800_A3A5_610E22913CFC_htm