Jump to content
Sign in to follow this  
hcpookie

Tracked Vehicle spins out of control

Recommended Posts

Working on the UGV model and I am having a problem. I think the problem lies with the model.cfg. What happens is you drive it more than about 1 meter and the model starts to spin violently, like it is stuck on a rock or something.

At first I thought my model.cfg was fubar, so I tried a different model.cfg that I know works. Same problem! Which implies the model is the issue.

To make the model, I used the BIS ZSU sample model and started by scaling everything down to about .10 percent of the original. The original track sections are all still defined (1-8) HOWEVER there is only one bottom wheel. So you have the front wheel, the back wheel, and one bottom wheel (I used the 3 wheel just to keep things simple).

I have altered the track weight in the geometry by 100x to make it bottom-heavy and no change in behavior. Also raised the tracks to avoid the issues as described in the "sunken tracks" thread. Same problem.

I am starting to think I need to completely redefine all of the tracks so that all the sections except section 3 are removed.

Question: Does the track need to start with sections #1 and contain all 8 sections?

Question: Is there a minimum model size for the tracks? Total size on the UGV is about 1 meter.

My current model.cfg file. Most of it is default from the BIS sample tracked model.cfg. Notice that a great amount of the default inheritance was removed during my troubleshooting:

class CfgSkeletons

{

class TankBase

{

skeletonInherit="";

skeletonBones[]=

{};

};

class UGVSkeleton: TankBase

{

isDiscrete = 1;

skeletonInherit="TankBase";

skeletonBones[]=

{

"OtocVez","",

"OtocHlaven","OtocVez",

"OtocVelitele","OtocVez",

"OtocHlavenVelitele","OtocVelitele",

"nadkoloL1","podkoloL1",

"nadkoloL2","podkoloL2",

"nadkoloL3","podkoloL3",

"nadkoloL4","podkoloL4",

"nadkoloL5","podkoloL5",

"nadkoloL6","podkoloL6",

"nadkoloP1","podkoloP1",

"nadkoloP2","podkoloP2",

"nadkoloP3","podkoloP3",

"nadkoloP4","podkoloP4",

"nadkoloP5","podkoloP5",

"nadkoloP6","podkoloP6",

"damageVez","OtocVez",

"kolL1","",

"kolL2","",

"kolP1","",

"kolP2","",

"podkoloL1","",

"podkoloL2","",

"podkoloL3","",

"podkoloL4","",

"podkoloL5","",

"podkoloL6","",

"podkoloL7","",

"podkoloL8","",

"podkoloP1","",

"podkoloP2","",

"podkoloP3","",

"podkoloP4","",

"podkoloP5","",

"podkoloP6","",

"podkoloP7","",

"podkoloP8","",

"koloL3","podkoloL3",

"koloP3","podkoloP3",

"damageHide","",

"podkoloL1_hide","podkoloL1",

"podkoloL2_hide","podkoloL2",

"podkoloL3_hide","podkoloL3",

"podkoloL4_hide","podkoloL4",

"podkoloL5_hide","podkoloL5",

"podkoloL6_hide","podkoloL6",

"podkoloL7_hide","podkoloL7",

"podkoloL8_hide","podkoloL8",

"podkoloP1_hide","podkoloP1",

"podkoloP2_hide","podkoloP2",

"podkoloP3_hide","podkoloP3",

"podkoloP4_hide","podkoloP4",

"podkoloP5_hide","podkoloP5",

"podkoloP6_hide","podkoloP6",

"podkoloP7_hide","podkoloP7",

"podkoloP8_hide","podkoloP8",

};

};

};

class Rotation;

class CfgModels

