When using control surface variable to animate the cockpit parts You can reduce the movement of the controls by interpolating the variable. The easy way to explain is to show you,
here I am doing a bit of retro engineering on an FS9 stock model using the rudder to animate the pilots leg rotations, this is the template I am using.
The interpolation table is reducing and also inverting the rotation
Code:
Transform_Mat(
0.0000000000 0.0000000000 0.0000000000 ;0.0000000000 0.0000000000 0.0000000000 //get from Animate line
1.0000000000 0.0000000000 0.0000000000 ;0.0000000000 0.0000000000 0.0000000000 //get Q2T from keyframe 50
0.0000000000 1.0000000000 0.0000000000 ;1.0000000000
0.0000000000 0.0000000000 1.0000000000
)
Jump( :Label_0 )
Nop
;Interpolation Table //for adjustment
Dwd( -32768 16384 ) //smallest in smallest out
Dwd( 32767 -16384 ) //largest in largest out inverted output polarity
:Label_0
VarBase( :[ -10 ] )
;uName: rudder uoffset: 0x78
Interpolate( :[ -1 ] 0x78 0 0x0312 1 0x00 )
VarBase( :[ -1 ] )
VarBaseOverride( 0x00 )
;uName: uOffset: 0x0312
TransformCall( :DrawRudder 0 0 0 0.0000000000 0x00 0.0000000000 0x0312 0.0000000000 0x00 )
Jump( :ExitRudder )
:DrawRudder
Jump32( ) ; insert label from Animate
:ExitRudder
TransformEnd
Bookmarks