Jump to content
Mr H.

Bad facewear positioning

Recommended Posts

I'm trying to model a facewear item for arma. For the moment I'm still doing tests with an unfinished untextured model. However I have tried to import it ingame and have encountered a major issue: the model appears in game alright but... Between the character's legs... At first it appeared on the ground but I read that the geometry lod must contain a named property "autocenter = 0". After setting it it's now placed further up the model but not quite up enough ;-)
XLid5Qp.jpg

 

and here's a link to the p3d:
https://www.dropbox.com/s/8x2pltrg8t14tq2/halomaskBasicTest.p3d?dl=0

If somebody as a good tutorial on making one's own facewear or an idea on how to fix my issue I'd be more than grateful.

Share this post


Link to post
Share on other sites

For the record the issue is fixed, it came from my model cfg

Share this post


Link to post
Share on other sites
21 hours ago, Mr H. said:

For the record the issue is fixed, it came from my model cfg

Would be helpful for people experiencing the same problem if you could say what exactly the cause was and how you fixed it.

Share this post


Link to post
Share on other sites
12 minutes ago, Dedmen said:

Would be helpful for people experiencing the same problem if you could say what exactly the cause was and how you fixed it.

pretty sure he was missing the class (=name of .p3d) from his model.cfg so it would inherit the bones

Share this post


Link to post
Share on other sites

