biped.getNode <biped | biped_ctrl> <name | index> [link:<int_link>]
指定されたリムノードを返します。2 番目の引数には名前付きリム(#larm、#rarm、#lfingers など)、または整数のインデックスを指定できます。リンク引数を指定しない場合は、トップ(最初の)ノードが返されます。指定されたノードが存在しない場合は、undefined 値が返されます。
例:
--you can get the left hand as follows: biped.getNode $ #lArm link:4
Biped のトップ レベルおよびそのリンク ノードは次のとおりです。
インデックス | リム名 | リンク ノード(リンク インデックス順) | |||
---|---|---|---|---|---|
1 | #larm | L Clavicle | L UpperArm | L Forearm | L Hand |
2 | #rarm | R Clavicle | R UpperArm | R Forearm | R Hand |
3 | #lfingers | L Finger0 | L Finger01 | L Finger02 | L Finger1 |
L Finger11 | L Finger12 | L Finger2 | L Finger21 | ||
L Finger22 | L Finger3 | L Finger31 | L Finger32 | ||
L Finger4 | L Finger41 | L Finger42 | |||
4 | #rfingers | R Finger0 | R Finger01 | R Finger02 | R Finger1 |
R Finger11 | R Finger12 | R Finger2 | R Finger21 | ||
R Finger22 | R Finger3 | R Finger31 | R Finger32 | ||
R Finger4 | R Finger41 | R Finger42 | |||
5 | #lleg | L Thigh | L Calf | L HorseLink | L Foot |
6 | #rleg | R Thigh | R Calf | R HorseLink | R Foot |
7 | #ltoes | L Toe0 | L Toe01 | L Toe02 | L Toe1 |
L Toe11 | L Toe12 | L Toe2 | L Toe21 | ||
L Toe22 | L Toe3 | L Toe31 | L Toe32 | ||
L Toe4 | L Toe41 | L Toe42 | |||
8 | #rtoes | R Toe0 | R Toe01 | R Toe02 | R Toe1 |
R Toe11 | R Toe12 | R Toe2 | R Toe21 | ||
R Toe22 | R Toe3 | R Toe31 | R Toe32 | ||
R Toe4 | R Toe41 | R Toe42 | |||
9 | #spine | Spine | Spine1 | Spine2 | Spine3 |
Spine4 | |||||
10 | #tail | Tail | Tail1 | Tail2 | Tail3 |
Tail4 | |||||
11 | #head | Head | |||
12 | #pelvis | Pelvis | |||
13 | #vertical | Biped COM | |||
14 | #horizontal | Biped COM | |||
15 | #turn | Biped COM | |||
16 | #footprints | Footsteps | |||
17 | #neck | Neck | Neck1 | Neck2 | Neck3 |
Neck4 | |||||
18 | #pony1 | Ponytail1 | Ponytail11 | Ponytail12 | Ponytail13 |
Ponytail14 | |||||
19 | #pony2 | Ponytail2 | Ponytail21 | Ponytail22 | Ponytail23 |
Ponytail24 | |||||
20 | #prop1 | Prop1 | |||
21 | #prop2 | Prop2 | |||
22 | #prop3 | Prop3 | |||
101 | #lfArmTwist | L ForeTwist | L ForeTwist1 | L ForeTwist2 | L ForeTwist3 |
L ForeTwist4 | L ForeTwist5 | L ForeTwist6 | L ForeTwist7 | ||
L ForeTwist8 | L ForeTwist9 | ||||
102 | #rfArmTwist | R ForeTwist | R ForeTwist1 | R ForeTwist2 | R ForeTwist3 |
R ForeTwist4 | R ForeTwist5 | R ForeTwist6 | R ForeTwist7 | ||
R ForeTwist8 | R ForeTwist9 | ||||
103 | #lUparmTwist | L UpTwist | L UpTwist1 | L UpTwist2 | L UpTwist3 |
L UpTwist4 | L UpTwist5 | L UpTwist6 | L UpTwist7 | ||
L UpTwist8 | L UpTwist9 | ||||
104 | #rUparmTwist | R UpTwist | R UpTwist1 | R UpTwist2 | R UpTwist3 |
R UpTwist4 | R UpTwist5 | R UpTwist6 | R UpTwist7 | ||
R UpTwist8 | R UpTwist9 | ||||
105 | #lThighTwist | L ThighTwist | L ThighTwist1 | L ThighTwist2 | L ThighTwist3 |
L ThighTwist4 | L ThighTwist5 | L ThighTwist6 | L ThighTwist7 | ||
L ThighTwist8 | L ThighTwist9 | ||||
106 | #rThighTwist | R ThighTwist | R ThighTwist1 | R ThighTwist2 | R ThighTwist3 |
R ThighTwist4 | R ThighTwist5 | R ThighTwist6 | R ThighTwist7 | ||
R ThighTwist8 | R ThighTwist9 | ||||
107 | #lCalfTwist | L CalfTwist | L CalfTwist1 | L CalfTwist2 | L CalfTwist3 |
L CalfTwist4 | L CalfTwist5 | L CalfTwist6 | L CalfTwist7 | ||
L CalfTwist8 | L CalfTwist9 | ||||
108 | #rCalfTwist | R CalfTwist | R CalfTwist1 | R CalfTwist2 | R CalfTwist3 |
R CalfTwist4 | R CalfTwist5 | R CalfTwist6 | R CalfTwist7 | ||
R CalfTwist8 | R CalfTwist9 | ||||
109 | #lHorseTwist | L HorseTwist | L HorseTwist1 | L HorseTwist2 | L HorseTwist3 |
L HorseTwist4 | L HorseTwist5 | L HorseTwist6 | L HorseTwist7 | ||
L HorseTwist8 | L HorseTwist9 | ||||
110 | #rHorseTwist | R HorseTwist | R HorseTwist1 | R HorseTwist2 | R HorseTwist3 |
R HorseTwist4 | R HorseTwist5 | R HorseTwist6 | R HorseTwist7 | ||
RHorseTwist8 | R HorseTwist9 |
biped.maxNumNodes <biped | biped_ctrl>
Biped がサポートする最大ノード。
トップ レベル ノードの一覧については、biped.getNode()
の説明を参照してください。
biped.maxNumLinks <biped | biped_ctrl>
Biped がサポートする最大リンク ノード。
リンク ノードの一覧については、biped.getNode()
の説明を参照してください。
例
bipObj = biped.createNew 100 0 [0,0,0] arms:true neckLinks:5\ spineLinks:5 legLinks:4 tailLinks:5 ponyTail1Links:5 \ ponyTail2Links:5 fingers:5 fingerLinks:3 toes:5\ toeLinks:3 ankleAttach:0.3 trianglePelvis:True \ prop1Exists:True prop2Exists:True prop3Exists:True \ forearmTwistLinks:4 nn = biped.maxNumNodes bipObj nl = biped.maxNumLinks bipObj for i = 1 to nn do ( anode = biped.getNode bipObj i if anode != undefined do ( format "% :\t%\n" i anode.name for j = 1 to nl do ( alink = biped.getNode bipObj i link:j if alink != undefined do format "% : % \t%\n" i j alink.name ) ) )
上記のサンプル コードでは、すべての Biped ノードが取得されますが、Biped のツイスト ノードは取得されません。
3ds Max 7 では、ID 24、25 で前腕(formarm)のツイスト ノードを取得していましたが、これが Biped にあるツイスト ノードのすべてでした。
3ds Max 8 では、上腕、ふくらはぎ、下肢、大腿にツイスト ノードが追加されています。
maxNumNodes は 24 ではなく 22 を返すように変更されました。この変更により、前腕のツイストにアクセスすることはできなくなりました。
前腕のツイストの ID が変更され、他のツイストすべてに新しい ID が追加されましたが、ユーザがツイストにアクセスするためのメソッドはありませんでした。
次のメソッドは、3ds Max 9 で追加され、Biped のツイスト ボーンへのアクセスを提供します。これらのメソッドは、唯一のパラメータとして Biped コントローラを取ります。
Biped.maxTwistNodes <biped | biped_ctrl>
Biped によってサポートされているツイスト ノード トラックの数。
トップ レベル ツイスト ノードの一覧については、biped.getNode()
biped.getNode() の説明を参照してください。
Biped.maxTwistLinks <biped | biped_ctrl>
Biped によってサポートされている、各ツイスト トラックあたりの最大リンク ノード数。
Biped の説明を参照してください。biped.getNode()
の説明を参照してください。
Biped.getTwistStartId <biped | biped_ctrl>
ツイスト ノートの開始 ID。
ツイスト ノードおよびその ID の一覧については、biped.getNode()
の説明を参照してください。
以下の例は、Biped のすべてのツイスト ノードを取得します。
例
nn = biped.maxTwistNodes bipObj format "num twist nodes: %\n" nn nl = biped.maxTwistLinks bipObj format "max twist links: %\n" nl ts = biped.getTwistStartId bipObj format "twist start id: %\n" ts for i = ts to ts+nn-1 do ( anode = biped.getNode bipObj i if anode != undefined do ( format "% :\t%\n" i anode.name for j = 1 to nl do ( alink = biped.getNode bipObj i link:j if alink != undefined do ( format "% : % \t%\n" i j alink.name ) ) ) )