Jump to content
Sign in to follow this  
wld427

Damage Hide not moving with swing wings

Recommended Posts

Working on the project RACS Su24 fencer. I added the roundels, Proxies, etc to the dammage hide selection. Now unfortunately they do not move when the wings animate.... how do i fix this?

model.cfg

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">

class CfgSkeletons

{

class Default;

class Plane;

class PRACS_Su24FencerSkeleton: Plane

{

skeletonInherit="";

isDiscrete = 1;

skeletonBones[]=

{

"fold_gear_F", "",

"roll_wheel_F", "fold_gear_F",

"fold_gear_R", "",

"roll_wheel_R", "fold_gear_R",

"fold_gear_L", "",

"roll_wheel_L", "fold_gear_L",

"horizont_4", "",

"horizont_3", "",

"compass", "",

"compass2", "",

"compass_3", "",

"3dhud", "",

"leva smerovka", "",

"leva vejskovka", "",

"prava vejskovka", "",

"ndl","",

"ndr","",

"md1","",

"fdl", "",

"mdL","",

"fdr", "",

"mdR","",

"canopy", "",

"leftwing", "",

"LeftPylon", "",

"rightwing", "",

"RightPylon", "",

"damageHide","",

"flarecount", "",

"ABSwitch",""

};

};

};

class Rotation;

class CfgModels