nope I had copied the cfg from a vanilla model (which I got from http://odolconverter.t-db.de/ )and from a vanilla asset (for educational purposes of course)and replaced the class with that of my p3d. After  switching to a base cfg found in a tutorial It worked fine. My guess is that vanilla assets do not recall base classes but I'm not sure.

Share this post


Link to post
Share on other sites
On 12/13/2018 at 10:28 AM, Mr H. said:

nope I had copied the cfg from a vanilla model (which I got from http://odolconverter.t-db.de/ )and from a vanilla asset (for educational purposes of course)and replaced the class with that of my p3d. After  switching to a base cfg found in a tutorial It worked fine. My guess is that vanilla assets do not recall base classes but I'm not sure.

 

Could you, please, point me to said tutorial? I'm having the same issue with my facegear showing between the legs ...

 

Thank you Sir!

Share this post


Link to post
Share on other sites

can't recall which tutorial it was but here's a copy of the working model cfg, hope it helps:

Spoiler

class CfgSkeletons
{
   class Default
   {
       isDiscrete = 1;
       skeletonInherit = "";
       skeletonBones[] = {};
   };
   class OFP2_ManSkeleton
   {
       isDiscrete = 0;
       skeletonInherit = "";
       skeletonBones[] =
       {
           "Pelvis","",
           "Spine","Pelvis",
           "Spine1","Spine",
           "Spine2","Spine1",
           "Spine3","Spine2",
           "Camera","Pelvis",
           "weapon","Spine1",
           "launcher","Spine1",
       //Head skeleton in hierarchy
           "neck","Spine3",
           "neck1","neck",
           "head","neck1",
       //New facial features
           "Face_Hub","head",
               "Face_Jawbone","Face_Hub",
                   "Face_Jowl","Face_Jawbone",
                   "Face_chopRight","Face_Jawbone",
                   "Face_chopLeft","Face_Jawbone",
                   "Face_LipLowerMiddle","Face_Jawbone",
                   "Face_LipLowerLeft","Face_Jawbone",
                   "Face_LipLowerRight","Face_Jawbone",
                   "Face_Chin","Face_Jawbone",
                   "Face_Tongue","Face_Jawbone",
               "Face_CornerRight","Face_Hub",
                   "Face_CheekSideRight","Face_CornerRight",
               "Face_CornerLeft","Face_Hub",
                   "Face_CheekSideLeft","Face_CornerLeft",
               "Face_CheekFrontRight","Face_Hub",
               "Face_CheekFrontLeft","Face_Hub",
               "Face_CheekUpperRight","Face_Hub",
               "Face_CheekUpperLeft","Face_Hub",
               "Face_LipUpperMiddle","Face_Hub",
               "Face_LipUpperRight","Face_Hub",
               "Face_LipUpperLeft","Face_Hub",
               "Face_NostrilRight","Face_Hub",
               "Face_NostrilLeft","Face_Hub",
               "Face_Forehead","Face_Hub",
                   "Face_BrowFrontRight","Face_Forehead",
                   "Face_BrowFrontLeft","Face_Forehead",
                   "Face_BrowMiddle","Face_Forehead",
                   "Face_BrowSideRight","Face_Forehead",
                   "Face_BrowSideLeft","Face_Forehead",
               "Face_Eyelids","Face_Hub",
               "Face_EyelidUpperRight","Face_Hub",
               "Face_EyelidUpperLeft","Face_Hub",
               "Face_EyelidLowerRight","Face_Hub",
               "Face_EyelidLowerLeft","Face_Hub",
               "EyeLeft","Face_Hub",
               "EyeRight","Face_Hub",            
       //Left upper side
           "LeftShoulder","Spine3",
           "LeftArm","LeftShoulder",
           "LeftArmRoll","LeftArm",
           "LeftForeArm","LeftArmRoll",
           "LeftForeArmRoll","LeftForeArm",
           "LeftHand","LeftForeArmRoll",
           "LeftHandRing","LeftHand",
           "LeftHandRing1","LeftHandRing",
           "LeftHandRing2","LeftHandRing1",
           "LeftHandRing3","LeftHandRing2",
           "LeftHandPinky1","LeftHandRing",
           "LeftHandPinky2","LeftHandPinky1",
           "LeftHandPinky3","LeftHandPinky2",
           "LeftHandMiddle1","LeftHand",
           "LeftHandMiddle2","LeftHandMiddle1",
           "LeftHandMiddle3","LeftHandMiddle2",
           "LeftHandIndex1","LeftHand",
           "LeftHandIndex2","LeftHandIndex1",
           "LeftHandIndex3","LeftHandIndex2",
           "LeftHandThumb1","LeftHand",
           "LeftHandThumb2","LeftHandThumb1",
           "LeftHandThumb3","LeftHandThumb2",
       //Right upper side
           "RightShoulder","Spine3",
           "RightArm","RightShoulder",
           "RightArmRoll","RightArm",
           "RightForeArm","RightArmRoll",
           "RightForeArmRoll","RightForeArm",
           "RightHand","RightForeArmRoll",
           "RightHandRing","RightHand",
           "RightHandRing1","RightHandRing",
           "RightHandRing2","RightHandRing1",
           "RightHandRing3","RightHandRing2",
           "RightHandPinky1","RightHandRing",
           "RightHandPinky2","RightHandPinky1",
           "RightHandPinky3","RightHandPinky2",
           "RightHandMiddle1","RightHand",
           "RightHandMiddle2","RightHandMiddle1",
           "RightHandMiddle3","RightHandMiddle2",
           "RightHandIndex1","RightHand",
           "RightHandIndex2","RightHandIndex1",
           "RightHandIndex3","RightHandIndex2",
           "RightHandThumb1","RightHand",
           "RightHandThumb2","RightHandThumb1",
           "RightHandThumb3","RightHandThumb2",
       //Left lower side
           "LeftUpLeg","Pelvis",
           "LeftUpLegRoll","LeftUpLeg",
           "LeftLeg","LeftUpLegRoll",
           "LeftLegRoll","LeftLeg",
           "LeftFoot","LeftLegRoll",
           "LeftToeBase","LeftFoot",
       //Right lower side
           "RightUpLeg","Pelvis",
           "RightUpLegRoll","RightUpLeg",
           "RightLeg","RightUpLegRoll",
           "RightLegRoll","RightLeg",
           "RightFoot","RightLegRoll",
           "RightToeBase","RightFoot"
       };
       // location of pivot points (local axes) for hierarchical animation
       pivotsModel="A3\anims_f\data\skeleton\SkeletonPivots.p3d";
     };
};

class CfgModels
{
   class Default
   {
       sectionsInherit="";
       sections[] = {};
       skeletonName = "";
   };
   class ArmaMan : Default
   {
       htMin = 60;          // Minimum half-cooling time (in seconds)
       htMax = 1800;        // Maximum half-cooling time (in seconds)
       afMax = 30;          // Maximum temperature in case the model is alive (in celsius)
       mfMax = 0;           // Maximum temperature when the model is moving (in celsius)
       mFact = 1;           // Metabolism factor - number from interval <0, 1> (0 - metabolism has no influence, 1 - metabolism has full influence (no other temperature source will be considered)).
       tBody = 37;  // Metabolism temperature of the model (in celsius)

       sections[] =
       {
           "osobnost","Head_Injury","Body_Injury","l_leg_injury","l_arm_injury","r_arm_injury","r_leg_injury","injury_body", "injury_legs", "injury_hands",
           "clan","clan_sign","Camo","CamoB","Camo1","Camo2","personality","hl", "injury_head"
       };
       skeletonName = "OFP2_ManSkeleton";
   };
   class haloMask : ArmaMan {};
   class haloMaskNOESS : ArmaMan {};
};  

 

 

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×