主要是透過取得Biped的根骨架就能夠判別出有幾組biped骨架,而方法有好幾種...
- 利用RootNode這個Property
bipedNode.controller.rootNode
這個方式是從網上看到的(影片來源),透過能從所有biped骨頭中獲取的rootNode這個property,可取得biped根骨架 。另外也可使用rootName這個property直接獲取rootNode的name。// for o in geometry where classof o == Biped_Object and o.controller.rootNode == o do print o
- 透過Controller的類型
classof bipedNode.controller
利用判別controller的類型來尋找,root的controller類型為Vertical_Horizontal_Turn,root外的biped parts都會是BipSlave_Control,Footsteps即為Footsteps。// for o in geometry where classof o.controller == Vertical_Horizontal_Turn do print o
- 透過biped.getNode這個指令
biped.getNode [bipedNode | bipedCtrl] [limbName | index]
只要知道固定部位的limb name或者index即可用biped.getNode傳回該node,而根骨架的limb name是#vertical、#horizontal、#turn,index為13~15。詳見MAXScript Reference:Biped Node Hierarchy
沒有留言:
張貼留言