{

class Plane;

class PRACS_Su24Fencer: Plane

{

sectionsInherit="";

sections[]=

{

"zasleh","zbytek","vrtule blur", "vrtule"

};

skeletonName="PRACS_Su24FencerSkeleton";

class Animations

{

class fold_gear_F

{

type = "rotation";

memory = 1;

sourceAddress = "clamp";

source = "gear";

selection = "fold_gear_F";

axis = "axis_fold_gear_F";

minValue = 0;

maxValue = 0.700000;

angle0 =0;

angle1 =1.745;

};

class fold_gear_R : fold_gear_F

{

selection = "fold_gear_R";

axis = "axis_fold_gear_R";

angle0 =0;

angle1 =-2.1;

};

class fold_gear_L : fold_gear_F

{

selection = "fold_gear_L";

axis = "axis_fold_gear_L";

angle0 =0;

angle1 =2.1;

};

class NDL

{

type ="rotation";animPeriod =1;

memory = 1;

sourceAddress = "clamp";

source = "gear";

selection ="ndl";axis ="axis_ndl";

angle0 =-1.57;angle1 =0;

};

class NDR

{

type ="rotation";animPeriod =1;

memory = 1;

sourceAddress = "clamp";

source = "gear";

selection ="ndr";axis ="axis_ndr";

angle0 =1.57;angle1 =0;

};

class MD1

{

type ="rotation";animPeriod =7;

memory = 1;

sourceAddress = "clamp";

source = "gear";

selection ="md1";axis ="axis_md1";

angle0 =-.6;angle1 =0;

};

class MDL

{

type ="rotation";animPeriod =1;

memory = 1;

sourceAddress = "clamp";

source = "gear";

selection ="mdl";axis ="axis_mdl";

angle0 =1.57;angle1 =0;

};

class MDR

{

type ="rotation";animPeriod =1;

memory = 1;

sourceAddress = "clamp";

source = "gear";

selection ="mdr";axis ="axis_mdr";

angle0 =1.57;angle1 =0;

};

class FDL

{

type ="rotation";animPeriod =1;

memory = 1;

sourceAddress = "clamp";

source = "gear";

selection ="fdl";axis ="axis_fdl";

angle0 =0;angle1 =1.047;

};

class FDR

{

type ="rotation";animPeriod =1;

memory = 1;

sourceAddress = "clamp";

source = "gear";

selection ="fdr";axis ="axis_fdr";

angle0 =0;angle1 =-1.047;

};

class SWF

{

type ="rotation";animPeriod =.02;

selection ="_swf";axis ="axis_swf";

angle0 =0;angle1 =6.283;

};

class SWR

{

type ="rotation";animPeriod =.02;

selection ="_swr";axis ="axis_swr";

angle0 =0;angle1 =6.283;

};

class rightwing

{

type = "rotation";

source = "Speed";

selection = "rightwing";

axis = "axis_rightwing";

memory = 1;

sourceAddress = "clamp";

minValue = 85;

maxValue = 185;

angle0 = "0";

angle1 = "rad -50";

};

class leftwing : rightwing

{

selection = "leftwing";

axis = "axis_leftwing";

angle1 = "rad +50";

};

class RightPylon

{

type = "rotation";

source = "Speed";

selection ="RightPylon";

axis ="axis_RightPylon";

angle0 =0;

angle1 =-.0576;

memory = 1;

sourceAddress = "clamp";

minValue = 85;

maxValue = 185;

};

class leftPylon : RightPylon

{

selection ="LeftPylon";

axis ="axis_LeftPylon";

angle0 =0;

angle1 =.0576;

};

class Canopy

{

type="rotation";

source="cabin";

selection="canopy";

axis="axis_canopy";

memory=1;

sourceAddress="clamp";

minValue=0.000000;

maxValue=8.000000;

angle0=-0.925025;

angle1=0.000000;

};

class roll_wheel_F

{

type = "rotationX";

memory = 1;

sourceAddress = "loop";

source = "wheel";

selection = "roll_wheel_F";

axis = "";

minValue = 0;

maxValue = 1;

angle0 = 0;

angle1 = "rad -360";

};

class roll_wheel_R : roll_wheel_F

{

selection = "roll_wheel_R";

};

class roll_wheel_L : roll_wheel_F

{

selection = "roll_wheel_L";

};

class IndicatorCompass: Rotation

{

type="rotation";

source="direction";

selection="kompas";

axis="osa_kompas";

memory="false";

minValue=-3.141593;

maxValue=3.141593;

angle0=-3.141593;

angle1=3.141593;

};

class IndicatorCompass2: IndicatorCompass

{

selection="kompas2";

axis="osa_kompas2";

};

class IndicatorCompass3: IndicatorCompass

{

selection="compass_3";

axis="compass_3_axis";

};

class HorizonBank

{

type="rotationZ";

source="horizonBank";

selection="horizont";

axis="osa_horizont";

memory="false";

minValue="rad -360";

maxValue="rad +360";

angle0="rad -360";

angle1="rad +360";

};

class Horizon2Bank: HorizonBank

{

selection="horizont2";

axis="osa_horizont2";

};

class Horizon3Bank: HorizonBank

{

selection="horizont_3";

axis="horizont_3_axis";

};

class HorizonDive

{

type="rotationX";

source="horizonDive";

selection="horizont";

axis="osa_horizont";

memory="false";

minValue="rad -360";

maxValue="rad +360";

angle0="rad -360";

angle1="rad +360";

};

class Horizon2Dive: HorizonDive

{

selection="horizont2";

axis="horizont2_axis";

};

class Horizon4Dive: HorizonDive

{

selection="horizont_4";

axis="horizont_4_axis";

minValue="rad -90";

maxValue="rad +90";

angle0="rad -6";

angle1="rad +6";

};

class LFlap

{

type="rotation";

source="flap";

selection="ls klapka";

axis="osa ls klapky";

angle0=0;

angle1="rad -28.6";

};

class RFlap

{

type="rotation";

source="flap";

selection="ps klapka";

axis="osa ps klapky";

angle0=0;

angle1="rad 28.6";

};

class LElevator

{

type="rotation";

source="elevator";

selection="leva vejskovka";

axis="osa leve vejskovky";

minValue=-1;

maxValue=1;

angle0="rad 20";

angle1="rad -20";

};

class RElevator: LElevator

{

selection="prava vejskovka";

axis="osa prave vejskovky";

};

class LAileronT

{

type="rotation";

source="aileronT";

selection="lkh klapka";

axis="osa lk klapky";

minValue=-0.500000;

maxValue=1.400000;

angle0=-0.500000;

angle1=1.400000;

};

class RAileronT

{

type="rotation";

source="aileronB";

selection="pkh klapka";

axis="osa pk klapky";

minValue=-1.400000;

maxValue=0.500000;

angle0=-1.400000;

angle1=0.500000;

};

class LAileronB

{

type="rotation";

source="aileronB";

selection="lkd klapka";

axis="osa lkd klapky";

minValue=-1.400000;

maxValue=0.500000;

angle0=-1.400000;

angle1=0.500000;

};

class RAileronB

{

type="rotation";

source="aileronT";

selection="pkd klapka";

axis="osa pkd klapky";

minValue=-0.500000;

maxValue=1.400000;

angle0=-0.500000;

angle1=1.400000;

};

class LRudder

{

type="rotation";

source="rudder";

selection="leva smerovka";

axis="osa leve smerovky";

minValue=-1;

maxValue=1;

angle0="rad 22.9";

angle1="rad -22.9";

};

class Rotor

{

type="rotation";

source="rotor";

selection="vrtule";

axis="osa vrtule";

sourceAddress="1";

angle0=0;

angle1="rad 1440";

};

class Rotor2

{

type="rotation";

source="rotor";

selection="vrtule 1";

axis="osa vrtule1";

sourceAddress="1";

angle0=0;

angle1="rad 1440";

};

class ABSwitch

{

type = "rotation";

source ="ABSwitch";

sourceAddress = "clamp";

minValue=0;

maxValue=1;

animperiod= 1;

selection ="ABSwitch";

axis = "axis_ABSwitch";

angle0="0";

angle1="0.00017";

};

class 3dhudOn1: Rotation

{

type="translation";

source="rpm";

selection="3dhud";

axis="3dhud_axis";

memory=1;

minValue=0;

maxValue=0.010000;

offset0=15;

offset1=0;

};

class 3dhudOn2: 3dhudOn1

{

selection="horizont_3";

};

class 3dhudOn3: 3dhudOn1

{

selection="horizont_4";

};

class 3dhudOn4: 3dhudOn1

{

selection="compass_3";

};

class damageHide

{

type="hide";

source="damage";

selection="damageHide";

};

class flarecount {

type = "rotationX";

selection = "flarecount";

axis = "osa_flarecount";

memory = 1;

minValue = 0;

maxValue = 1;

angle0 = "rad 0";

angle1 = "rad +180";

};

};

};

class PRACS_Su24Fencer_BMB : PRACS_Su24Fencer {};

class PRACS_Su24Fencer_ASW : PRACS_Su24Fencer {};

};

Share this post


Link to post
Share on other sites

class damageHide

{

type="hide";

source="damage";

selection="damageHide";

};

You defined just 1 animation in which you are trying hide all bits of your plane via the damage source.

Dont do this.

Write a series of Damage animations, 1 each for each named section that moves.

You can group name and mass hide named sections THAT DO NOT MOVE, but not sections that move, unless you use add bone to the top level of each moving bit, which is a pain.

Easier to simply write a damage hide animation for each named bit that moves.

Share this post


Link to post
Share on other sites

gnat,

could you please provide a quick code example for say the left wing as to how i do this by the method you described?

Share this post


Link to post
Share on other sites

Sorry, traveling at the moment, no source files with me.

But it should be really as simple as;

class damageHideLeftWing

{

type="hide";

source="damage";

selection="leftwing";

};

class damageHideRightWing

{

type="hide";

source="damage";

selection="rightwing";

};

etc etc

Put all these damage hide animations at the top of the definitions list to be safe.

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  

×