• How can you add fingerposing to custom models?
    16 replies, posted
So lately, I've been working on a model I've been working on and deciding to import it on Garry's mod, the model itself works just fine, but the problem I had with it is the fact that the fingers are not pose-able, I tried searching this up around google and I seem to get no solid answer to make this, if someone here could help me out, I would be thankful.
You need to give the relevant bones the correct names. The base names are [b]ValveBiped.Bip01_(L|R)_FingerX(Y)[/b]. L|R is either L(eft) or R(ight), X is the finger number, and Y is the knuckle number, starting at 0 (but knuckle 0, or the first knuckle, is blank). Source fingers are numbered from 0 (thumb) to 4 (pinkie / little finger). For example, the second knuckle of the left hand's ring finger would be [b]ValveBiped.Bip01_L_Finger21[/b]. The first knuckle of that same finger would be [b]ValveBiped.Bip01_L_Finger2[/b].
[QUOTE=Gmod4ever;51354707]You need to give the relevant bones the correct names. The base names are [b]ValveBiped.Bip01_(L|R)_FingerX(Y)[/b]. L|R is either L(eft) or R(ight), X is the finger number, and Y is the knuckle number, starting at 0 (but knuckle 0, or the first knuckle, is blank). Source fingers are numbered from 0 (thumb) to 4 (pinkie / little finger). For example, the second knuckle of the left hand's ring finger would be [b]ValveBiped.Bip01_L_Finger21[/b]. The first knuckle of that same finger would be [b]ValveBiped.Bip01_L_Finger2[/b].[/QUOTE] You also need to change the name of the hand bones. ValveBiped.Bip01_L_Hand or ValveBiped.Bip01_R_Hand.
[QUOTE=Gmod4ever;51354707]You need to give the relevant bones the correct names. The base names are [b]ValveBiped.Bip01_(L|R)_FingerX(Y)[/b]. L|R is either L(eft) or R(ight), X is the finger number, and Y is the knuckle number, starting at 0 (but knuckle 0, or the first knuckle, is blank). Source fingers are numbered from 0 (thumb) to 4 (pinkie / little finger). For example, the second knuckle of the left hand's ring finger would be [b]ValveBiped.Bip01_L_Finger21[/b]. The first knuckle of that same finger would be [b]ValveBiped.Bip01_L_Finger2[/b].[/QUOTE] But where do I go in order to edit the relevant bones?
[QUOTE=RANGUR;51354819]But where do I go in order to edit the relevant bones?[/QUOTE] Use something like Blender or 3ds max, maybe even Maya. Goto fingers and hands and rename them.
[QUOTE=isaa1;51354864]Use something like Blender or 3ds max, maybe even Maya. Goto fingers and hands and rename them.[/QUOTE] On Vertex Groups. Correct?
[QUOTE=RANGUR;51354904]On Vertex Groups. Correct?[/QUOTE] On the bones
[QUOTE=isaa1;51354973]On the bones[/QUOTE] Ah, Alright. But does the name specifically need to be have Valvebiped at the beginning of every bone?
[QUOTE=RANGUR;51355005]Ah, Alright. But does the name specifically need to be have Valvebiped at the beginning of ever bone?[/QUOTE] yes. The name needs to be the exact (I don't know if Capitalized letters count)
[QUOTE=isaa1;51355118]yes. The name needs to be the exact (I don't know if Capitalized letters count)[/QUOTE] And will this effect all the bones of the ragdoll? Considering that All the bones don't have "ValveBiped" in the beginning of each bone?
[QUOTE=RANGUR;51355190]And will this effect all the bones of the ragdoll? Considering that All the bones don't have "ValveBiped" in the beginning of each bone?[/QUOTE] No just the bones you rename
[QUOTE=isaa1;51355277]No just the bones you rename[/QUOTE] It worked! thanks. [editline]11th November 2016[/editline]
[QUOTE=isaa1;51355277]No just the bones you rename[/QUOTE] Okay, now I have one problem with the ring finger bone now, in game It doesn't pose, I checked the name, and it was correct, is there something wrong?
[QUOTE=RANGUR;51361504]Okay, now I have one problem with the ring finger bone now, in game It doesn't pose, I checked the name, and it was correct, is there something wrong?[/QUOTE] 1st: is it rigged? 2nd: is it name 100% the right way? 3rd: could some other bone have the name the ring should?
[QUOTE=isaa1;51361594]1st: is it rigged? 2nd: is it name 100% the right way? 3rd: could some other bone have the name the ring should?[/QUOTE] 1st: Yes, from what I've seen. 2nd: Exactly what I've named the other bones. 3rd: I've checked the bones and none of them seem to have the same name.
[QUOTE=RANGUR;51361857]1st: Yes, from what I've seen. 2nd: Exactly what I've named the other bones. 3rd: I've checked the bones and non of them seem to have the same name.[/QUOTE] Could you post the .qc?
[QUOTE=isaa1;51362030]Could you post the .qc?[/QUOTE] [CODE]// Created by Crowbar 0.34.0.0 $ModelName "Frank_Horrigan.mdl" $BodyGroup "studio" { studio "frankhorrigan_reference.smd" } $BodyGroup "blades" { blank studio "blades_reference.smd" } $SurfaceProp "alienflesh" $Contents "solid" $MaxEyeDeflection 90 $CDMaterials "models\horrigan" $CBox 0 0 0 0 0 0 $BBox -78.632 -91.222 -2.453 145.376 92.19 256.471 $SectionFrames 30 120 $PoseParameter "move_yaw" -180 180 0 $Animation "a_WalkS" "frank_horrigan_anims\a_WalkS.smd" { fps 30 loop } $Animation "a_WalkE" "frank_horrigan_anims\a_WalkE.smd" { fps 30 loop } $Animation "a_WalkN" "frank_horrigan_anims\a_WalkN.smd" { fps 30 loop } $Animation "a_WalkW" "frank_horrigan_anims\a_WalkW.smd" { fps 30 loop } $Animation "a_WalkS_hurt" "frank_horrigan_anims\a_WalkS_hurt.smd" { fps 30 loop } $Animation "a_WalkE_hurt" "frank_horrigan_anims\a_WalkE_hurt.smd" { fps 30 loop } $Animation "a_WalkN_hurt" "frank_horrigan_anims\a_WalkN_hurt.smd" { fps 30 loop } $Animation "a_WalkW_hurt" "frank_horrigan_anims\a_WalkW_hurt.smd" { fps 30 loop } $Sequence "mtidle" { "frank_horrigan_anims\mtidle.smd" activity "ACT_IDLE" -1 fadein 0.2 fadeout 0.2 fps 30 loop } $Sequence "specialidle_bash" { "frank_horrigan_anims\specialidle_bash.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "specialidle_getupfacedown" { "frank_horrigan_anims\specialidle_getupfacedown.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "specialidle_getupfaceup" { "frank_horrigan_anims\specialidle_getupfaceup.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "specialidle_hitarmleft" { "frank_horrigan_anims\specialidle_hitarmleft.smd" activity "ACT_FLINCH_LEFTARM" -1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "specialidle_hitarmright" { "frank_horrigan_anims\specialidle_hitarmright.smd" activity "ACT_FLINCH_RIGHTARM" -1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "specialidle_hithead" { "frank_horrigan_anims\specialidle_hithead.smd" activity "ACT_FLINCH_HEAD" -1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "specialidle_hitlegleft" { "frank_horrigan_anims\specialidle_hitlegleft.smd" activity "ACT_FLINCH_LEFTLEG" -1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "specialidle_hitlegright" { "frank_horrigan_anims\specialidle_hitlegright.smd" activity "ACT_FLINCH_RIGHTLEG" -1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "specialidle_hittorso" { "frank_horrigan_anims\specialidle_hittorso.smd" activity "ACT_FLINCH_CHEST" -1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "specialidle_mtstretch" { "frank_horrigan_anims\specialidle_mtstretch.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "specialidle_ponder" { "frank_horrigan_anims\specialidle_ponder.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "specialidle_scanleft" { "frank_horrigan_anims\specialidle_scanleft.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "specialidle_scanright" { "frank_horrigan_anims\specialidle_scanright.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2hunequip" { "frank_horrigan_anims\h2hunequip.smd" activity "ACT_DISARM" -1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2hrecoil" { "frank_horrigan_anims\h2hrecoil.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2hequip" { "frank_horrigan_anims\h2hequip.smd" activity "ACT_ARM" -1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2hattackrightup_b" { "frank_horrigan_anims\h2hattackrightup_b.smd" activity "ACT_RANGE_ATTACK1" 1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2hattackrightup_a" { "frank_horrigan_anims\h2hattackrightup_a.smd" activity "ACT_RANGE_ATTACK1" 1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2hattackrightdown_b" { "frank_horrigan_anims\h2hattackrightdown_b.smd" activity "ACT_MELEE_ATTACK2" 1 { event 1100 1 "event_play Attack" } { event 1100 13 "event_mattack rightdown_b" } fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2hattackrightdown_a" { "frank_horrigan_anims\h2hattackrightdown_a.smd" activity "ACT_MELEE_ATTACK2" 1 { event 1100 1 "event_play Attack" } { event 1100 13 "event_mattack rightdown_a" } fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2hattackright_b" { "frank_horrigan_anims\h2hattackright_b.smd" activity "ACT_MELEE_ATTACK1" 1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2hattackright_a" { "frank_horrigan_anims\h2hattackright_a.smd" activity "ACT_MELEE_ATTACK1" 1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2hattackleftup_b" { "frank_horrigan_anims\h2hattackleftup_b.smd" activity "ACT_RANGE_ATTACK1" 1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2hattackleftup_a" { "frank_horrigan_anims\h2hattackleftup_a.smd" activity "ACT_RANGE_ATTACK1" 1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2hattackleftdown_b" { "frank_horrigan_anims\h2hattackleftdown_b.smd" activity "ACT_MELEE_ATTACK2" 1 { event 1100 1 "event_play Attack" } { event 1100 14 "event_mattack leftdown_b" } fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2hattackleftdown_a" { "frank_horrigan_anims\h2hattackleftdown_a.smd" activity "ACT_MELEE_ATTACK2" 1 { event 1100 1 "event_play Attack" } { event 1100 13 "event_mattack leftdown_a" } fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2hattackleft_b" { "frank_horrigan_anims\h2hattackleft_b.smd" activity "ACT_MELEE_ATTACK1" 1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2hattackleft_a" { "frank_horrigan_anims\h2hattackleft_a.smd" activity "ACT_MELEE_ATTACK1" 1 fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2haimup" { "frank_horrigan_anims\h2haimup.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2haimdown" { "frank_horrigan_anims\h2haimdown.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "h2haim" { "frank_horrigan_anims\h2haim.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmunequip" { "frank_horrigan_anims\2hmunequip.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmrecoil" { "frank_horrigan_anims\2hmrecoil.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmequip" { "frank_horrigan_anims\2hmequip.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmattackrightup_b" { "frank_horrigan_anims\2hmattackrightup_b.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmattackrightup_a" { "frank_horrigan_anims\2hmattackrightup_a.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmattackrightdown_b" { "frank_horrigan_anims\2hmattackrightdown_b.smd" activity "ACT_RANGE_ATTACK2" 1 { event 1100 1 "event_play Melee" } { event 1100 13 "event_mattack rightdown_b" } fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmattackrightdown_a" { "frank_horrigan_anims\2hmattackrightdown_a.smd" activity "ACT_RANGE_ATTACK2" 1 { event 1100 1 "event_play Melee" } { event 1100 13 "event_mattack rightdown_a" } fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmattackright_b" { "frank_horrigan_anims\2hmattackright_b.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmattackright_a" { "frank_horrigan_anims\2hmattackright_a.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmattackpower" { "frank_horrigan_anims\2hmattackpower.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmattackleftup_a" { "frank_horrigan_anims\2hmattackleftup_a.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmattackleftdown_a" { "frank_horrigan_anims\2hmattackleftdown_a.smd" activity "ACT_RANGE_ATTACK2" 1 { event 1100 1 "event_play Melee" } { event 1100 21 "event_mattack leftdown_a" } fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmattackleft_a" { "frank_horrigan_anims\2hmattackleft_a.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmattackforwardpower" { "frank_horrigan_anims\2hmattackforwardpower.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmaimup" { "frank_horrigan_anims\2hmaimup.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "2hmaim" { "frank_horrigan_anims\2hmaim.smd" fadein 0.2 fadeout 0.2 fps 30 } $Sequence "walk" { "a_WalkS" "a_WalkE" "a_WalkN" "a_WalkW" "a_WalkS" activity "ACT_WALK" -1 blend "move_yaw" -180 180 blendwidth 5 { event 1100 14 "event_emit FootRight" } { event 1100 38 "event_emit FootLeft" } fadein 0.2 fadeout 0.2 node "walking" fps 30 loop } $Sequence "mtfastforward" { "frank_horrigan_anims\mtfastforward.smd" activity "ACT_RUN" -1 { event 1100 13 "event_emit FootRight" } { event 1100 27 "event_emit FootLeft" } fadein 0.2 fadeout 0.2 fps 30 loop } $Sequence "mtturnleft" { "frank_horrigan_anims\mtturnleft.smd" activity "ACT_TURN_LEFT" -1 fadein 0.2 fadeout 0.2 fps 30 loop } $Sequence "mtturnright" { "frank_horrigan_anims\mtturnright.smd" activity "ACT_TURN_RIGHT" -1 fadein 0.2 fadeout 0.2 fps 30 loop } $Sequence "walk_hurt" { "a_WalkS_hurt" "a_WalkE_hurt" "a_WalkN_hurt" "a_WalkW_hurt" "a_WalkS_hurt" activity "ACT_WALK_HURT" -1 blend "move_yaw" -180 180 blendwidth 5 { event 1100 13 "event_emit FootRight" } { event 1100 49 "event_emit FootLeft" } fadein 0.2 fadeout 0.2 node "walking" fps 30 loop } $Sequence "mtfastforward_hurt" { "frank_horrigan_anims\mtfastforward_hurt.smd" activity "ACT_RUN_HURT" -1 { event 1100 8 "event_emit FootRight" } { event 1100 32 "event_emit FootLeft" } fadein 0.2 fadeout 0.2 fps 30 loop } $Sequence "mtturnleft_hurt" { "frank_horrigan_anims\mtturnleft_hurt.smd" fadein 0.2 fadeout 0.2 fps 30 loop } $Sequence "mtturnright_hurt" { "frank_horrigan_anims\mtturnright_hurt.smd" fadein 0.2 fadeout 0.2 fps 30 loop } $Sequence "ragdoll" { "frank_horrigan_anims\ragdoll.smd" activity "ACT_DIERAGDOLL" -1 fadein 0.2 fadeout 0.2 fps 30 } $CollisionJoints "frankhorrigan_physics.smd" { $mass 0 $inertia 10 $damping 0.01 $rotdamping 1.5 $rootbone "bip01" $jointconstrain "bip01 spine1" x limit -37.00 37.00 0.00 $jointconstrain "bip01 spine1" y limit -16.00 16.00 0.00 $jointconstrain "bip01 spine1" z limit -55.00 70.00 0.00 $jointconstrain "bip01 r upperarm" x limit -68.00 77.00 0.00 $jointconstrain "bip01 r upperarm" y limit -35.00 70.00 0.00 $jointconstrain "bip01 r upperarm" z limit -77.00 50.00 0.00 $jointconstrain "bip01 r forearm" x limit -55.00 82.00 0.00 $jointconstrain "bip01 r forearm" y limit -30.00 70.00 0.00 $jointconstrain "bip01 r forearm" z limit -77.00 23.00 0.00 $jointconstrain "bip01 l upperarm" x limit -77.00 68.00 0.00 $jointconstrain "bip01 l upperarm" y limit -70.00 35.00 0.00 $jointconstrain "bip01 l upperarm" z limit -77.00 50.00 0.00 $jointconstrain "bip01 l forearm" x limit -82.00 55.00 0.00 $jointconstrain "bip01 l forearm" y limit -70.00 30.00 0.00 $jointconstrain "bip01 l forearm" z limit -77.00 23.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" x limit -77.00 46.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" y limit -17.00 21.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" z limit -39.00 46.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" x limit -46.00 77.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" y limit -21.00 17.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" z limit -39.00 46.00 0.00 $jointconstrain "bip01 r thigh" x limit -16.00 23.00 0.00 $jointconstrain "bip01 r thigh" y limit -30.00 19.00 0.00 $jointconstrain "bip01 r thigh" z limit -70.00 77.00 0.00 $jointconstrain "bip01 r calf" x limit -21.00 26.00 0.00 $jointconstrain "bip01 r calf" y limit 0.00 0.00 0.00 $jointconstrain "bip01 r calf" z limit -88.00 0.00 0.00 $jointconstrain "bip01 head" x limit -30.00 30.00 0.00 $jointconstrain "bip01 head" y limit -61.00 61.00 0.00 $jointconstrain "bip01 head" z limit -32.00 39.00 0.00 $jointconstrain "bip01 l thigh" x limit -23.00 16.00 0.00 $jointconstrain "bip01 l thigh" y limit -19.00 30.00 0.00 $jointconstrain "bip01 l thigh" z limit -70.00 77.00 0.00 $jointconstrain "bip01 l calf" x limit -26.00 21.00 0.00 $jointconstrain "bip01 l calf" y limit 0.00 0.00 0.00 $jointconstrain "bip01 l calf" z limit -88.00 0.00 0.00 $jointconstrain "bip01 l foot" x limit -28.00 17.00 0.00 $jointconstrain "bip01 l foot" y limit 0.00 0.00 0.00 $jointconstrain "bip01 l foot" z limit -39.00 39.00 0.00 $jointconstrain "bip01 r foot" x limit -17.00 28.00 0.00 $jointconstrain "bip01 r foot" y limit 0.00 0.00 0.00 $jointconstrain "bip01 r foot" z limit -39.00 39.00 0.00 } [/CODE]
Sorry, you need to Log In to post a reply to this thread.