■オブジェクトを選択(複数化)
■実行
CEに渡すときはオブジェクトをポリゴンごとに分割する必要がある。
その補助を行うスクリプト。
オブジェクトごとに名前を持たせ、
CE側でオブジェクトごとに異なるルールを適用できる。
#Python
#ObjectBrake v0.1
#Create By Tera 2011 07 24
app = Application; log = app.Logmessage
oSels = app.Selection
oNames = []
oCounts = []
oColl = XSIFactory.CreateObject("XSI.Collection")
for oObj in oSels:
oNames.append(oObj.Name)
oGeo = oObj.ActivePrimitive.Geometry
oPolys = oGeo.Polygons
oCounts .append(oPolys.Count)
for i in range(oSels.Count):
for j in range(oCounts[i]):
temp = oNames[i] + '.poly[' + str(j) + "]"
op = Application.ExtractFromComponents("ExtractPolygonsOp", temp, "polymsh_extracted", "", "siImmediateperation", "siKeepGenOpInputs", "")
newObj = op(0)(0)
newObj.Name = oNames[i] + "_"
oColl.Add(newObj)
oNull = app.ActiveSceneRoot.AddNull("CE_Export")
app.ParentObj( oNull, oColl )
■今後の展開
マテリアルごとに名前を変えたほうが好いかもしれない



0 件のコメント:
コメントを投稿