Vehicle: Wheeled Simulation – Arma Reforger
Lou Montana (talk | contribs) m (Some wiki formatting) |
Lou Montana (talk | contribs) m (Text replacement - "<code>" to "<code style="display: block">") |
||
Line 41: | Line 41: | ||
====== Steering Forward Speed ====== | ====== Steering Forward Speed ====== | ||
| ''pairs of floats'' | | ''pairs of floats'' | ||
| <code>[vehicle speed in km/h, steering speed in °/s]</code> | | <code style="display: block">[vehicle speed in km/h, steering speed in °/s]</code> | ||
| Pairs of velocity and steering speed at the given velocity | | Pairs of velocity and steering speed at the given velocity | ||
|- | |- | ||
Line 47: | Line 47: | ||
====== Steering Backward Speed ====== | ====== Steering Backward Speed ====== | ||
| ''pairs of floats'' | | ''pairs of floats'' | ||
| <code>[vehicle speed in km/h, steering speed in °/s]</code> | | <code style="display: block">[vehicle speed in km/h, steering speed in °/s]</code> | ||
| Pairs of velocity and counter-steering speed (recentering via input) at the given velocity | | Pairs of velocity and counter-steering speed (recentering via input) at the given velocity | ||
|- | |- | ||
Line 53: | Line 53: | ||
====== Steering Center Speed ====== | ====== Steering Center Speed ====== | ||
| ''pairs of floats'' | | ''pairs of floats'' | ||
| <code>[vehicle speed in km/h, centering speed in °/s]</code> | | <code style="display: block">[vehicle speed in km/h, centering speed in °/s]</code> | ||
| Pairs of velocity and recentering speed (when no steering input is given / caster effect) at the given velocity | | Pairs of velocity and recentering speed (when no steering input is given / caster effect) at the given velocity | ||
|} | |} | ||
Line 68: | Line 68: | ||
====== Throttle Curve ====== | ====== Throttle Curve ====== | ||
| ''pairs of floats'' | | ''pairs of floats'' | ||
| <code>[engine rpm, amount of throttle]</code> | | <code style="display: block">[engine rpm, amount of throttle]</code> | ||
| Throttle application with respect to engine's RPM | | Throttle application with respect to engine's RPM | ||
|- | |- | ||
Line 74: | Line 74: | ||
====== Reverse Curve ====== | ====== Reverse Curve ====== | ||
| ''pairs of floats'' | | ''pairs of floats'' | ||
| <code>[engine rpm, amount of throttle]</code> | | <code style="display: block">[engine rpm, amount of throttle]</code> | ||
| Throttle application with respect to engine's RPM while in reverse | | Throttle application with respect to engine's RPM while in reverse | ||
|- | |- | ||
Line 80: | Line 80: | ||
====== Throttle Reaction Time ====== | ====== Throttle Reaction Time ====== | ||
| ''float'' | | ''float'' | ||
| <code>s</code> | | <code style="display: block">s</code> | ||
| Time (in seconds) it takes to get wanted value of throttle - e.g. to interpolate from 0.0 to 1.0 throttle input | | Time (in seconds) it takes to get wanted value of throttle - e.g. to interpolate from 0.0 to 1.0 throttle input | ||
|- | |- | ||
Line 86: | Line 86: | ||
====== Throttle Turbo Time ====== | ====== Throttle Turbo Time ====== | ||
| ''float'' | | ''float'' | ||
| <code>s</code> | | <code style="display: block">s</code> | ||
| Time (in seconds) to reach wanted value of throttle in turbo mode | | Time (in seconds) to reach wanted value of throttle in turbo mode | ||
|- | |- | ||
Line 107: | Line 107: | ||
====== Braking Curve ====== | ====== Braking Curve ====== | ||
| ''pairs of floats'' | | ''pairs of floats'' | ||
| <code>[time in seconds, amount of braking force]</code> | | <code style="display: block">[time in seconds, amount of braking force]</code> | ||
| Brake application over time | | Brake application over time | ||
|- | |- | ||
Line 113: | Line 113: | ||
====== Brake Turbo Time ====== | ====== Brake Turbo Time ====== | ||
| ''float'' | | ''float'' | ||
| <code>s</code> | | <code style="display: block">s</code> | ||
| Time to reach wanted value of brake in turbo mode | | Time to reach wanted value of brake in turbo mode | ||
|} | |} | ||
Line 128: | Line 128: | ||
====== Max Startup Time ====== | ====== Max Startup Time ====== | ||
| ''float'' | | ''float'' | ||
| <code>seconds</code> | | <code style="display: block">seconds</code> | ||
| Failsafe time for the engine to start (it can also bypass animations if it is shorter) | | Failsafe time for the engine to start (it can also bypass animations if it is shorter) | ||
|- | |- | ||
Line 140: | Line 140: | ||
====== Engine Startup Chance ====== | ====== Engine Startup Chance ====== | ||
| ''float'' | | ''float'' | ||
| <code>%</code> | | <code style="display: block">%</code> | ||
| Probability that each startup attempt has to turn on the engine (0 - 100) (should be tied to engine below "damaged" threshold) | | Probability that each startup attempt has to turn on the engine (0 - 100) (should be tied to engine below "damaged" threshold) | ||
|- | |- | ||
Line 146: | Line 146: | ||
====== Air Intakes ====== | ====== Air Intakes ====== | ||
| ''float'' | | ''float'' | ||
| <code>array of PointInfo classes</code> | | <code style="display: block">array of PointInfo classes</code> | ||
| Air intake positions in local vehicle space | | Air intake positions in local vehicle space | ||
|- | |- | ||
Line 152: | Line 152: | ||
====== Drowning Time ====== | ====== Drowning Time ====== | ||
| ''float'' | | ''float'' | ||
| <code>s</code> | | <code style="display: block">s</code> | ||
| Amount of time needed to completely drown the engine when all air intakes are underwater | | Amount of time needed to completely drown the engine when all air intakes are underwater | ||
|- | |- | ||
Line 158: | Line 158: | ||
====== Shutdown Time ====== | ====== Shutdown Time ====== | ||
| ''float'' | | ''float'' | ||
| <code>s</code> | | <code style="display: block">s</code> | ||
| Amount of time (some) vehicle systems automatically toggle off after the shutdown | | Amount of time (some) vehicle systems automatically toggle off after the shutdown | ||
|- | |- | ||
Line 164: | Line 164: | ||
====== Max Lights Time ====== | ====== Max Lights Time ====== | ||
| ''float'' | | ''float'' | ||
| <code>s</code> | | <code style="display: block">s</code> | ||
| Maximum amount of time the light toggle should take (or if there are no animations) | | Maximum amount of time the light toggle should take (or if there are no animations) | ||
|} | |} | ||
Line 179: | Line 179: | ||
====== Clutch Uncouple Time ====== | ====== Clutch Uncouple Time ====== | ||
| ''float'' | | ''float'' | ||
| <code>seconds</code> | | <code style="display: block">seconds</code> | ||
| Time to disengage clutch before switching gears | | Time to disengage clutch before switching gears | ||
|- | |- | ||
Line 185: | Line 185: | ||
====== Clutch Couple Time ====== | ====== Clutch Couple Time ====== | ||
| ''float'' | | ''float'' | ||
| <code>seconds</code> | | <code style="display: block">seconds</code> | ||
| Time to engage clutch after switching gears | | Time to engage clutch after switching gears | ||
|- | |- | ||
Line 191: | Line 191: | ||
====== Clutch Uncouple Rpm ====== | ====== Clutch Uncouple Rpm ====== | ||
| ''float'' | | ''float'' | ||
| <code>RPM</code> | | <code style="display: block">RPM</code> | ||
| Engine RPM at which clutch is fully uncoupled while moving off | | Engine RPM at which clutch is fully uncoupled while moving off | ||
|- | |- | ||
Line 197: | Line 197: | ||
====== Clutch Couple Rpm ====== | ====== Clutch Couple Rpm ====== | ||
| ''float'' | | ''float'' | ||
| <code>RPM</code> | | <code style="display: block">RPM</code> | ||
| Engine RPM at which clutch is fully coupled while moving off | | Engine RPM at which clutch is fully coupled while moving off | ||
|- | |- | ||
Line 242: | Line 242: | ||
====== Latency ====== | ====== Latency ====== | ||
| ''float'' | | ''float'' | ||
| <code>seconds</code> | | <code style="display: block">seconds</code> | ||
| Minimum time between gear switches | | Minimum time between gear switches | ||
|- | |- | ||
Line 254: | Line 254: | ||
====== Up Shift Rpm ====== | ====== Up Shift Rpm ====== | ||
| ''float'' | | ''float'' | ||
| <code>RPM</code> | | <code style="display: block">RPM</code> | ||
| Engine RPM required for upshifting | | Engine RPM required for upshifting | ||
|- | |- | ||
Line 266: | Line 266: | ||
====== Down Shift Rpm ====== | ====== Down Shift Rpm ====== | ||
| ''float'' | | ''float'' | ||
| <code>RPM</code> | | <code style="display: block">RPM</code> | ||
| Engine RPM required for downshifting | | Engine RPM required for downshifting | ||
|- | |- | ||
Line 297: | Line 297: | ||
====== Solver Update Rate ====== | ====== Solver Update Rate ====== | ||
| | | | ||
| <code>Hz</code> | | <code style="display: block">Hz</code> | ||
| Solver update rate in Hz (number of ticks per second) | | Solver update rate in Hz (number of ticks per second) | ||
|} | |} | ||
Line 315: | Line 315: | ||
====== Inertia ====== | ====== Inertia ====== | ||
| ''float'' | | ''float'' | ||
| <code>kg.m<sup>2</sup></code> | | <code style="display: block">kg.m<sup>2</sup></code> | ||
| Moment of inertia | | Moment of inertia | ||
|[[File:armareforger-new-engine-inertia.png|500px]] | |[[File:armareforger-new-engine-inertia.png|500px]] | ||
Line 323: | Line 323: | ||
====== Max Power ====== | ====== Max Power ====== | ||
| ''float'' | | ''float'' | ||
| <code>kW</code> | | <code style="display: block">kW</code> | ||
| Maximum power that the engine can provide | | Maximum power that the engine can provide | ||
| rowspan="9" | | | rowspan="9" | | ||
Line 329: | Line 329: | ||
* [[File:armareforger-vehicle-wheeled-engine-graph.png|500px]] | * [[File:armareforger-vehicle-wheeled-engine-graph.png|500px]] | ||
You can use [https://www.desmos.com/calculator/j63rwoyvnh '''this calculator'''] to visualize RPM curve | You can use [https://www.desmos.com/calculator/j63rwoyvnh '''this calculator'''] to visualize RPM curve | ||
* <code>maxTorqueRPM <= maxPowerRPM < maxRPM</code> | * <code style="display: block">maxTorqueRPM <= maxPowerRPM < maxRPM</code> | ||
* Use <nowiki>https://www.automobile-catalog.com/</nowiki>, <nowiki>https://www.dieselhub.com/</nowiki> and similar sources to check for real torque/power curves of the engines | * Use <nowiki>https://www.automobile-catalog.com/</nowiki>, <nowiki>https://www.dieselhub.com/</nowiki> and similar sources to check for real torque/power curves of the engines | ||
|- | |- | ||
Line 335: | Line 335: | ||
====== Max Torque ====== | ====== Max Torque ====== | ||
| ''float'' | | ''float'' | ||
| <code>Nm</code> | | <code style="display: block">Nm</code> | ||
| Maximum torque that engine can provide (peak torque) | | Maximum torque that engine can provide (peak torque) | ||
|- | |- | ||
Line 341: | Line 341: | ||
====== Rpm Max Power ====== | ====== Rpm Max Power ====== | ||
| ''float'' | | ''float'' | ||
| <code>RPM</code> | | <code style="display: block">RPM</code> | ||
| RPM where engine outputs maximum power | | RPM where engine outputs maximum power | ||
|- | |- | ||
Line 347: | Line 347: | ||
====== Rpm MaxT orque ====== | ====== Rpm MaxT orque ====== | ||
| ''float'' | | ''float'' | ||
| <code>RPM</code> | | <code style="display: block">RPM</code> | ||
| RPM where maximum torque is produced | | RPM where maximum torque is produced | ||
|- | |- | ||
Line 353: | Line 353: | ||
====== Rpm Idle ====== | ====== Rpm Idle ====== | ||
| ''float'' | | ''float'' | ||
| <code>RPM</code> | | <code style="display: block">RPM</code> | ||
| RPM when engine is idling, e.g. in neutral | | RPM when engine is idling, e.g. in neutral | ||
|- | |- | ||
Line 359: | Line 359: | ||
====== Rpm Redline ====== | ====== Rpm Redline ====== | ||
| ''float'' | | ''float'' | ||
| <code>RPM</code> | | <code style="display: block">RPM</code> | ||
| Redline RPM | | Redline RPM | ||
Line 367: | Line 367: | ||
====== Rpm Max ====== | ====== Rpm Max ====== | ||
| ''float'' | | ''float'' | ||
| <code>RPM</code> | | <code style="display: block">RPM</code> | ||
| Maximum RPM | | Maximum RPM | ||
|- | |- | ||
Line 401: | Line 401: | ||
====== Max Clutch Torque ====== | ====== Max Clutch Torque ====== | ||
| ''float'' | | ''float'' | ||
| <code>Nm</code> | | <code style="display: block">Nm</code> | ||
| Maximum torque that clutch can provide. (1.6*MaxTorque can be a good starting point) | | Maximum torque that clutch can provide. (1.6*MaxTorque can be a good starting point) | ||
Line 541: | Line 541: | ||
====== Max Steering Angle ====== | ====== Max Steering Angle ====== | ||
| ''float'' | | ''float'' | ||
| <code>degrees</code> | | <code style="display: block">degrees</code> | ||
| Specifies the maximum steering angle of this axle, if negative value is given, the axis will steer in opposite direction of the steering wheel. | | Specifies the maximum steering angle of this axle, if negative value is given, the axis will steer in opposite direction of the steering wheel. | ||
|- | |- | ||
Line 568: | Line 568: | ||
====== Max Travel Up ====== | ====== Max Travel Up ====== | ||
| ''float'' | | ''float'' | ||
| <code>m</code> | | <code style="display: block">m</code> | ||
| Maximum distance that the suspension can be compressed from modeled position. Standard cars 0.06 - 0.1 m. Off-road cars >0.1 m. | | Maximum distance that the suspension can be compressed from modeled position. Standard cars 0.06 - 0.1 m. Off-road cars >0.1 m. | ||
|- | |- | ||
Line 574: | Line 574: | ||
====== Max Travel Down ====== | ====== Max Travel Down ====== | ||
| ''float'' | | ''float'' | ||
| <code>m</code> | | <code style="display: block">m</code> | ||
| Maximum distance that the suspension can be expanded from modeled position. Standard cars 0.07 - 0.12 m. Off-road cars >0.1 m. | | Maximum distance that the suspension can be expanded from modeled position. Standard cars 0.07 - 0.12 m. Off-road cars >0.1 m. | ||
|} | |} | ||
Line 589: | Line 589: | ||
====== Radius ====== | ====== Radius ====== | ||
| ''float'' | | ''float'' | ||
| <code>m</code> | | <code style="display: block">m</code> | ||
| Radius of the wheel | | Radius of the wheel | ||
|- | |- | ||
Line 601: | Line 601: | ||
====== Mass ====== | ====== Mass ====== | ||
| ''float'' | | ''float'' | ||
| <code>kg</code> | | <code style="display: block">kg</code> | ||
| Mass of the wheel on this axle | | Mass of the wheel on this axle | ||
|- | |- | ||
Line 607: | Line 607: | ||
====== Brake Torque ====== | ====== Brake Torque ====== | ||
| ''float'' | | ''float'' | ||
| <code>Nm</code> | | <code style="display: block">Nm</code> | ||
| Amount of brake torque applied to each wheel on this axle | | Amount of brake torque applied to each wheel on this axle | ||
|} | |} | ||
Line 638: | Line 638: | ||
====== Roughness ====== | ====== Roughness ====== | ||
| ''float'' | | ''float'' | ||
| <code>m</code> | | <code style="display: block">m</code> | ||
| Bumpiness height - how bumpy is the wheel itself (in addition to surface property) | | Bumpiness height - how bumpy is the wheel itself (in addition to surface property) | ||
|- | |- | ||
Line 671: | Line 671: | ||
====== Stiffness ====== | ====== Stiffness ====== | ||
| ''float'' | | ''float'' | ||
| <code>N</code> | | <code style="display: block">N</code> | ||
| Sway bar stiffness ( anti-roll force ) | | Sway bar stiffness ( anti-roll force ) | ||
|} | |} | ||
Line 683: | Line 683: | ||
** Enables manual override of vehicle inertia - the way how to "simulate" mass distribution on the vehicle. | ** Enables manual override of vehicle inertia - the way how to "simulate" mass distribution on the vehicle. | ||
* '''InertiaOverride''' | * '''InertiaOverride''' | ||
** Inertia values around each axis. Copy initial values from diag or via context menu opened on <code>VehicleWheeledSimulation</code> on the Entity instance (you have to ''Apply to prefab'' later) | ** Inertia values around each axis. Copy initial values from diag or via context menu opened on <code style="display: block">VehicleWheeledSimulation</code> on the Entity instance (you have to ''Apply to prefab'' later) | ||
{{Clear}} | {{Clear}} | ||
Line 697: | Line 697: | ||
====== Reference Area ====== | ====== Reference Area ====== | ||
| ''float'' | | ''float'' | ||
| <code>m<sup>2</sup></code> | | <code style="display: block">m<sup>2</sup></code> | ||
| Drag reference area - see following page for more details <nowiki>https://en.wikipedia.org/wiki/Automobile_drag_coefficient#Drag_area</nowiki> | | Drag reference area - see following page for more details <nowiki>https://en.wikipedia.org/wiki/Automobile_drag_coefficient#Drag_area</nowiki> | ||
|- | |- | ||
Line 712: | Line 712: | ||
* <nowiki>http://www.racer.nl/pacejka/pacplay.htm</nowiki> | * <nowiki>http://www.racer.nl/pacejka/pacplay.htm</nowiki> | ||
Fill in initial values via context menu opened on <code>VehicleWheeledSimulation</code> on the Entity instance (you have to ''Apply to prefab'' later) | Fill in initial values via context menu opened on <code style="display: block">VehicleWheeledSimulation</code> on the Entity instance (you have to ''Apply to prefab'' later) | ||
{{Clear}} | {{Clear}} | ||
===== Longitudinal ===== | ===== Longitudinal ===== | ||
Line 729: | Line 729: | ||
| Shape factor | | Shape factor | ||
| | | | ||
| <code>1.4 .. 1.8</code> | | <code style="display: block">1.4 .. 1.8</code> | ||
| <code>1.5</code> | | <code style="display: block">1.5</code> | ||
| General shape of the curve. Defines the amount of falloff after the peak. | | General shape of the curve. Defines the amount of falloff after the peak. | ||
''The Pacejka model defines b0 = 1.65 for the longitudinal force.'' | ''The Pacejka model defines b0 = 1.65 for the longitudinal force.'' | ||
Line 738: | Line 738: | ||
====== b1 ====== | ====== b1 ====== | ||
| Load influence on longitudinal friction coefficient (*1000) | | Load influence on longitudinal friction coefficient (*1000) | ||
| <code>1/kN</code> | | <code style="display: block">1/kN</code> | ||
| <code>-80 .. +80</code> | | <code style="display: block">-80 .. +80</code> | ||
| <code>0</code> | | <code style="display: block">0</code> | ||
| Change of the friction coefficient at the peak. | | Change of the friction coefficient at the peak. | ||
Line 750: | Line 750: | ||
| Longitudinal friction coefficient (*1000) | | Longitudinal friction coefficient (*1000) | ||
| | | | ||
| <code>900 .. 1700</code> | | <code style="display: block">900 .. 1700</code> | ||
| <code>1100</code> | | <code style="display: block">1100</code> | ||
| Friction coefficient at the peak (vertical coordinate) *1000. | | Friction coefficient at the peak (vertical coordinate) *1000. | ||
| ''Load-independent'' | | ''Load-independent'' | ||
Line 758: | Line 758: | ||
====== b3 ====== | ====== b3 ====== | ||
| Curvature factor of stiffness/load | | Curvature factor of stiffness/load | ||
| <code>N/%/kN^2</code> | | <code style="display: block">N/%/kN^2</code> | ||
| <code>-20 .. +20</code> | | <code style="display: block">-20 .. +20</code> | ||
| <code>0</code> | | <code style="display: block">0</code> | ||
| Change of the peak’s horizontal position. | | Change of the peak’s horizontal position. | ||
Line 769: | Line 769: | ||
====== b4 ====== | ====== b4 ====== | ||
| Change of stiffness with slip | | Change of stiffness with slip | ||
| <code>N/%</code> | | <code style="display: block">N/%</code> | ||
| <code>100 .. 500</code> | | <code style="display: block">100 .. 500</code> | ||
| <code>300</code> | | <code style="display: block">300</code> | ||
| Peak’s horizontal position specified as “ascent rate”. | | Peak’s horizontal position specified as “ascent rate”. | ||
| ''Load-independent'' | | ''Load-independent'' | ||
Line 778: | Line 778: | ||
====== b5 ====== | ====== b5 ====== | ||
| Change of progressivity of stiffness/load | | Change of progressivity of stiffness/load | ||
| <code>1/kN</code> | | <code style="display: block">1/kN</code> | ||
| <code>-1 .. +1</code> | | <code style="display: block">-1 .. +1</code> | ||
| <code>0</code> | | <code style="display: block">0</code> | ||
| Lineal change of the peak’s horizontal position. Similar to b3 but more lineal and with reverse effect positive-negative. | | Lineal change of the peak’s horizontal position. Similar to b3 but more lineal and with reverse effect positive-negative. | ||
Line 790: | Line 790: | ||
| Curvature change with load^2 | | Curvature change with load^2 | ||
| | | | ||
| <code>-0.1 .. +0.1</code> | | <code style="display: block">-0.1 .. +0.1</code> | ||
| <code>0</code> | | <code style="display: block">0</code> | ||
| Quadratic change of the curvature at the peak. | | Quadratic change of the curvature at the peak. | ||
Line 801: | Line 801: | ||
| Curvature change with load | | Curvature change with load | ||
| | | | ||
| <code>-1 .. +1</code> | | <code style="display: block">-1 .. +1</code> | ||
| <code>0</code> | | <code style="display: block">0</code> | ||
| Change of the curvature at the peak. Same as b6 but more lineal. | | Change of the curvature at the peak. Same as b6 but more lineal. | ||
Line 812: | Line 812: | ||
| Curvature factor | | Curvature factor | ||
| | | | ||
| <code>-20 .. +1</code> | | <code style="display: block">-20 .. +1</code> | ||
| <code>-2</code> | | <code style="display: block">-2</code> | ||
| Curvature at the peak. The more negative = more “sharp”. Has influence on the falloff afterwards. | | Curvature at the peak. The more negative = more “sharp”. Has influence on the falloff afterwards. | ||
| ''Load-independent'' | | ''Load-independent'' | ||
Line 820: | Line 820: | ||
====== b9 ====== | ====== b9 ====== | ||
| Load influence on horizontal shift | | Load influence on horizontal shift | ||
| <code>%/kN</code> | | <code style="display: block">%/kN</code> | ||
| <code>-1 .. +1</code> | | <code style="display: block">-1 .. +1</code> | ||
| <code>0</code> | | <code style="display: block">0</code> | ||
| Change of the horizontal shift. | | Change of the horizontal shift. | ||
Line 831: | Line 831: | ||
====== b10 ====== | ====== b10 ====== | ||
| Horizontal shift | | Horizontal shift | ||
| <code>%</code> | | <code style="display: block">%</code> | ||
| <code>-5 .. +5</code> | | <code style="display: block">-5 .. +5</code> | ||
| <code>0</code> | | <code style="display: block">0</code> | ||
| Curve’s horizontal shift | | Curve’s horizontal shift | ||
| ''Load-independent'' | | ''Load-independent'' | ||
Line 852: | Line 852: | ||
| Shape factor | | Shape factor | ||
| | | | ||
| <code>1.2 .. 18</code> | | <code style="display: block">1.2 .. 18</code> | ||
| <code>1.4</code> | | <code style="display: block">1.4</code> | ||
| General shape of the curve. Defines the amount of falloff after the peak. | | General shape of the curve. Defines the amount of falloff after the peak. | ||
''The Pacejka model defines a0 = 1.3 for the lateral force.'' | ''The Pacejka model defines a0 = 1.3 for the lateral force.'' | ||
Line 861: | Line 861: | ||
====== a1 ====== | ====== a1 ====== | ||
| Load influence on lateral friction coefficient (*1000) | | Load influence on lateral friction coefficient (*1000) | ||
| <code>1/kN</code> | | <code style="display: block">1/kN</code> | ||
| <code>-80 .. +80</code> | | <code style="display: block">-80 .. +80</code> | ||
| <code>0</code> | | <code style="display: block">0</code> | ||
| Change of the friction coefficient at the peak. | | Change of the friction coefficient at the peak. | ||
Line 873: | Line 873: | ||
| Lateral friction coefficient (*1000) | | Lateral friction coefficient (*1000) | ||
| | | | ||
| <code>900 .. 1700</code> | | <code style="display: block">900 .. 1700</code> | ||
| <code>1100</code> | | <code style="display: block">1100</code> | ||
| Friction coefficient at the peak (vertical coordinate) *1000. | | Friction coefficient at the peak (vertical coordinate) *1000. | ||
| | | | ||
Line 881: | Line 881: | ||
====== a3* ====== | ====== a3* ====== | ||
| Change of stiffness with slip | | Change of stiffness with slip | ||
| <code>N/deg</code> | | <code style="display: block">N/deg</code> | ||
| <code>500 .. 2000</code> | | <code style="display: block">500 .. 2000</code> | ||
| <code>1100</code> | | <code style="display: block">1100</code> | ||
| Peak’s horizontal position at the reference load, specified as “ascent rate”. | | Peak’s horizontal position at the reference load, specified as “ascent rate”. | ||
| | | | ||
Line 890: | Line 890: | ||
====== a4* ====== | ====== a4* ====== | ||
| Change of progressivity of stiffness / load | | Change of progressivity of stiffness / load | ||
| <code>1/kN</code> | | <code style="display: block">1/kN</code> | ||
| <code>0 .. 50</code> | | <code style="display: block">0 .. 50</code> | ||
| <code>10</code> | | <code style="display: block">10</code> | ||
| Change of the peak’s horizontal position with load. Smaller value = bigger change with load. | | Change of the peak’s horizontal position with load. Smaller value = bigger change with load. | ||
| | | | ||
Line 899: | Line 899: | ||
====== a5 ====== | ====== a5 ====== | ||
| Camber influence on stiffness | | Camber influence on stiffness | ||
| <code>%/deg/100</code> | | <code style="display: block">%/deg/100</code> | ||
| <code>-0.1 .. +0.1</code> | | <code style="display: block">-0.1 .. +0.1</code> | ||
| <code>0</code> | | <code style="display: block">0</code> | ||
| Change of the peak’s horizontal position. | | Change of the peak’s horizontal position. | ||
Line 913: | Line 913: | ||
| Curvature change with load | | Curvature change with load | ||
| | | | ||
| <code>-2 .. +2</code> | | <code style="display: block">-2 .. +2</code> | ||
| <code>0</code> | | <code style="display: block">0</code> | ||
| Change of the curvature at the peak. | | Change of the curvature at the peak. | ||
Line 924: | Line 924: | ||
| Curvature factor | | Curvature factor | ||
| | | | ||
| <code>-20 .. +1</code> | | <code style="display: block">-20 .. +1</code> | ||
| <code>-2</code> | | <code style="display: block">-2</code> | ||
| Curvature at the peak. The more negative = more “sharp”. Has influence on the falloff afterwards | | Curvature at the peak. The more negative = more “sharp”. Has influence on the falloff afterwards | ||
| | | | ||
Line 932: | Line 932: | ||
====== a8 ====== | ====== a8 ====== | ||
| Load influence on horizontal shift | | Load influence on horizontal shift | ||
| <code>deg/kN</code> | | <code style="display: block">deg/kN</code> | ||
| <code>-1 .. +1</code> | | <code style="display: block">-1 .. +1</code> | ||
| <code>0</code> | | <code style="display: block">0</code> | ||
| Change of the horizontal shift. | | Change of the horizontal shift. | ||
Line 943: | Line 943: | ||
====== a9 ====== | ====== a9 ====== | ||
| Horizontal shift at load = 0 and camber = 0 | | Horizontal shift at load = 0 and camber = 0 | ||
| <code>deg</code> | | <code style="display: block">deg</code> | ||
| <code>-1 .. +1</code> | | <code style="display: block">-1 .. +1</code> | ||
| <code>0</code> | | <code style="display: block">0</code> | ||
| Curve’s horizontal shift | | Curve’s horizontal shift | ||
| | | | ||
Line 952: | Line 952: | ||
====== a10 ====== | ====== a10 ====== | ||
| Camber influence on horizontal shift | | Camber influence on horizontal shift | ||
| <code>deg/deg</code> | | <code style="display: block">deg/deg</code> | ||
| -0.1 .. +0.1 | | -0.1 .. +0.1 | ||
| 0 | | 0 | ||
Line 963: | Line 963: | ||
====== a11 ====== | ====== a11 ====== | ||
| Vertical shift | | Vertical shift | ||
| <code>N</code> | | <code style="display: block">N</code> | ||
| -200 .. +200 | | -200 .. +200 | ||
| 0 | | 0 | ||
Line 972: | Line 972: | ||
====== a12 ====== | ====== a12 ====== | ||
| Vertical shift at load = 0 | | Vertical shift at load = 0 | ||
| <code>N</code> | | <code style="display: block">N</code> | ||
| -10 .. +10 | | -10 .. +10 | ||
| 0 | | 0 | ||
Line 983: | Line 983: | ||
====== a13 ====== | ====== a13 ====== | ||
| Camber influence on vertical shift, load dependent | | Camber influence on vertical shift, load dependent | ||
| <code>N/deg/kN</code> | | <code style="display: block">N/deg/kN</code> | ||
| -10 .. +10 | | -10 .. +10 | ||
| 0 | | 0 | ||
Line 996: | Line 996: | ||
====== a14 ====== | ====== a14 ====== | ||
| Camber influence on vertical shift | | Camber influence on vertical shift | ||
| <code>N/deg</code> | | <code style="display: block">N/deg</code> | ||
| -15 .. +15 | | -15 .. +15 | ||
| 0 | | 0 |
Latest revision as of 11:52, 11 January 2023
Input (Controller)
SCR_CarControllerComponent
General
Param | Type | Unit | Description |
---|---|---|---|
Type |
Type of gearbox
| ||
Transmission RND |
bool | Transmission have three settings: reverse, neutral and drive |
Steering speed coefficients
The following are properties for smoothing the digital or small range/insensitive analog input (gamepad thumbstick). The setup should be quick and responsive enough while allowing the player to keep a smooth ride (e.g. by tapping the keys), without having to constantly counter compensate.
Param | Type | Unit | Description |
---|---|---|---|
Steering Forward Speed |
pairs of floats | [vehicle speed in km/h, steering speed in °/s]
|
Pairs of velocity and steering speed at the given velocity |
Steering Backward Speed |
pairs of floats | [vehicle speed in km/h, steering speed in °/s]
|
Pairs of velocity and counter-steering speed (recentering via input) at the given velocity |
Steering Center Speed |
pairs of floats | [vehicle speed in km/h, centering speed in °/s]
|
Pairs of velocity and recentering speed (when no steering input is given / caster effect) at the given velocity |
Throttle
Param | Type | Unit | Description |
---|---|---|---|
Throttle Curve |
pairs of floats | [engine rpm, amount of throttle]
|
Throttle application with respect to engine's RPM |
Reverse Curve |
pairs of floats | [engine rpm, amount of throttle]
|
Throttle application with respect to engine's RPM while in reverse |
Throttle Reaction Time |
float | s
|
Time (in seconds) it takes to get wanted value of throttle - e.g. to interpolate from 0.0 to 1.0 throttle input |
Throttle Turbo Time |
float | s
|
Time (in seconds) to reach wanted value of throttle in turbo mode |
Throttle Turbo |
float | Amount of throttle that is reserved for turbo mode. For instance 0.2 means that without turbo, vehicle will be moving with maximum 0.8 throttle |
Brake
Param | Type | Unit | Description |
---|---|---|---|
Braking Curve |
pairs of floats | [time in seconds, amount of braking force]
|
Brake application over time |
Brake Turbo Time |
float | s
|
Time to reach wanted value of brake in turbo mode |
Engine
Param | Type | Unit | Description |
---|---|---|---|
Max Startup Time |
float | seconds
|
Failsafe time for the engine to start (it can also bypass animations if it is shorter) |
Max Startup Attempts |
float | How many times you can be "stuck" in the startup loop animation | |
Engine Startup Chance |
float | %
|
Probability that each startup attempt has to turn on the engine (0 - 100) (should be tied to engine below "damaged" threshold) |
Air Intakes |
float | array of PointInfo classes
|
Air intake positions in local vehicle space |
Drowning Time |
float | s
|
Amount of time needed to completely drown the engine when all air intakes are underwater |
Shutdown Time |
float | s
|
Amount of time (some) vehicle systems automatically toggle off after the shutdown |
Max Lights Time |
float | s
|
Maximum amount of time the light toggle should take (or if there are no animations) |
Clutch
Param | Type | Unit | Description |
---|---|---|---|
Clutch Uncouple Time |
float | seconds
|
Time to disengage clutch before switching gears |
Clutch Couple Time |
float | seconds
|
Time to engage clutch after switching gears |
Clutch Uncouple Rpm |
float | RPM
|
Engine RPM at which clutch is fully uncoupled while moving off |
Clutch Couple Rpm |
float | RPM
|
Engine RPM at which clutch is fully coupled while moving off |
Clutch Uncouple Factor |
float | Clutch uncouple RPM factor while moving off uphill or downhill | |
Clutch Couple Factor |
float | Clutch couple RPM factor while moving off uphill or downhill | |
Clutch Minimum Position |
float | Minimum clutch position while moving off | |
Clutch Minimum Factor |
float | Minimum clutch position factor while moving off uphill or downhill |
Shifting
Param | Type | Unit | Description |
---|---|---|---|
Slope Smoothing |
float | Factor of filter that smooths out upshift and downshift RPMs | |
Latency |
float | seconds
|
Minimum time between gear switches |
Up Shift Factor |
float | Upshift RPM factor while going uphill or downhill | |
Up Shift Rpm |
float | RPM
|
Engine RPM required for upshifting |
Down Shift Factor |
float | Downshift RPM factor while going uphill or downhill | |
Down Shift Rpm |
float | RPM
|
Engine RPM required for downshifting |
Turbo Shift Factor |
float | Upshifting and downshifting RPM ratio in Turbo mode |
Simulation
VehicleWheeledSimulation
General
Param | Type | Unit | Description |
---|---|---|---|
Solver Type |
Solver selector - only V1 solver is available right now | ||
Solver Update Rate |
Hz
|
Solver update rate in Hz (number of ticks per second) |
Engine
Controls engine power and its other properties. All values must be greater than 0 to be accepted as valid.
The engine is simulated as rotating cylinder around its central axis (simplification of crankshaft).
Param | Type | Unit | Description | References |
---|---|---|---|---|
Inertia |
float | kg.m2
|
Moment of inertia |
https://www.researchgate.net/publication/258176892_Evaluation_of_variable_mass_moment_of_inertia_of_the_piston-crank_mechanism_of_an_internal_combustion_engine |
Max Power |
float | kW
|
Maximum power that the engine can provide |
You can use this calculator to visualize RPM curve
|
Max Torque |
float | Nm
|
Maximum torque that engine can provide (peak torque) | |
Rpm Max Power |
float | RPM
|
RPM where engine outputs maximum power | |
Rpm MaxT orque |
float | RPM
|
RPM where maximum torque is produced | |
Rpm Idle |
float | RPM
|
RPM when engine is idling, e.g. in neutral | |
Rpm Redline |
float | RPM
|
Redline RPM
This parameter is currently ignored | |
Rpm Max |
float | RPM
|
Maximum RPM | |
Steepness |
float | Controls how fast engine can reach max torque. It can be used to flatten the torque curve before max torque rpm are reached | ||
Friction |
float | Engine's braking torque | ||
Output |
Powertrain part driven by the engine (clutch) |
Clutch
Param | Type | Unit | Description |
---|---|---|---|
Max Clutch Torque |
float | Nm
|
Maximum torque that clutch can provide. (1.6*MaxTorque can be a good starting point)
This parameter is currently ignored |
Output |
Powertrain part driven by the clutch (gearbox) |
Gearbox
Param | Type | Unit | Description |
---|---|---|---|
Reverse |
float | Reverse gear ratio | |
Forward |
array of floats | Array of forward gear ratios, order of the values are mapped to gears respectively | |
Efficiency |
float | Transmission efficiency - scales the engine output passed down | |
Output |
Powertrain part driven by the gearbox (differential) |
Differentials
Param | Type | Unit | Description |
---|---|---|---|
Type |
Open | Same torque on both outputs, different rotational speeds | |
LSD | Limited slip differential - limiting rotational difference between outputs. Opens Anti slip and Anti slip torque parameters. | ||
Ratio |
float | Differential ratio (sometime "final drive") | |
Strength |
float | Determines the magnitude of the extra force that is applied to the gripping wheel | |
Output0 |
Powertrain parts driven by the differential (other differential or axle differential) | ||
Output1 |
Axles
Param | Type | Unit | Description |
---|---|---|---|
|
float | Defines how much torque is delivered to this axle. Sum of Torque Share for all axles should be equal to 1 | |
Has Handbrake |
bool | Determines whether this axle is used for handbrakes. Handbrake force is same as Brake Torque |
(Axle) Differential
Param | Type | Unit | Description |
---|---|---|---|
<same as differentials> | |||
Output0 |
Driven wheels | ||
Output1 |
Suspension
Accelerating/braking/turning should noticeably shift the weight of the vehicle. Weight shifting affects the grip of the tires - allowing more grip on the side with more weight. Center of mass should be set realistically high and the tendency to roll should be limited by a sway (anti-roll) bar if necesary, not by setting the CoM below the vehicle or just the wheel center.
Param | Type | Unit | Description |
---|---|---|---|
Max Steering Angle |
float | degrees
|
Specifies the maximum steering angle of this axle, if negative value is given, the axis will steer in opposite direction of the steering wheel. |
Spring Rate |
float |
N/mm |
Spring force per mm. |
Compression Damper |
float |
Ns/m |
Compression damper force per 1m/s. |
Relaxation Damper |
float |
Ns/m |
Relaxation damper force per 1m/s. |
Max Travel Up |
float | m
|
Maximum distance that the suspension can be compressed from modeled position. Standard cars 0.06 - 0.1 m. Off-road cars >0.1 m. |
Max Travel Down |
float | m
|
Maximum distance that the suspension can be expanded from modeled position. Standard cars 0.07 - 0.12 m. Off-road cars >0.1 m. |
Wheel
Param | Type | Unit | Description |
---|---|---|---|
Radius |
float | m
|
Radius of the wheel |
Ratio |
float | Wheel reduction ratio | |
Mass |
float | kg
|
Mass of the wheel on this axle |
Brake Torque |
float | Nm
|
Amount of brake torque applied to each wheel on this axle |
Tyre
Param | Type | Unit | Description |
---|---|---|---|
Rolling Resistance |
float | Currently not used in game
Linearly proportional to speed. Acts against the wheel torque. For limiting acceleration. (in addition to surface property) | |
Rolling Drag |
float | Currently not used in game
Proportional to speed squared. For limiting high speeds. (in addition to surface property) | |
Roughness |
float | m
|
Bumpiness height - how bumpy is the wheel itself (in addition to surface property) |
Longitudinal Friction |
float | Directly affects tyre grip in longitudinal direction | |
Lateral Friction |
float | Directly affects tyre grip in lateral direction | |
Tread |
float | Ratio of the "Thread" - related to how well wheel performs on specific surface. |
Swaybar
Param | Type | Unit | Description |
---|---|---|---|
Stiffness |
float | N
|
Sway bar stiffness ( anti-roll force ) |
WheelPositions
Inertia
- InertiaOverrideEnable
- Enables manual override of vehicle inertia - the way how to "simulate" mass distribution on the vehicle.
- InertiaOverride
- Inertia values around each axis. Copy initial values from diag or via context menu opened on
VehicleWheeledSimulation
on the Entity instance (you have to Apply to prefab later)
- Inertia values around each axis. Copy initial values from diag or via context menu opened on
Aerodynamics
Param | Type | Unit | Description |
---|---|---|---|
Reference Area |
float | m2
|
Drag reference area - see following page for more details https://en.wikipedia.org/wiki/Automobile_drag_coefficient#Drag_area |
Drag coefficient |
float | Drag coefficient - see following page for more details https://en.wikipedia.org/wiki/Automobile_drag_coefficient#Typical_drag_coefficients |
Pacejka
- https://www.edy.es/dev/docs/pacejka-94-parameters-explained-a-comprehensive-guide/
- http://www.racer.nl/pacejka/pacplay.htm
Fill in initial values via context menu opened on VehicleWheeledSimulation
on the Entity instance (you have to Apply to prefab later)
Longitudinal
b0
Param | Role | Units | Typical range | Sample | Description | Dependency |
---|---|---|---|---|---|---|
Shape factor | 1.4 .. 1.8
|
1.5
|
General shape of the curve. Defines the amount of falloff after the peak.
The Pacejka model defines b0 = 1.65 for the longitudinal force. |
Load-independent | ||
b1 |
Load influence on longitudinal friction coefficient (*1000) | 1/kN
|
-80 .. +80
|
0
|
Change of the friction coefficient at the peak.
Positive = more friction with more load. Negative = less friction with more load. |
Load-dependent |
b2 |
Longitudinal friction coefficient (*1000) | 900 .. 1700
|
1100
|
Friction coefficient at the peak (vertical coordinate) *1000. | Load-independent | |
b3 |
Curvature factor of stiffness/load | N/%/kN^2
|
-20 .. +20
|
0
|
Change of the peak’s horizontal position.
Positive = increases ascent rate with load (moves to the left). Negative = decreases ascent rate with load (moves to the right). |
Load-dependent |
b4 |
Change of stiffness with slip | N/%
|
100 .. 500
|
300
|
Peak’s horizontal position specified as “ascent rate”. | Load-independent |
b5 |
Change of progressivity of stiffness/load | 1/kN
|
-1 .. +1
|
0
|
Lineal change of the peak’s horizontal position. Similar to b3 but more lineal and with reverse effect positive-negative.
Positive = decreases ascent rate with load. Negative = increases ascent rate with load. |
Load-dependent |
b6 |
Curvature change with load^2 | -0.1 .. +0.1
|
0
|
Quadratic change of the curvature at the peak.
Positive = more flat with load. Negative = sharper with load. |
Load-dependent | |
b7 |
Curvature change with load | -1 .. +1
|
0
|
Change of the curvature at the peak. Same as b6 but more lineal.
Positive = more flat with load. Negative = sharper with load. |
Load-dependent | |
b8 |
Curvature factor | -20 .. +1
|
-2
|
Curvature at the peak. The more negative = more “sharp”. Has influence on the falloff afterwards. | Load-independent | |
b9 |
Load influence on horizontal shift | %/kN
|
-1 .. +1
|
0
|
Change of the horizontal shift.
Positive = shifts to the left with more load. Negative = shifts to the right with more load. |
Load-dependent |
b10 |
Horizontal shift | %
|
-5 .. +5
|
0
|
Curve’s horizontal shift | Load-independent |
Lateral
a0
Param | Role | Units | Typical range | Sample | Description | Dependency |
---|---|---|---|---|---|---|
Shape factor | 1.2 .. 18
|
1.4
|
General shape of the curve. Defines the amount of falloff after the peak.
The Pacejka model defines a0 = 1.3 for the lateral force. |
|||
a1 |
Load influence on lateral friction coefficient (*1000) | 1/kN
|
-80 .. +80
|
0
|
Change of the friction coefficient at the peak.
Positive = more friction with more load. Negative = less friction with more load. |
Load-dependent |
a2 |
Lateral friction coefficient (*1000) | 900 .. 1700
|
1100
|
Friction coefficient at the peak (vertical coordinate) *1000. | ||
a3* |
Change of stiffness with slip | N/deg
|
500 .. 2000
|
1100
|
Peak’s horizontal position at the reference load, specified as “ascent rate”. | |
a4* |
Change of progressivity of stiffness / load | 1/kN
|
0 .. 50
|
10
|
Change of the peak’s horizontal position with load. Smaller value = bigger change with load. | |
a5 |
Camber influence on stiffness | %/deg/100
|
-0.1 .. +0.1
|
0
|
Change of the peak’s horizontal position.
Positive = decreases ascent rate with camber (moves to the right). Negative = increases ascent rate with load (moves to the left). |
Camber-dependent |
a6 |
Curvature change with load | -2 .. +2
|
0
|
Change of the curvature at the peak.
Positive = more flat with load. Negative = sharper with load. |
Load-dependent | |
a7 |
Curvature factor | -20 .. +1
|
-2
|
Curvature at the peak. The more negative = more “sharp”. Has influence on the falloff afterwards | ||
a8 |
Load influence on horizontal shift | deg/kN
|
-1 .. +1
|
0
|
Change of the horizontal shift.
Positive = shifts to the left with more load. Negative = shifts to the right with more load. |
Load-dependent |
a9 |
Horizontal shift at load = 0 and camber = 0 | deg
|
-1 .. +1
|
0
|
Curve’s horizontal shift | |
a10 |
Camber influence on horizontal shift | deg/deg
|
-0.1 .. +0.1 | 0 | Change of the horizontal shift.
Same sign as camber = shifts to the left. Opposite sign as camber = shifts to the right. |
Camber-dependent |
a11 |
Vertical shift | N
|
-200 .. +200 | 0 | Curve’s vertical shift | |
a12 |
Vertical shift at load = 0 | N
|
-10 .. +10 | 0 | Vertical shift when approaching zero load.
Must be verified for coherency at the configured minimum load. |
Load-dependent |
a13 |
Camber influence on vertical shift, load dependent | N/deg/kN
|
-10 .. +10 | 0 | Change of the vertical shift according to camber and load.
Same sign as camber = shifts upwards. Opposite sign as camber = shifts downwards. The more load the more camber effect. |
Camber-dependent |
a14 |
Camber influence on vertical shift | N/deg
|
-15 .. +15 | 0 | Change of the vertical shift.
Same sign as camber = shifts upwards. Opposite sign as camber = shifts downwards. |
Camber-dependent |
* Configure the horizontal behavior with load
Aligning
Param | Role | Units | Typical range | Sample | Description | Dependency |
---|---|---|---|---|---|---|
c0 |
||||||
c1 |
||||||
c2 |
||||||
c3 |
||||||
c4 |
||||||
c5 |
||||||
c6 |
||||||
c7 |
||||||
c8 |
||||||
c9 |
||||||
c10 |
||||||
c11 |
||||||
c12 |
||||||
c13 |
||||||
c14 |
||||||
c15 |
||||||
c16 |
||||||
c17 |
||||||
c18 |
RaycastLayer
- LayerPreset in which the wheel raycast is performed (should be "Vehicle")
RigidBody and Center of Mass
- All vehicles are set to curb weight (assuming dynamic weight could happen at some point in the future)
- Center of Mass plays a crucial role in vehicle handling - it should be high enough to allow for weight shifting and changes in the wheel grip due to the changing pressure.