« 2010年11月 | メイン | 2011年1月 »
●Shade書捨てスクリプト |
2010年12月 9日 |
Shade12が発売になりましたね 最初にバインド設定したものの上の階層の設定を足したい場合に使うスクリプト # coding: utf-8 #選択形状でループ for shape_ in xshade.scene().active_shapes: #コントロールポイントでループ for i in xrange(shape_.total_number_of_control_points): #ポリゴンメッシュのみを処理対象に if shape_.type != 7 :continue vind_list = [] #頂点のバインドの数を取得 target = shape_.vertex(i) bind_num = target.skin.number_of_binds for j in xrange(bind_num): bind = target.skin.get_bind(j) Shade12から追加されたプリミティブ形状を作成するスクリプト # coding: utf-8 #xshade.scene().create_primitive_capsule(None,「プリミティブ:0,自由曲面:1,ポリゴンメッシュ:3」,True,「U方向の分割数:16」,「V方向の分割数:16」,「開始位置の中心座標」,「直径」, 1, 「終了位置の相対座標」) scene_ = xshade.scene() shape_ = xshade.scene().active_shape() if shape_.type == 2 and shape_.part_type == 10: if shape_.parent.type == 2 and shape_.parent.part_type == 10: point1 = shape_.parent.ball_joint.position point2 = shape_.ball_joint.position pos_2 = map((lambda x,y:x-y),point2,point1) size1 = shape_.ball_joint.size scene_.create_primitive_capsule(None,3,True,20,16,point1,size1,1,pos_2) 座標変換とかには対応してないので ボールジョイントを回転等をさせると明後日の位置に作成されてしまいますがメモってとこで
|