Difference between revisions of "Documentation/Engine/Truck Interior Animations and IDs"

From SCS Modding Wiki
Jump to navigation Jump to search
(Created page with "=Interior Animations= For movement of various things in truck interior are used program driven animations ( '''_anim''' ). For each animation can be set range by '''*_anim_mi...")
 
(Corrected heading levels to wiki standard; Began changing cabin animations to tabular format & adapting content from my 'Animations Cheatsheet' (http://forum.scssoft.com/viewtopic.php?f=201&t=204022))
Line 1: Line 1:
=Interior Animations=
+
==Interior Animations==
  
 
For movement of various things in truck interior are used program driven animations ( '''_anim''' ). For each animation can be set range by '''*_anim_min''' and '''*_anim_max''' values. As most animations expect range from 0 to 1, this are also default values. If animation expect any other value range it will be stated below.
 
For movement of various things in truck interior are used program driven animations ( '''_anim''' ). For each animation can be set range by '''*_anim_min''' and '''*_anim_max''' values. As most animations expect range from 0 to 1, this are also default values. If animation expect any other value range it will be stated below.
  
==Special animations===
+
===Special Animations===
  
* wheel_anim
+
{| class="wikitable"
* wiper_anim
+
!Attribute Name
* gadget_anim
+
!Function
 +
!Behavior
 +
!Notes
 +
|-
 +
|wheel_anim
 +
|Steering wheel
 +
|0 - left full lock<br />0.5 - center<br />1 - right full lock
 +
|For best results, each keyframe should be less than 45°<br />The steering wheel bone should be named '''steering_w''' for compatibility with [[Games/ETS2/Modding_guides/1.25#Steering_wheel_accessory|interchangeable steering wheels]].
 +
|-
 +
|wheel_updown_anim
 +
|Steering column tilt adjustment
 +
|0 - lowest setting<br />1 - highest setting
 +
|The default position is set by '''wheel_updown_anim_default'''
 +
|-
 +
|wheel_frontback_anim
 +
|Steering column telescope adjustment
 +
|0 - fully retracted<br />1 - fully extended
 +
|The default position is set by '''wheel_frontback_anim_default'''
 +
|-
 +
|wiper_anim
 +
|Windshield wipers
 +
|0&rarr;1 is a full wipe cycle<br />(from park to full travel and back to park)
 +
|The keyframes at 0 and 1 should match.
 +
|-
 +
|gadget_anim
 +
|
 +
|
 +
|
 +
|}
  
==Stick animations==
+
===Stick Animations===
  
* blinker_anim
+
{| class="wikitable"
* lights_anim
+
!Attribute Name
* high_beam_anim
+
!Function
* light_horn_stick_anim
+
!Behavior
* wiper_stick_anim
+
!Notes
* parking_stick_anim
+
|-
* flasher_4way_anim
+
|blinker_anim
* engine_start_anim - 0 off, 0.33 electricity on, 0.67 engine on, 1 engine starting
+
|Turn signal control lever
* beacon_anim
+
|0 - left indicator active<br />0.5 - rest position<br />1 - right indicator active
* trailer_stick_anim - trailer brake
+
|
* retarder_stick_anim
+
|-
* auto_transmission_stick_anim - in order reverse-neutral-drive
+
|lights_anim
* lift_axle_stick_anim
+
|Headlight control
 +
|0 - lights off<br />0.5 - parking/clearance lights on<br />1 - headlights on
 +
|
 +
|-
 +
|high_beam_anim
 +
|High beam headlight control
 +
|0 - rest position<br />1 - high beams on
 +
|
 +
|-
 +
|light_horn_stick_anim
 +
|Light/city horn button
 +
|0 - rest position<br />1 - light horn being applied
 +
|
 +
|-
 +
|wiper_stick_anim
 +
|Windshield wiper control
 +
|0 - off<br />1 - maximum speed
 +
|This animation is interpolated based on the total number of wiper speeds. For example, if there are two wiper speeds, 0.5 would correspond with the lower speed.
 +
|-
 +
|rowspan="2"|parking_stick_anim
 +
|rowspan="2"|Parking brake control
 +
|rowspan="2"|0 - parking brake released<br />1 - parking brake applied
 +
|'''North America:''' Whether 'in' or 'out' is the applied state will depend on the truck – make sure that the animation matches the label on the valve or you will look like a goof.
  
==Gauge animations==
+
The typical usage is for 'push to release' systems where the 0.0 state is 'in' and the 1.0 state is 'out'.
 +
|-
 +
|'''Europe:'''
 +
|-
 +
|flasher_4way_anim
 +
|Four-way flasher (hazard light) control
 +
|0 - rest position<br />1 - hazard lights are active
 +
|For a button, the &ldquo;depressed&rdquo; state would be 0.5 to make the button press and rebound for both activation and deactivation
 +
|-
 +
|engine_start_anim
 +
|Ignition and starting controls
 +
|0 - off<br />0.33 - electricity on<br />0.67 - engine on<br />1 - engine starting
 +
|
 +
|-
 +
|beacon_anim
 +
|Beacon on/off switch
 +
|0 - beacon off
 +
1 - beacon on
 +
|-
 +
|trailer_air_stick_anim
 +
|Trailer air supply valve
 +
|0 - trailer disconnected
 +
1 - trailer connected
 +
|This is directly tied to whether a trailer is connected to the truck or not.
  
* oil_psi_anim - range in psi (pounds per square inch), 40-90 psi is typical working value
+
Typical usage is for a 'push to supply' type, so the valve is 'out' in the 0.0 state and 'in' in the 1.0 state
* water_temp_anim - in celsius degrees, working value 90*C
+
|-
* battery_anim - in volts, working value 24V
+
|trailer_brake_stick_anim
* oil_temp_anim - engine oil temperature, in celsius degrees, working value 90*C
+
|Trailer brake hand valve
* diff_temp_anim - differential temperature, in celsius degrees, working value 90*C
+
(sometimes called the 'spike')
* tachometer_anim - in rpm (revolution per minute)
+
|0 - rest position
* speedometer_anim - speed in km/h
+
1 - trailer brake hand valve fully applied
* air_psi_anim - range in psi (pounds per square inch), working value 140 psi
+
|Do not confuse this with the trailer supply valve - the hand valve is used (rarely) to apply only the trailer brakes in a controlled manner
* brake_psi_anim - range is 0 to 1, maximum pressure value should be equivalent of 60-70 psi
+
|-
* suspension_load_anim - expects range in newtons (22t trailer creates like 70kN on kingpin)
+
|retarder_stick_anim
* fuel_anim
+
|Retarder control
* ad_blue_anim
+
|0 - off
* turbo_anim
+
1 - maximum setting
* consumption_anim - instant consumption in l/100km, scania gauge has 0 to 120
+
|
* clock_big_anim - minutes, 0-60
+
|-
* clock_small_anim - hours, 0-12
+
|auto_transmission_stick_anim
* generic_anim - animation for other gauges. 0 when truck is turned off, 1 when truck is turned on.
+
|Automatic transmission gear selector
 +
|0 - reverse<br />0.5 - neutral<br />1 - drive
 +
|
 +
|-
 +
|lift_axle_stick_anim
 +
|Lift axle switch/control
 +
|
 +
|
 +
|}
 +
===Gauge animations===
 +
This set of animations handles analog gauges. The related '''*_min''' and '''*_max''' attributes set the values that the start and end of the animation correspond to. Where the simulated value exceeds the min/max attribute, the animation is clamped.
 +
{| class="wikitable"
 +
!Attribute Name
 +
!Function
 +
!Behavior
 +
!Notes
 +
|-
 +
|oil_psi_anim
 +
|Engine oil pressure in pounds per square inch (psi)
 +
|0 - oil_psi_anim_min
 +
1 - oil_psi_anim_max
 +
|40-90 psi is typical working value
 +
|-
 +
|water_temp_anim
 +
|Engine water/coolant temperature (°C)
 +
|0 - water_temp_anim_min
 +
1 - water_temp_anim_max
 +
|working value 90°C
 +
|-
 +
|battery_anim
 +
|Battery potential in volts
 +
|0 - battery_anim_min
 +
1 - battery_anim_max
 +
|Nominally 24V. For 12V systems, set the min/max attributes to twice the value the gauge displays and it should appear as if it is indeed a 12V system.
 +
|-
 +
|oil_temp_anim
 +
|Engine oil temperature (°C)
 +
|0 - oil_temp_anim_min
 +
1 - oil_temp_anim_max
 +
|working value 90°C
 +
|-
 +
|diff_temp_anim
 +
|Differential temperature (°C)
 +
|0 - diff_temp_anim_min
 +
1 - diff_temp_anim_max
 +
|working value 90°C
 +
|-
 +
|tachometer_anim
 +
|Tachometer in rpm (revolution per minute)
 +
|0 - tachometer_anim_min
 +
1 - tachometer_anim_max
 +
|
 +
|-
 +
|speedometer_anim
 +
|Speedometer (km/h)
 +
|0 - speedometer_anim_min
 +
1 - speedometer_anim_max
 +
|1mph = 1.60934km/h
 +
|-
 +
|air_psi_anim
 +
|Air brake reservoir pressure in psi (pounds per square inch)
 +
|0 - air_psi_anim_min
 +
1 - air_psi_anim_max
 +
|working value 140 psi
 +
|-
 +
|brake_psi_anim
 +
|Air brake application
 +
|
 +
|range is 0 to 1, maximum pressure value should be equivalent of 60-70 psi
 +
|-
 +
|suspension_load_anim
 +
|Suspension load in newtons
 +
|0 - suspension_load_anim_min
 +
1 - suspension_load_anim_max
 +
|expects range in newtons (22t trailer creates like 70kN on kingpin)
 +
|-
 +
|fuel_anim
 +
|Fuel gauge (relative to full)
 +
|0 - fuel_anim_min
 +
1 - fuel_anim_max
 +
|By default, 0 corresponds to empty state and 1 corresponds to full
 +
|-
 +
|ad_blue_anim
 +
|Ad Blue/DEF gauge (relative to full)
 +
|0 - fuel_anim_min
 +
1 - fuel_anim_max
 +
|By default, 0 corresponds to empty state and 1 corresponds to full
 +
|-
 +
|turbo_anim
 +
|Manifold pressure
 +
|
 +
|
 +
|-
 +
|consumption_anim
 +
|Instantaneous fuel consumption in l/100km
 +
|0 - consumption_anim_min
 +
1 - consumption_anim_max
 +
|scania gauge has 0 to 120
 +
|-
 +
|clock_big_anim
 +
|Analog clock, minute hand (0-60)
 +
|
 +
|
 +
|-
 +
|clock_small_anim
 +
|Analog clock, hour hand (0-12)
 +
|
 +
|
 +
|-
 +
|generic_anim
 +
|Animation for other gauges.  
 +
|0 when truck is turned off<br />1 when truck is turned on
 +
|
 +
|}
 +
===Indicator animations===
  
==Indicator animations==
+
These animations are not interpolated from 0 to 1 rather they have only 2 states: switched off and switched on. So this animations should have only 2 key frames.
 
 
This animations are not interpolated from 0 to 1 rather they have only 2 states: switched off and switched on. So this animations should have only 2 key frames.
 
  
 
* button_left_blinker
 
* button_left_blinker
Line 68: Line 253:
 
* button_parking_brake
 
* button_parking_brake
 
* button_4way - indicator should be placed on hazard warning button for blinking
 
* button_4way - indicator should be placed on hazard warning button for blinking
 +
* button_abs
 +
* button_bbw
 +
* button_avi
 
* indicator_retarder
 
* indicator_retarder
 
* indicator_warning - damage warning indicator
 
* indicator_warning - damage warning indicator
Line 75: Line 263:
 
* indicator_generic - animation for other indicator. 0 most of the time, 1 when truck is making electricity check (after turned on).
 
* indicator_generic - animation for other indicator. 0 most of the time, 1 when truck is making electricity check (after turned on).
  
=Dashboards IDs=
+
==Dashboards IDs==
  
 
Screen of dashboard computers uses our UI library and shows thus UI elements. Each element has unique ID and can be used only once (due to caching). Most of fields can be used as two parameter template - value and unit, both are used accordingly to current game options. As in different languages can be units and other texts translated ensure that there are enough space for all of them.
 
Screen of dashboard computers uses our UI library and shows thus UI elements. Each element has unique ID and can be used only once (due to caching). Most of fields can be used as two parameter template - value and unit, both are used accordingly to current game options. As in different languages can be units and other texts translated ensure that there are enough space for all of them.
  
==Screen IDs ( '''ui::group''' type):==
+
===Screen IDs ( '''ui::group''' type):===
  
 
* 100 to 800 - basic screens, up to 8 screens
 
* 100 to 800 - basic screens, up to 8 screens
Line 85: Line 273:
 
* 950 - shared screen (used together with all basic screens)
 
* 950 - shared screen (used together with all basic screens)
  
==Element IDs (mostly '''ui::text_common''' type):==
+
===Element IDs (mostly '''ui::text_common''' type):===
  
 
* 1000 - ambient temperature
 
* 1000 - ambient temperature

Revision as of 03:02, 31 August 2016

Interior Animations

For movement of various things in truck interior are used program driven animations ( _anim ). For each animation can be set range by *_anim_min and *_anim_max values. As most animations expect range from 0 to 1, this are also default values. If animation expect any other value range it will be stated below.

Special Animations

Attribute Name Function Behavior Notes
wheel_anim Steering wheel 0 - left full lock
0.5 - center
1 - right full lock
For best results, each keyframe should be less than 45°
The steering wheel bone should be named steering_w for compatibility with interchangeable steering wheels.
wheel_updown_anim Steering column tilt adjustment 0 - lowest setting
1 - highest setting
The default position is set by wheel_updown_anim_default
wheel_frontback_anim Steering column telescope adjustment 0 - fully retracted
1 - fully extended
The default position is set by wheel_frontback_anim_default
wiper_anim Windshield wipers 0→1 is a full wipe cycle
(from park to full travel and back to park)
The keyframes at 0 and 1 should match.
gadget_anim

Stick Animations

Attribute Name Function Behavior Notes
blinker_anim Turn signal control lever 0 - left indicator active
0.5 - rest position
1 - right indicator active
lights_anim Headlight control 0 - lights off
0.5 - parking/clearance lights on
1 - headlights on
high_beam_anim High beam headlight control 0 - rest position
1 - high beams on
light_horn_stick_anim Light/city horn button 0 - rest position
1 - light horn being applied
wiper_stick_anim Windshield wiper control 0 - off
1 - maximum speed
This animation is interpolated based on the total number of wiper speeds. For example, if there are two wiper speeds, 0.5 would correspond with the lower speed.
parking_stick_anim Parking brake control 0 - parking brake released
1 - parking brake applied
North America: Whether 'in' or 'out' is the applied state will depend on the truck – make sure that the animation matches the label on the valve or you will look like a goof.

The typical usage is for 'push to release' systems where the 0.0 state is 'in' and the 1.0 state is 'out'.

Europe:
flasher_4way_anim Four-way flasher (hazard light) control 0 - rest position
1 - hazard lights are active
For a button, the “depressed” state would be 0.5 to make the button press and rebound for both activation and deactivation
engine_start_anim Ignition and starting controls 0 - off
0.33 - electricity on
0.67 - engine on
1 - engine starting
beacon_anim Beacon on/off switch 0 - beacon off

1 - beacon on

trailer_air_stick_anim Trailer air supply valve 0 - trailer disconnected

1 - trailer connected

This is directly tied to whether a trailer is connected to the truck or not.

Typical usage is for a 'push to supply' type, so the valve is 'out' in the 0.0 state and 'in' in the 1.0 state

trailer_brake_stick_anim Trailer brake hand valve

(sometimes called the 'spike')

0 - rest position

1 - trailer brake hand valve fully applied

Do not confuse this with the trailer supply valve - the hand valve is used (rarely) to apply only the trailer brakes in a controlled manner
retarder_stick_anim Retarder control 0 - off

1 - maximum setting

auto_transmission_stick_anim Automatic transmission gear selector 0 - reverse
0.5 - neutral
1 - drive
lift_axle_stick_anim Lift axle switch/control

Gauge animations

This set of animations handles analog gauges. The related *_min and *_max attributes set the values that the start and end of the animation correspond to. Where the simulated value exceeds the min/max attribute, the animation is clamped.

Attribute Name Function Behavior Notes
oil_psi_anim Engine oil pressure in pounds per square inch (psi) 0 - oil_psi_anim_min

1 - oil_psi_anim_max

40-90 psi is typical working value
water_temp_anim Engine water/coolant temperature (°C) 0 - water_temp_anim_min

1 - water_temp_anim_max

working value 90°C
battery_anim Battery potential in volts 0 - battery_anim_min

1 - battery_anim_max

Nominally 24V. For 12V systems, set the min/max attributes to twice the value the gauge displays and it should appear as if it is indeed a 12V system.
oil_temp_anim Engine oil temperature (°C) 0 - oil_temp_anim_min

1 - oil_temp_anim_max

working value 90°C
diff_temp_anim Differential temperature (°C) 0 - diff_temp_anim_min

1 - diff_temp_anim_max

working value 90°C
tachometer_anim Tachometer in rpm (revolution per minute) 0 - tachometer_anim_min

1 - tachometer_anim_max

speedometer_anim Speedometer (km/h) 0 - speedometer_anim_min

1 - speedometer_anim_max

1mph = 1.60934km/h
air_psi_anim Air brake reservoir pressure in psi (pounds per square inch) 0 - air_psi_anim_min

1 - air_psi_anim_max

working value 140 psi
brake_psi_anim Air brake application range is 0 to 1, maximum pressure value should be equivalent of 60-70 psi
suspension_load_anim Suspension load in newtons 0 - suspension_load_anim_min

1 - suspension_load_anim_max

expects range in newtons (22t trailer creates like 70kN on kingpin)
fuel_anim Fuel gauge (relative to full) 0 - fuel_anim_min

1 - fuel_anim_max

By default, 0 corresponds to empty state and 1 corresponds to full
ad_blue_anim Ad Blue/DEF gauge (relative to full) 0 - fuel_anim_min

1 - fuel_anim_max

By default, 0 corresponds to empty state and 1 corresponds to full
turbo_anim Manifold pressure
consumption_anim Instantaneous fuel consumption in l/100km 0 - consumption_anim_min

1 - consumption_anim_max

scania gauge has 0 to 120
clock_big_anim Analog clock, minute hand (0-60)
clock_small_anim Analog clock, hour hand (0-12)
generic_anim Animation for other gauges. 0 when truck is turned off
1 when truck is turned on

Indicator animations

These animations are not interpolated from 0 to 1 rather they have only 2 states: switched off and switched on. So this animations should have only 2 key frames.

  • button_left_blinker
  • button_right_blinker
  • blinker_delay - this is not animation, but value describing length of half blinking loop
  • button_water_temp
  • indicator_oil_temp
  • indicator_position_lights
  • button_lights
  • button_high_beam_lights
  • indicator_aux_lights_front
  • indicator_aux_lights_roof
  • indicator_aux_lights_any
  • button_low_air_psi
  • button_low_oil_psi
  • button_battery_warning
  • button_low_fuel
  • indicator_low_adblue
  • button_jakebrake
  • button_parking_brake
  • button_4way - indicator should be placed on hazard warning button for blinking
  • button_abs
  • button_bbw
  • button_avi
  • indicator_retarder
  • indicator_warning - damage warning indicator
  • indicator_stop - critical damage indicator
  • indicator_axle_lift - lifted axle indicator
  • indicator_cruise_control
  • indicator_generic - animation for other indicator. 0 most of the time, 1 when truck is making electricity check (after turned on).

Dashboards IDs

Screen of dashboard computers uses our UI library and shows thus UI elements. Each element has unique ID and can be used only once (due to caching). Most of fields can be used as two parameter template - value and unit, both are used accordingly to current game options. As in different languages can be units and other texts translated ensure that there are enough space for all of them.

Screen IDs ( ui::group type):

  • 100 to 800 - basic screens, up to 8 screens
  • 900 - warning screen, used when truck is damage and should be repaired, shown alone (without shared screen)
  • 950 - shared screen (used together with all basic screens)

Element IDs (mostly ui::text_common type):

  • 1000 - ambient temperature
  • 1010 - oil temperature
  • 1020 - current speed
  • 1030 - odometer, needs space for at least six digits
  • 1040 - current gear, uses N, D[number], R or R[number] for automatic and N, [number], R or R[number] for maual
  • 1050 - current clock time in proper format, eg. "12:34 pm"
  • 1060 - remaining fuel in tank
  • 1070 - ui::text for fuel bar, the text is cut left-to-right according to current fuel tank state
  • 1075 - ui::text that defines size, orientation and range of fuel bar
  • 1080 - guessed operating range of vehicle
  • 1090 - water temperature
  • 1100 - cruise control speed value
  • 1110 - ui::text for oil pressure bar, the text is cut according to current oil pressure
  • 1115 - ui::text that defines size, orientation and range of oil pressure bar (typical data "H~~0~~116", horizontal range 0psi to 116psi (8bar))
  • 1120 - ui::text for air pressure bar, the text is cut according to current air pressure
  • 1125 - ui::text that defines size, orientation and range of air pressure bar (typical data "H~~0~~174", horizontal range 0psi to 174psi (12bar))
  • 1130 - ui::text for turbo pressure bar, the text is cut according to current oil pressure
  • 1135 - ui::text that defines size, orientation and range of turbo pressure bar (typical data "H~~0~~1", horizontal range 0 to 1)
  • 1140 - ui::text for adblue bar, the text is cut according to current adblue tank state
  • 1145 - ui::text that defines size, orientation and range of adblue bar
  • 1150 - ui::text for water temperature bar, the text is cut according to current water temperature
  • 1155 - ui::text that defines size, orientation and range of water temperature bar (typical data "H~~0~~130", horizontal range 0*C to 130*C)
  • 1160 - instant consumption
  • 1170 - average (trip) consumption
  • 1180 - unused
  • 1185 - unused
  • 1190 - damage warning icon, can be ui::group or ui::text or any other element that could show/hide
  • 1200 - low fuel warning icon, can be ui::group or ui::text or any other element that could show/hide
  • 1210 - trip distance
  • 1220 - compass, displays strings like "N", "E", "SW".
  • 1230 - engine brake icon
  • 1240 - cruise control icon, can be ui::group or ui::text or any other element that could show/hide. Cruise control speed ( 1100) explicitly CAN be child of this group.
  • 1250 - cruise control memory icon, can be ui::group or ui::text or any other element that could show/hide.

Data for bars are entered in format "H~~0~~130", H means the bar is horizontal (or V for vertical), leftmost position represents value 0, rightmost position represents value 130. Empty text defaults to "H~~0~~1".