{

class Tank

{

sectionsInherit="";

sections[]=

{

"PasOffsetP",

"PasOffsetL",

"telo",

"pas_L",

"pas_P",

"motor",

"vez",

"zbran",

"clan",

"clan_sign",

"koll1","koll2","kolp1","kolp2",

"koloL3","koloP3",

"pasanimL", "pasanimP",

"pravy zadni", "levy zadni",

"L svetlo", "P svetlo",

"damageHide", "damageVez"

};

skeletonName="Tank";

class Animations

{

};

};

class UGV: Tank

{

skeletonName="UGVSkeleton";

sectionsInherit="Tank";

sections[]={

"zasleh",

"PasOffsetP",

"PasOffsetL",

"telo",

"pas_L",

"pas_P",

"motor",

"vez",

"zbran",

"clan",

"clan_sign",

"kolL1","kolP1", // front wheels

"kolL2","kolP2", // back wheels

"koloL3","koloP3", // middle wheels

"pasanimL", "pasanimP",

"pravy zadni", "levy zadni",

"L svetlo", "P svetlo",

"damageHide", "damageVez"

};

class Animations: Animations

{

class MainTurret

{

type="rotationY";

source="mainTurret";

selection="OtocVez";

axis="OsaVeze";

animPeriod=0;

minValue="rad -360";

maxValue="rad +360";

angle0="rad -360";

angle1="rad +360";

};

class MainGun: MainTurret

{

type="rotationX";

source="mainGun";

selection="OtocHlaven";

axis="OsaHlavne";

};

class ObsTurret

{

type="rotationY";

source="obsTurret";

selection="OtocVelitele";

axis="OsaVelitele";

animPeriod=0;

minValue="rad -360";

maxValue="rad +360";

angle0="rad -360";

angle1="rad +360";

};

class ObsGun: ObsTurret

{

type="rotationX";

source="obsGun";

selection="OtocHlavenVelitele";

axis="OsaHlavneVelitele";

};

class Wheel_kolL1

{

type="rotationX";

source="wheelL";

selection="kolL1";

axis="";

memory="false";

animPeriod=0;

angle0=0;

angle1="rad -360";

sourceAddress="loop";

};

class Wheel_podkoloL1

{

type="translationY";

source="damper";

selection="podkoloL1";

axis="";

memory="false";

animPeriod=0;

minValue=-1000;

maxValue=1000;

};

class Wheel_kolP1: Wheel_kolL1

{

source="wheelR";

selection="kolP1";

};

class Wheel_podkoloP1: Wheel_podkoloL1

{

selection="podkoloP1";

};

class Wheel_kolL2: Wheel_kolL1

{

selection="kolL2";

};

class Wheel_kolP2: Wheel_kolP1

{

selection="kolP2";

};

class Wheel_koloL3: Wheel_kolL1

{

selection="koloL3";

};

class Wheel_koloP3: Wheel_kolP1

{

selection="koloP3";

};

class Wheel_podkoloL2: Wheel_podkoloL1

{

selection="podkoloL2";

};

class Wheel_podkoloL3: Wheel_podkoloL1

{

selection="podkoloL3";

};

class Wheel_podkoloL4: Wheel_podkoloL1

{

selection="podkoloL4";

};

class Wheel_podkoloL5: Wheel_podkoloL1

{

selection="podkoloL5";

};

class Wheel_podkoloL6: Wheel_podkoloL1

{

selection="podkoloL6";

};

class Wheel_podkoloL7: Wheel_podkoloL1

{

selection="podkoloL7";

};

class Wheel_podkoloL8: Wheel_podkoloL1

{

selection="podkoloL8";

};

class Wheel_podkoloP2: Wheel_podkoloP1

{

selection="podkoloP2";

};

class Wheel_podkoloP3: Wheel_podkoloP1

{

selection="podkoloP3";

};

class Wheel_podkoloP4: Wheel_podkoloP1

{

selection="podkoloP4";

};

class Wheel_podkoloP5: Wheel_podkoloP1

{

selection="podkoloP5";

};

class Wheel_podkoloP6: Wheel_podkoloP1

{

selection="podkoloP6";

};

class Wheel_podkoloP7: Wheel_podkoloP1

{

selection="podkoloP7";

};

class Wheel_podkoloP8: Wheel_podkoloP1

{

selection="podkoloP8";

};

class damageHide

{

type="hide";

source="damage";

selection="damageHide";

};

class podkoloL1_hide_damage: damageHide

{

selection="podkoloL1_hide";

};

class podkoloL2_hide_damage: damageHide

{

selection="podkoloL2_hide";

};

class podkoloL3_hide_damage: damageHide

{

selection="podkoloL3_hide";

};

class podkoloL4_hide_damage: damageHide

{

selection="podkoloL4_hide";

};

class podkoloL5_hide_damage: damageHide

{

selection="podkoloL5_hide";

};

class podkoloL6_hide_damage: damageHide

{

selection="podkoloL6_hide";

};

class podkoloL7_hide_damage: damageHide

{

selection="podkoloL7_hide";

};

class podkoloL8_hide_damage: damageHide

{

selection="podkoloL8_hide";

};

class podkoloP1_hide_damage: damageHide

{

selection="podkoloP1_hide";

};

class podkoloP2_hide_damage: damageHide

{

selection="podkoloP2_hide";

};

class podkoloP3_hide_damage: damageHide

{

selection="podkoloP3_hide";

};

class podkoloP4_hide_damage: damageHide

{

selection="podkoloP4_hide";

};

class podkoloP5_hide_damage: damageHide

{

selection="podkoloP5_hide";

};

class podkoloP6_hide_damage: damageHide

{

selection="podkoloP6_hide";

};

class podkoloP7_hide_damage: damageHide

{

selection="podkoloP7_hide";

};

class podkoloP8_hide_damage: damageHide

{

selection="podkoloP8_hide";

};

class damageVez: damageHide

{

selection="damageVez";

};

class nadkoloL1_damage: damageHide

{

selection="nadkoloL1";

};

class nadkoloL2_damage: damageHide

{

selection="nadkoloL2";

};

class nadkoloL3_damage: damageHide

{

selection="nadkoloL3";

};

class nadkoloL4_damage: damageHide

{

selection="nadkoloL4";

};

class nadkoloL5_damage: damageHide

{

selection="nadkoloL5";

};

class nadkoloL6_damage: damageHide

{

selection="nadkoloL6";

};

class nadkoloP1_damage: damageHide

{

selection="nadkoloP1";

};

class nadkoloP2_damage: damageHide

{

selection="nadkoloP2";

};

class nadkoloP3_damage: damageHide

{

selection="nadkoloP3";

};

class nadkoloP4_damage: damageHide

{

selection="nadkoloP4";

};

class nadkoloP5_damage: damageHide

{

selection="nadkoloP5";

};

class nadkoloP6_damage: damageHide

{

selection="nadkoloP6";

};

class OtocVelitele_damage: damageHide

{

selection="OtocVelitele";

};

};

};

class pook_TS_M240: UGV {};

};

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
Sign in to follow this  

×