スキンの操作に使用する。
xshade |
↑ |
shape |
↑ |
skin |
append_bind | バインドを追加する |
get_bind | 指定されたバインドを返す |
remove_bind | 指定されたバインドを削除する |
sequence_skin_world_matrix | 指定シーケンスのスキン座標系からワールド座標系に変換するマトリクスを返す |
number_of_binds | バインドの数 |
skin_type | スキンのタイプ |
skin_world_matrix | スキン座標系からワールド座標系に変換するマトリクス |
xshade.scene().active_shape().vertex(0)(選択形状の取得)のように頂点を取得して使用する。
append_bind
バインドを追加する。
バインドのリストの最後に追加される。
追加されたバインドは空なのでget_bind()でskin_bindクラスを取得して設定する。
スキンウインドウはskin_view().update()で更新しないと変更が反映されない。
スキンの設定はshape().update_skin_bindings()で更新しないと変更が反映されない。
#ブラウザの構成 #ポリゴンメッシュ(対象形状) #▼回転 # ▼回転 xshade.scene().active_shape().skin_type = 1 #スキンのタイプを設定 0:クラシック、1:頂点ブレンド xshade.scene().active_shape().vertex(0).skin.append_bind() #バインドを追加 bind_num = xshade.scene().active_shape().vertex(0).skin.number_of_binds - 1 #追加したバインドの番号を得る xshade.scene().active_shape().vertex(0).skin.get_bind(bind_num).shape = xshade.scene().active_shape().bro xshade.skin_view().update() #スキンウインドウを更新して変更を反映する xshade.scene().active_shape().update_skin_bindings() #スキンの設定を更新して変更を反映する
get_bind
指定されたバインドを返す。
戻り値 :
skin_bindオブジェクト
引数 :
int : バインドのインデックス番号
参照 :
skin_bind
#ポリゴンメッシュ頂点0番のバインドの荷重を出力する
print xshade.scene().active_shape().vertex(0).skin.get_bind(0).weight
remove_bind
指定されたバインドを削除する。
引数 :
int : バインドのインデックス
スキンウインドウを更新しないと変更が反映されない。
バインドの無い形状に実行すると Shade 3D が落ちる。
#ポリゴンメッシュ頂点0番のバインドを削除する
xshade.scene().active_shape().vertex(0).skin.remove_bind(0)
xshade.skin_view().update()
sequence_skin_world_matrix
指定シーケンスのスキン座標系からワールド座標系に変換するマトリクスを返す。
引数 :
int
戻り値 :
mat4
#シーケンス10のポリゴンメッシュの頂点0番のスキン座標系からワールド座標系に変換するマトリクスを出力する
print xshade.scene().active_shape().vertex(0).skin.sequence_skin_world_matrix(10)
number_of_binds
バインドの数。
型 :
int
#ポリゴンメッシュ頂点0番のバインド数を出力する
print xshade.scene().active_shape().vertex(0).skin.number_of_binds
skin_type
スキンのタイプ。
型 :
int : 0 : クラシック、1 : 頂点ブレンド
#スキンのタイプを出力する
print xshade.scene().active_shape().skin_type
skin_world_matrix
スキン座標系からワールド座標系に変換するマトリクス。
型 :
mat4
頂点にバインドされたスキンと、形状のローカル座標を考慮してワールド座標系に変換するマトリクス。
#ポリゴンメッシュ頂点0番のマトリクスを出力する
print xshade.scene().active_shape().vertex(0).skin.skin_world_matrix