RigsofRods
Soft-body Physics Simulation
SimData.h
Go to the documentation of this file.
1 /*
2  This source file is part of Rigs of Rods
3  Copyright 2005-2012 Pierre-Michel Ricordel
4  Copyright 2007-2012 Thomas Fischer
5  Copyright 2013-2023 Petr Ohlidal
6 
7  For more information, see http://www.rigsofrods.org/
8 
9  Rigs of Rods is free software: you can redistribute it and/or modify
10  it under the terms of the GNU General Public License version 3, as
11  published by the Free Software Foundation.
12 
13  Rigs of Rods is distributed in the hope that it will be useful,
14  but WITHOUT ANY WARRANTY; without even the implied warranty of
15  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  GNU General Public License for more details.
17 
18  You should have received a copy of the GNU General Public License
19  along with Rigs of Rods. If not, see <http://www.gnu.org/licenses/>.
20 */
21 
29 
30 #pragma once
31 
32 #include "ForwardDeclarations.h"
33 #include "SimConstants.h"
34 #include "BitFlags.h"
35 #include "CmdKeyInertia.h"
36 #include "InputEngine.h"
37 
38 #include <memory>
39 #include <Ogre.h>
40 #include <OgreUTFString.h>
41 #include <rapidjson/document.h>
42 
43 namespace RoR {
44 
46 {
54 };
55 
56 enum class ExtCameraMode
57 {
58  INVALID = -1,
59  CLASSIC = 0,
60  CINECAM = 1,
61  NODE = 2,
62 };
63 
66 
68 {
73 };
74 
76 
79 
80 enum BeamType: short
81 {
85 };
86 
88 
91 
93 {
97 };
98 
99 enum ActorType
100 {
101  // DO NOT MODIFY NUMBERS - serialized into cache file, see RoR::CacheEntry
102 
104  TRUCK = 1,
105  AIRPLANE = 2,
106  BOAT = 3,
107  MACHINE = 4,
108  AI = 5,
109 };
110 
112 
115 
116 enum SpecialBeam: short
117 {
125 };
126 
128 
131 
133 {
138 };
139 
141 {
150 };
151 
153 {
186 };
187 
189 {
199 };
200 
202 
205 
207 {
223 };
224 
226 
229 
231 {
238 };
239 
240 enum class FlareType: char
241 {
242  NONE = 0,
243  // Front lights
244  HEADLIGHT = 'f',
245  HIGH_BEAM = 'h',
246  FOG_LIGHT = 'g',
247  // Rear lighs
248  TAIL_LIGHT = 't',
249  BRAKE_LIGHT = 'b',
250  REVERSE_LIGHT = 'R',
251  // Special lights
252  SIDELIGHT = 's',
253  BLINKER_LEFT = 'l',
254  BLINKER_RIGHT = 'r',
255  USER = 'u',
256  DASHBOARD = 'd'
257 };
258 
261 
263 {
268 };
269 
272 
275 
276 enum class ActorState
277 {
279  NETWORKED_OK,
281  LOCAL_REPLAY,
283  DISPOSED
284 };
285 
286 enum class AeroEngineType
287 {
288  AE_UNKNOWN,
289  AE_XPROP,
290  AE_TURBOJET,
291 };
292 
293 // --------------------------------
294 // Soft body physics
295 
297 struct node_t
298 {
299  static const int8_t INVALID_BBOX = -1;
300 
301  node_t() { memset(this, 0, sizeof(node_t)); nd_coll_bbox_id = INVALID_BBOX; }
302  node_t(size_t _pos) { memset(this, 0, sizeof(node_t)); nd_coll_bbox_id = INVALID_BBOX; pos = static_cast<short>(_pos); }
303 
304  Ogre::Vector3 RelPosition;
305  Ogre::Vector3 AbsPosition;
306  Ogre::Vector3 Velocity;
307  Ogre::Vector3 Forces;
308 
309  Ogre::Real mass;
310  Ogre::Real buoyancy;
311  Ogre::Real friction_coef;
312  Ogre::Real surface_coef;
313  Ogre::Real volume_coef;
314 
316  int16_t nd_coll_bbox_id;
317  int16_t nd_lockgroup;
318 
319  // Bit flags
320  bool nd_cab_node:1;
321  bool nd_rim_node:1;
322  bool nd_tyre_node:1;
323  bool nd_contacter:1;
324  bool nd_contactable:1;
327  bool nd_immovable:1;
328  bool nd_loaded_mass:1;
331  bool nd_under_water:1;
333 
335  Ogre::Vector3 nd_last_collision_slip;
336  Ogre::Vector3 nd_last_collision_force;
338 };
339 
341 struct beam_t
342 {
343  beam_t();
344  ~beam_t();
345 
346  node_t* p1 = nullptr;
347  node_t* p2 = nullptr;
348  float k = 0.f;
349  float d = 0.f;
350  float L = 0.f;
351  float minmaxposnegstress = 0.f;
352  float maxposstress = 0.f;
353  float maxnegstress = 0.f;
354  float strength = 0.f;
355  float stress = 0.f;
356  float plastic_coef = 0.f;
360  bool bm_inter_actor = false;
362  bool bm_disabled = false;
363  bool bm_broken = false;
364 
365  float shortbound = 0.f;
366  float longbound = 0.f;
367  float refL = 0.f;
368 
369  shock_t* shock = nullptr;
370 
371  float initial_beam_strength = 0.f;
372  float default_beam_deform = 0.f;
373 
374  float debug_k = 0.f;
375  float debug_d = 0.f;
376  float debug_v = 0.f;
377 };
378 
379 struct shock_t
380 {
381  shock_t() { memset(this, 0, sizeof(shock_t)); }
382 
383  int beamid;
384  int flags;
385 
392 
393  float springin;
394  float dampin;
395  float springout;
396  float dampout;
397 
398  float sprogin;
399  float dprogin;
400  float sprogout;
401  float dprogout;
402 
403  float splitin;
404  float dslowin;
405  float dfastin;
406  float splitout;
407  float dslowout;
408  float dfastout;
409 
410  float sbd_spring;
411  float sbd_damp;
412 };
413 
415 {
416  int rate; // remaining amount of physics cycles to be skipped
417  int distance; // distance (in physics cycles) to the previous collision check
418 };
419 
421 
423 {
424  soundsource_t();
425  ~soundsource_t();
426 
429  int type;
430 };
431 
432 struct wheel_t
433 {
434  enum class BrakeCombo
435  {
436  NONE,
437  FOOT_HAND,
440  FOOT_ONLY
441  };
442 
444  node_t* wh_nodes[50]; // TODO: remove limit, make this dyn-allocated ~ only_a_ptr, 08/2017
446  node_t* wh_rim_nodes[50]; // TODO: remove limit, make this dyn-allocated ~ only_a_ptr, 08/2017
452  int wh_propulsed; // TODO: add enum ~ only_a_ptr, 08/2017
453  Ogre::Real wh_radius;
454  Ogre::Real wh_rim_radius;
455  Ogre::Real wh_speed;
456  Ogre::Real wh_avg_speed;
457  Ogre::Real wh_alb_coef;
458  Ogre::Real wh_tc_coef;
459  Ogre::Real wh_mass;
460  Ogre::Real wh_torque;
461  Ogre::Real wh_last_torque;
462  Ogre::Real wh_last_retorque;
463  float wh_net_rp;
464  float wh_width;
466 
467  // Debug
468  float debug_rpm;
470  Ogre::Vector3 debug_vel;
471  Ogre::Vector3 debug_slip;
472  Ogre::Vector3 debug_force;
473  Ogre::Vector3 debug_scaled_cforce;
474 };
475 
477 {
480 };
481 
484 
485 struct hook_t
486 {
487  hook_t();
488  ~hook_t();
489 
491  int hk_group = 0;
492  int hk_lockgroup = 0;
493  bool hk_selflock = false;
494  bool hk_autolock = false;
495  bool hk_nodisable = false;
496  float hk_maxforce = 0.f;
497  float hk_lockrange = 0.f;
498  float hk_lockspeed = 0.f;
499  float hk_timer = 0.f;
500  float hk_timer_preset = 0.f;
501  float hk_min_length = 0.f;
502  node_t* hk_hook_node = nullptr;
503  node_t* hk_lock_node = nullptr;
504  beam_t* hk_beam = nullptr;
506 };
507 
508 struct ropable_t
509 {
511  int pos;
512  int group;
515  bool multilock;
516 };
517 
518 struct rope_t
519 {
520  rope_t();
521  ~rope_t();
522 
523  int rp_locked = 0;
524  int rp_group = 0;
525  beam_t* rp_beam = nullptr;
528 };
529 
530 struct tie_t
531 {
532  tie_t();
533  ~tie_t();
534 
536  beam_t* ti_beam = nullptr;
538  int ti_group = 0;
539  float ti_contract_speed = 0.f;
540  float ti_max_stress = 0.f;
541  float ti_min_length = 0.f;
542 
544  bool ti_tied:1;
545  bool ti_tying:1;
546 };
547 
548 struct wing_t
549 {
551  Ogre::SceneNode *cnode;
552 };
553 
555 {
556  commandbeam_state_t() { memset(this, 0, sizeof(commandbeam_state_t)); }
557 
559 
560  // Bit flags
562  bool auto_move_lock:1;
563 };
564 
566 {
567  uint16_t cmb_beam_index;
570  float cmb_speed;
572 
573  // Bit flags
579  bool cmb_is_1press:1;
581 
582  std::shared_ptr<commandbeam_state_t> cmb_state;
583 };
584 
585 struct command_t
586 {
588  float commandValue = 0;
589  float triggerInputValue = 0.f;
590  float playerInputValue = 0.f;
592  std::vector<commandbeam_t> beams;
593  std::vector<int> rotators;
594  Ogre::String description;
597 };
598 
600 {
601  uint16_t hb_beam_index;
603  float hb_speed;
604  int hb_flags;
608 };
609 
610 struct rotator_t
611 {
617  float angle;
618  float rate;
619  float force;
620  float tolerance;
622  float debug_rate;
624 };
625 
626 struct flare_t
627 {
631  float offsetx;
632  float offsety;
633  float offsetz;
634  Ogre::SceneNode *snode;
635  Ogre::BillboardSet *bbs;
636  Ogre::Light *light;
640  float blinkdelay;
643  float size;
644  float intensity;
645  bool uses_inertia = false;
647 };
648 
649 struct exhaust_t
650 {
653  Ogre::SceneNode *smokeNode;
654  Ogre::ParticleSystem* smoker;
655 };
656 
657 
659 {
662  bool active;
663  Ogre::SceneNode *snode;
664  Ogre::ParticleSystem* psys;
665 };
666 
669 {
670  bool eventlock_present = false;
671  bool event_active_prev = false;
672  bool anim_active = false;
674 };
675 
679 {
680 public:
681  command_t& operator[](int index)
682  {
683  if (index >= 0 && index <= MAX_COMMANDS) // for backwards compatibility, we accept 0 as index too.
684  {
685  return m_commandkey[index]; // valid commandkey (indexed 1-MAX_COMMANDS!)
686  }
687  else if (index < 0)
688  {
689  return m_virtualkey[index]; // 'virtual' commandkey - if hashmap value doesn't exist, it's inserted automatically.
690  }
691  else
692  {
693  assert(false);
694  return m_dummykey; // Whatever!
695  }
696  }
697 private:
698  std::array<command_t, MAX_COMMANDS + 1> m_commandkey;
699  std::unordered_map<int, command_t> m_virtualkey;
701 };
702 
704 
705 // --------------------------------
706 // some non-actor structs
707 
710 
713 
714 
716 {
717  bool virt;
718  bool refined;
720  bool camforced;
721  bool enabled;
724  Ogre::Vector3 lo;
725  Ogre::Vector3 hi;
726  Ogre::Vector3 center;
727  Ogre::Quaternion rot;
728  Ogre::Quaternion unrot;
729  Ogre::Vector3 selfcenter;
730  Ogre::Quaternion selfrot;
731  Ogre::Quaternion selfunrot;
732  Ogre::Vector3 relo;
733  Ogre::Vector3 rehi;
734  Ogre::Vector3 campos;
735  Ogre::Vector3 debug_verts[8];
736 };
737 typedef std::vector<collision_box_t*> CollisionBoxPtrVec;
738 
741 {
742  float va;
743  float ms;
744  float mc;
745  float t2;
746  float vs;
747  float alpha;
748  float strength;
749 
752 
757 
758 
761 
762  int fx_type;
763  Ogre::ColourValue fx_colour;
764  char name[256];
765  char basename[256];
766  char particle_name[256];
767 
769 
776 };
777 
780 
782 {
783  int id;
784  Ogre::String type;
785  Ogre::String name;
786  Ogre::String email;
787 };
788 
790 {
793 
794  enum class Origin
795  {
796  UNKNOWN,
797  CONFIG_FILE,
798  TERRN_DEF,
799  USER,
800  SAVEGAME,
801  NETWORK,
802  AI
803  };
804 
806  std::string asr_filename;
807  Ogre::String asr_config;
808  Ogre::Vector3 asr_position = Ogre::Vector3::ZERO;
809  Ogre::Quaternion asr_rotation = Ogre::Quaternion::ZERO;
815  int asr_debugview = 0; //(int)DebugViewType::DEBUGVIEW_NONE;
816  Ogre::UTFString asr_net_username;
817  int asr_net_color = 0;
818  int net_source_id = 0;
819  int net_stream_id = 0;
820  bool asr_free_position = false;
821  bool asr_enter = true;
822  bool asr_terrn_machine = false;
823  std::shared_ptr<rapidjson::Document>
825 };
826 
828 {
831 
832  enum class Type
833  {
834  INVALID,
835  RELOAD,
838  SOFT_RESET,
840  WAKE_UP,
841  };
842 
843  ActorInstanceID_t amr_actor = ACTORINSTANCEID_INVALID;// not ActorPtr because it's not thread-safe
845  std::shared_ptr<rapidjson::Document>
848  std::string amr_addonpart_fname;
849 };
850 
852 {
853  INVALID,
854  HOOK_ACTION,
855  TIE_ACTION,
856  ROPE_ACTION,
858 };
859 
864 {
867  // hookToggle()
868  int alr_hook_group = -1;
871  // tieToggle()
872  int alr_tie_group = -1;
873  // ropeToggle()
874  int alr_rope_group = -1;
875 };
876 
877 } // namespace RoR
RoR::node_t::nd_coll_bbox_id
int16_t nd_coll_bbox_id
Optional attribute (-1 = none) - multiple collision bounding boxes defined in truckfile.
Definition: SimData.h:316
RoR::ActorLinkingRequest::alr_hook_group
int alr_hook_group
Definition: SimData.h:868
RoR::LOCALIZER_NDB
@ LOCALIZER_NDB
Definition: SimData.h:266
RoR::collcab_rate_t::rate
int rate
Definition: SimData.h:416
RoR::ground_model_t::solid_ground_level
float solid_ground_level
how deep the solid ground is
Definition: SimData.h:759
RoR::flare_t::offsety
float offsety
Definition: SimData.h:632
MAX_COMMANDS
static const int MAX_COMMANDS
maximum number of commands per actor
Definition: SimConstants.h:28
RoR::wheel_t::wh_rim_nodes
node_t * wh_rim_nodes[50]
Definition: SimData.h:446
RoR::rope_t::rp_group
int rp_group
Definition: SimData.h:524
RoR::ANIM_FLAG_HEADING
@ ANIM_FLAG_HEADING
Definition: SimData.h:176
RoR::wing_t::fa
FlexAirfoil * fa
Definition: SimData.h:550
RoR::rotator_t::nodes2
NodeNum_t nodes2[4]
Definition: SimData.h:614
RoR::SHOCK_FLAG_SOFTBUMP
@ SHOCK_FLAG_SOFTBUMP
Definition: SimData.h:213
RoR::shock_t::last_debug_state
int last_debug_state
smart debug output
Definition: SimData.h:391
RoR::ground_model_t::fx_particle_max_velo
float fx_particle_max_velo
maximum velocity to display sparks
Definition: SimData.h:771
RoR::ANIM_FLAG_BRUDDER
@ ANIM_FLAG_BRUDDER
Definition: SimData.h:182
RoR::command_t::command_inertia
RoR::CmdKeyInertia command_inertia
Definition: SimData.h:596
RoR::ANIM_FLAG_AILERONS
@ ANIM_FLAG_AILERONS
Definition: SimData.h:180
RoR::node_t::nd_contacter
bool nd_contacter
Attr; User-defined.
Definition: SimData.h:323
RoR::soundsource_t::ssi
SoundScriptInstancePtr ssi
Definition: SimData.h:427
RoR::SHOCK3
@ SHOCK3
shock3
Definition: SimData.h:121
RoR::ActorSpawnRequest::asr_net_color
int asr_net_color
Definition: SimData.h:817
RoR::rotator_t::rate
float rate
Definition: SimData.h:618
RoR::ActorSpawnRequest::asr_free_position
bool asr_free_position
Disables the automatic spawn position adjustment.
Definition: SimData.h:820
RoR::exhaust_t::directionNode
NodeNum_t directionNode
Definition: SimData.h:652
RoR::ANIM_MODE_ROTA_Z
@ ANIM_MODE_ROTA_Z
Definition: SimData.h:192
RoR::commandbeam_t::cmb_is_force_restricted
bool cmb_is_force_restricted
Attribute defined in truckfile.
Definition: SimData.h:575
RoR::ANIM_FLAG_ACCEL
@ ANIM_FLAG_ACCEL
Definition: SimData.h:164
RoR::ActorModifyRequest::Type::WAKE_UP
@ WAKE_UP
RoR::wing_t::cnode
Ogre::SceneNode * cnode
Definition: SimData.h:551
RoR::hook_t::hk_timer
float hk_timer
Definition: SimData.h:499
RoR::shock_t::dslowin
float dslowin
shocks3
Definition: SimData.h:404
RoR::node_t::Velocity
Ogre::Vector3 Velocity
Definition: SimData.h:306
RoR::FlareType::REVERSE_LIGHT
@ REVERSE_LIGHT
ForwardDeclarations.h
Global forward declarations.
RoR::node_t::nd_immovable
bool nd_immovable
Attr; User-defined.
Definition: SimData.h:327
RoR::ActorSpawnRequest::Origin::NETWORK
@ NETWORK
Remote controlled.
RoR::HYDRO_FLAG_DIR
@ HYDRO_FLAG_DIR
Definition: SimData.h:143
RoR::CmdKeyArray::m_commandkey
std::array< command_t, MAX_COMMANDS+1 > m_commandkey
BEWARE: commandkeys are indexed 1-MAX_COMMANDS!
Definition: SimData.h:698
RoR::MACHINE
@ MACHINE
its a machine
Definition: SimData.h:107
RoR::ground_model_t::strength
float strength
ground strength
Definition: SimData.h:748
RoR::CmdKeyArray::m_dummykey
command_t m_dummykey
Definition: SimData.h:700
RoR::flare_t::bbs
Ogre::BillboardSet * bbs
Definition: SimData.h:635
RoR::BeamType
BeamType
Definition: SimData.h:80
RoR::rope_t::rp_beam
beam_t * rp_beam
Definition: SimData.h:525
RoR::FlareType::BLINKER_LEFT
@ BLINKER_LEFT
RoR::shock_t::dprogout
float dprogout
shocks2
Definition: SimData.h:401
RoR::flare_t::size
float size
Definition: SimData.h:643
RoR::TRUCK
@ TRUCK
its a truck (or other land vehicle)
Definition: SimData.h:104
RoR::ropable_t::multilock
bool multilock
Attribute.
Definition: SimData.h:515
RoR::HOOK_TOGGLE
@ HOOK_TOGGLE
Definition: SimData.h:71
RoR::command_t::rotators
std::vector< int > rotators
Definition: SimData.h:593
RoR::node_t::nd_avg_collision_slip
Ogre::Real nd_avg_collision_slip
Physics state; average slip velocity across the last few physics frames.
Definition: SimData.h:334
RoR::node_t::nd_last_collision_gm
ground_model_t * nd_last_collision_gm
Physics state; last collision 'ground model' (surface definition)
Definition: SimData.h:337
RoR::ground_model_t::va
float va
adhesion velocity
Definition: SimData.h:742
RoR::HYDRO_FLAG_REV_AILERON
@ HYDRO_FLAG_REV_AILERON
Definition: SimData.h:147
RoR::SHOCK_FLAG_TRG_BLOCKER_A
@ SHOCK_FLAG_TRG_BLOCKER_A
Definition: SimData.h:218
RoR::HYDRO_FLAG_SPEED
@ HYDRO_FLAG_SPEED
Definition: SimData.h:142
RoR::shock_t::springin
float springin
shocks2 & shocks3
Definition: SimData.h:393
RoR::FlareType::FOG_LIGHT
@ FOG_LIGHT
RoR::soundsource_t::soundsource_t
soundsource_t()
Definition: SimData.cpp:87
RoR::EVENT_AIRPLANE
@ EVENT_AIRPLANE
Definition: SimData.h:51
RoR::ActorSpawnRequest::Origin::CONFIG_FILE
@ CONFIG_FILE
'Preselected vehicle' in RoR.cfg or command line
RoR::ActorSpawnRequest::asr_origin
Origin asr_origin
Definition: SimData.h:814
RoR::FlareType::NONE
@ NONE
RoR::node_t::AbsPosition
Ogre::Vector3 AbsPosition
absolute position in the world (shaky)
Definition: SimData.h:305
RoR::ActorModifyRequest::ActorModifyRequest
ActorModifyRequest()
Definition: SimData.cpp:97
RoR::shock_t::splitin
float splitin
shocks3
Definition: SimData.h:403
RoR::shock_t::trigger_enabled
bool trigger_enabled
general trigger,switch and blocker state
Definition: SimData.h:386
RoR::flare_t::dashboard_link
int dashboard_link
Only 'd' type flares, valid values are DD_*.
Definition: SimData.h:639
RoR::MOUSE_HOOK_TOGGLE
@ MOUSE_HOOK_TOGGLE
Definition: SimData.h:72
RoR::wheel_t::wh_nodes
node_t * wh_nodes[50]
Definition: SimData.h:444
RoR::ActorLinkingRequest
Estabilishing a physics linkage between 2 actors modifies a global linkage table and triggers immedia...
Definition: SimData.h:863
RoR::collision_box_t::virt
bool virt
Definition: SimData.h:717
RoR::beam_t::p1
node_t * p1
Definition: SimData.h:346
RoR::ANIM_FLAG_ELEVATORS
@ ANIM_FLAG_ELEVATORS
Definition: SimData.h:185
RoR::collision_box_t::enabled
bool enabled
Definition: SimData.h:721
RoR::HydroFlags
HydroFlags
Definition: SimData.h:140
RoR::ANIM_MODE_ROTA_X
@ ANIM_MODE_ROTA_X
Definition: SimData.h:190
RoR::CollisionEventFilter
CollisionEventFilter
Definition: SimData.h:45
RoR::node_t::nd_under_water
bool nd_under_water
State; GFX hint.
Definition: SimData.h:331
RoR::shock_t::sprogin
float sprogin
shocks2
Definition: SimData.h:398
RoR::HOOK_UNLOCK
@ HOOK_UNLOCK
Definition: SimData.h:70
RoR::node_t::surface_coef
Ogre::Real surface_coef
Definition: SimData.h:312
RoR::exhaust_t::smoker
Ogre::ParticleSystem * smoker
Definition: SimData.h:654
RoR::hydrobeam_t::hb_ref_length
float hb_ref_length
Idle length in meters.
Definition: SimData.h:602
RoR::wheel_t::debug_torque
float debug_torque
Definition: SimData.h:469
RoR::wheel_t::wh_num_nodes
int wh_num_nodes
Definition: SimData.h:443
RoR::NODENUM_INVALID
static const NodeNum_t NODENUM_INVALID
Definition: ForwardDeclarations.h:53
RoR::ActorState::LOCAL_REPLAY
@ LOCAL_REPLAY
RoR::node_t::nd_contactable
bool nd_contactable
Attr; This node will be treated as contacter on inter truck collisions.
Definition: SimData.h:324
RoR::cparticle_t::snode
Ogre::SceneNode * snode
Definition: SimData.h:663
RoR::node_t::INVALID_BBOX
static const int8_t INVALID_BBOX
Definition: SimData.h:299
RoR::tie_t::ti_locked_actor
ActorPtr ti_locked_actor
Definition: SimData.h:535
RoR::collision_box_t::lo
Ogre::Vector3 lo
absolute collision box
Definition: SimData.h:724
RoR::flare_t::blinkdelay_state
bool blinkdelay_state
Definition: SimData.h:642
RoR::node_t::nd_override_mass
bool nd_override_mass
User defined attr; mass is user-specified rather than calculated (override the calculation)
Definition: SimData.h:330
RoR::ActorModifyRequest::~ActorModifyRequest
~ActorModifyRequest()
Definition: SimData.cpp:102
RoR::wheel_t
Definition: SimData.h:432
RoR::NOSHOCK
@ NOSHOCK
not a shock
Definition: SimData.h:118
RoR::hook_t::hk_lock_node
node_t * hk_lock_node
Definition: SimData.h:503
RoR::soundsource_t::type
int type
Definition: SimData.h:429
RoR::wheel_t::wh_num_rim_nodes
int wh_num_rim_nodes
Definition: SimData.h:445
RoR::ShockFlags
ShockFlags
Definition: SimData.h:206
RoR::BEAM_NORMAL
@ BEAM_NORMAL
Definition: SimData.h:82
RoR::ActorState::DISPOSED
@ DISPOSED
removed from simulation, still in memory to satisfy pointers.
RoR::soundsource_t::nodenum
NodeNum_t nodenum
Definition: SimData.h:428
RoR::ANIM_FLAG_BTHROTTLE
@ ANIM_FLAG_BTHROTTLE
Definition: SimData.h:183
RoR::soundsource_t::~soundsource_t
~soundsource_t()
Definition: SimData.cpp:92
RoR::SpecialBeam
SpecialBeam
Definition: SimData.h:116
RoR::ActorLinkingRequest::alr_type
ActorLinkingRequestType alr_type
Definition: SimData.h:866
RoR::flare_t::uses_inertia
bool uses_inertia
Only 'flares3'.
Definition: SimData.h:645
RoR::ANIM_FLAG_ALTIMETER
@ ANIM_FLAG_ALTIMETER
Definition: SimData.h:156
RoR::ground_model_t::fx_particle_fade
float fx_particle_fade
fade coefficient
Definition: SimData.h:772
RoR::CmdKeyArray::operator[]
command_t & operator[](int index)
Definition: SimData.h:681
SimConstants.h
RoR::ropable_t::attached_ropes
int attached_ropes
State.
Definition: SimData.h:514
RoR::hook_t::hk_beam
beam_t * hk_beam
Definition: SimData.h:504
RoR::ropable_t::pos
int pos
Index into ar_ropables.
Definition: SimData.h:511
RoR::commandbeam_t::cmb_engine_coupling
float cmb_engine_coupling
Attr from truckfile.
Definition: SimData.h:568
RoR::ActorModifyRequest::Type::RESTORE_SAVED
@ RESTORE_SAVED
RoR::beam_t::strength
float strength
Definition: SimData.h:354
RoR::FlareType::USER
@ USER
RoR::AeroEngineType::AE_TURBOJET
@ AE_TURBOJET
RoR::shock_t::trigger_boundary_t
float trigger_boundary_t
optional value to tune trigger_switch_state autorelease
Definition: SimData.h:388
RoR::ANIM_FLAG_AOA
@ ANIM_FLAG_AOA
Definition: SimData.h:157
RoR::command_t::trigger_cmdkeyblock_state
bool trigger_cmdkeyblock_state
identifies blocked F-commands for triggers
Definition: SimData.h:591
RoR::flare_t::fl_type
FlareType fl_type
Definition: SimData.h:637
RoR::SHOCK_FLAG_NORMAL
@ SHOCK_FLAG_NORMAL
Definition: SimData.h:208
RoR::FlareType::SIDELIGHT
@ SIDELIGHT
RoR::hook_t::hook_t
hook_t()
Definition: SimData.cpp:77
RoR::LOCALIZER_VERTICAL
@ LOCALIZER_VERTICAL
Definition: SimData.h:264
RoR::collision_box_t::eventsourcenum
short eventsourcenum
Definition: SimData.h:723
RoR::collision_box_t::hi
Ogre::Vector3 hi
absolute collision box
Definition: SimData.h:725
RoR::ANIM_MODE_AUTOANIMATE
@ ANIM_MODE_AUTOANIMATE
Definition: SimData.h:196
RoR::EVENT_BOAT
@ EVENT_BOAT
Definition: SimData.h:52
RoR::FlareType::HEADLIGHT
@ HEADLIGHT
RoR::beam_t::bm_locked_actor
ActorPtr bm_locked_actor
in case p2 is on another actor
Definition: SimData.h:361
RoR::rotator_t::axis2
NodeNum_t axis2
Definition: SimData.h:616
RoR::CollisionBoxPtrVec
std::vector< collision_box_t * > CollisionBoxPtrVec
Definition: SimData.h:737
RoR::FlareType::BLINKER_RIGHT
@ BLINKER_RIGHT
RoR::PropAnimKeyState
User input state for animated props with 'source:event'.
Definition: SimData.h:668
RoR::LOCKED
@ LOCKED
lock locked.
Definition: SimData.h:96
RoR::hook_t::hk_min_length
float hk_min_length
Absolute value in meters.
Definition: SimData.h:501
RoR::exhaust_t
Definition: SimData.h:649
RoR::EVENT_AVATAR
@ EVENT_AVATAR
Definition: SimData.h:49
RoR::ANIM_MODE_ROTA_Y
@ ANIM_MODE_ROTA_Y
Definition: SimData.h:191
RoR::shock_t::dampout
float dampout
shocks2 & shocks3
Definition: SimData.h:396
RoR::rotator_t::axis1
NodeNum_t axis1
rot axis
Definition: SimData.h:615
RoR::ActorSpawnRequest::asr_working_tuneup
TuneupDefPtr asr_working_tuneup
Only filled when editing tuneup via Tuning menu.
Definition: SimData.h:813
RoR::authorinfo_t
Definition: SimData.h:781
RoR::FlareType
FlareType
Definition: SimData.h:240
RoR::flare_t::nodey
NodeNum_t nodey
Definition: SimData.h:630
RoR::wheel_t::wh_mass
Ogre::Real wh_mass
Total rotational mass of the wheel.
Definition: SimData.h:459
RoR::ANIM_FLAG_SPEEDO
@ ANIM_FLAG_SPEEDO
Definition: SimData.h:168
RoR::SimpleInertia
Designed to be run on main/rendering loop (FPS)
Definition: CmdKeyInertia.h:66
RoR::ground_model_t::alpha
float alpha
steady-steady
Definition: SimData.h:747
RoR::AnimFlags
AnimFlags
Definition: SimData.h:152
RoR::ANIM_FLAG_EVENT
@ ANIM_FLAG_EVENT
Definition: SimData.h:179
RoR::tie_t::ti_tying
bool ti_tying
State.
Definition: SimData.h:545
RoR::collision_box_t::selfrotated
bool selfrotated
Definition: SimData.h:719
RoR::hook_t
Definition: SimData.h:485
RoR::ActorState::LOCAL_SIMULATED
@ LOCAL_SIMULATED
simulated (local) actor
BITMASK
#define BITMASK(OFFSET)
Definition: BitFlags.h:10
RoR::ActorSpawnRequest::asr_filename
std::string asr_filename
Definition: SimData.h:806
RoR::node_t::RelPosition
Ogre::Vector3 RelPosition
relative to the local physics origin (one origin per actor) (shaky)
Definition: SimData.h:304
RoR::NOT_DRIVEABLE
@ NOT_DRIVEABLE
not drivable at all
Definition: SimData.h:103
RoR::ground_model_t::fx_particle_velo_factor
float fx_particle_velo_factor
velocity factor
Definition: SimData.h:774
RoR::FlareType::TAIL_LIGHT
@ TAIL_LIGHT
RoR::commandbeam_t::cmb_state
std::shared_ptr< commandbeam_state_t > cmb_state
Definition: SimData.h:582
RoR::commandbeam_state_t::auto_moving_mode
int8_t auto_moving_mode
State.
Definition: SimData.h:558
RoR::hook_t::hk_timer_preset
float hk_timer_preset
Definition: SimData.h:500
RoR::collision_box_t
Definition: SimData.h:715
RefCountingObjectPtr< Actor >
RoR::collision_box_t::unrot
Ogre::Quaternion unrot
rotation
Definition: SimData.h:728
RoR::ANIM_FLAG_TORQUE
@ ANIM_FLAG_TORQUE
Definition: SimData.h:175
RoR::ActorSpawnRequest::Origin::SAVEGAME
@ SAVEGAME
User spawned and part of a savegame.
RoR::ground_model_t::fx_particle_amount
int fx_particle_amount
amount of particles
Definition: SimData.h:768
RoR::flare_t::offsetz
float offsetz
Definition: SimData.h:633
RoR::shock_t::dprogin
float dprogin
shocks2
Definition: SimData.h:399
RoR::EVENT_TRUCK
@ EVENT_TRUCK
Definition: SimData.h:50
RoR::wheel_t::wh_alb_coef
Ogre::Real wh_alb_coef
Sim state; Current anti-lock brake modulation ratio.
Definition: SimData.h:457
RoR::ground_model_t::mc
float mc
sliding friction coefficient
Definition: SimData.h:744
RoR::beam_t::stress
float stress
Definition: SimData.h:355
RoR::collision_box_t::center
Ogre::Vector3 center
center of rotation
Definition: SimData.h:726
RoR::hydrobeam_t::hb_anim_flags
int hb_anim_flags
Animators (beams updating length based on simulation variables)
Definition: SimData.h:605
RoR::TRG_ENGINE_ACC
@ TRG_ENGINE_ACC
Definition: SimData.h:234
RoR::tie_t::ti_group
int ti_group
Definition: SimData.h:538
RoR::collcab_rate_t
Definition: SimData.h:414
RoR::ground_model_t::vs
float vs
stribeck velocity (m/s)
Definition: SimData.h:746
RoR::ActorSpawnRequest
Definition: SimData.h:789
RoR::collcab_rate_t::distance
int distance
Definition: SimData.h:417
RoR::beam_t::refL
float refL
reference length
Definition: SimData.h:367
RoR::beam_t::initial_beam_strength
float initial_beam_strength
for reset
Definition: SimData.h:371
RoR::ANIM_FLAG_RPM
@ ANIM_FLAG_RPM
Definition: SimData.h:163
RoR::tie_t::ti_tied
bool ti_tied
State.
Definition: SimData.h:544
RoR::ropable_t::node
node_t * node
Definition: SimData.h:510
RoR::ANIM_FLAG_PERMANENT
@ ANIM_FLAG_PERMANENT
Definition: SimData.h:184
RoR::HYDRO_FLAG_REV_RUDDER
@ HYDRO_FLAG_REV_RUDDER
Definition: SimData.h:148
RoR::wheel_t::BrakeCombo::FOOT_HAND_SKID_LEFT
@ FOOT_HAND_SKID_LEFT
RoR::cparticle_t::directionNode
NodeNum_t directionNode
Definition: SimData.h:661
RoR::ROPE
@ ROPE
Definition: SimData.h:124
RoR::CmdKeyArray::m_virtualkey
std::unordered_map< int, command_t > m_virtualkey
Negative-indexed commandkeys.
Definition: SimData.h:699
RoR::ActorModifyRequest::amr_actor
ActorInstanceID_t amr_actor
Definition: SimData.h:843
RoR::wheel_t::wh_last_retorque
Ogre::Real wh_last_retorque
Last external forces (friction, ...)
Definition: SimData.h:462
RoR::ActorModifyRequest::Type::RESET_ON_INIT_POS
@ RESET_ON_INIT_POS
RoR::SHOCK_FLAG_LACTIVE
@ SHOCK_FLAG_LACTIVE
Definition: SimData.h:209
RoR::wheel_t::wh_propulsed
int wh_propulsed
Definition: SimData.h:452
RoR::ActorLinkingRequest::alr_hook_action
HookAction alr_hook_action
Definition: SimData.h:869
RoR::ExtCameraMode::CINECAM
@ CINECAM
RoR::collision_box_t::event_filter
CollisionEventFilter event_filter
Definition: SimData.h:722
RoR::ActorSpawnRequest::asr_config
Ogre::String asr_config
Definition: SimData.h:807
RoR::wheel_t::debug_force
Ogre::Vector3 debug_force
Definition: SimData.h:472
RoR::ANIM_MODE_BOUNCE
@ ANIM_MODE_BOUNCE
Definition: SimData.h:198
RoR::beam_t
Simulation: An edge in the softbody structure.
Definition: SimData.h:341
RoR::command_t::triggerInputValue
float triggerInputValue
Definition: SimData.h:589
RoR::PRELOCK
@ PRELOCK
prelocking, attraction forces in action
Definition: SimData.h:95
RoR::PropAnimKeyState::event_id
events event_id
Definition: SimData.h:673
RoR::SHOCK_FLAG_TRG_HOOK_LOCK
@ SHOCK_FLAG_TRG_HOOK_LOCK
Definition: SimData.h:220
RoR::wheel_t::debug_slip
Ogre::Vector3 debug_slip
Definition: SimData.h:471
RoR::shock_t::dfastin
float dfastin
shocks3
Definition: SimData.h:405
RoR::EV_MODE_LAST
@ EV_MODE_LAST
Definition: InputEngine.h:404
RoR::collision_box_t::rehi
Ogre::Vector3 rehi
relative collision box
Definition: SimData.h:733
RoR::FlareType::DASHBOARD
@ DASHBOARD
RoR::EVENT_DELETE
@ EVENT_DELETE
Definition: SimData.h:53
RoR::exhaust_t::emitterNode
NodeNum_t emitterNode
Definition: SimData.h:651
RoR::ActorInstanceID_t
int ActorInstanceID_t
Unique sequentially generated ID of an actor in session. Use ActorManager::GetActorById()
Definition: ForwardDeclarations.h:37
RoR::ropable_t::attached_ties
int attached_ties
State.
Definition: SimData.h:513
RoR::wheel_t::wh_torque
Ogre::Real wh_torque
Internal physics state; Do not read from this.
Definition: SimData.h:460
RoR::rope_t::rp_locked_ropable
ropable_t * rp_locked_ropable
Definition: SimData.h:526
RoR::FlareType::BRAKE_LIGHT
@ BRAKE_LIGHT
RoR::wheel_t::wh_width
float wh_width
Definition: SimData.h:464
CmdKeyInertia.h
RoR::commandbeam_t::cmb_is_contraction
bool cmb_is_contraction
Attribute defined at spawn.
Definition: SimData.h:574
BitFlags.h
Bit operations.
RoR::NodeNum_t
uint16_t NodeNum_t
Node position within Actor::ar_nodes; use RoR::NODENUM_INVALID as empty value.
Definition: ForwardDeclarations.h:52
RoR::wheel_t::BrakeCombo::FOOT_ONLY
@ FOOT_ONLY
RoR::UNLOCKED
@ UNLOCKED
lock not locked
Definition: SimData.h:94
RoR::HYDRO_FLAG_AILERON
@ HYDRO_FLAG_AILERON
Definition: SimData.h:144
RoR::wheel_t::wh_rim_radius
Ogre::Real wh_rim_radius
Definition: SimData.h:454
RoR::hook_t::hk_locked
HookState hk_locked
Definition: SimData.h:490
RoR::HOOK_LOCK
@ HOOK_LOCK
Definition: SimData.h:69
RoR::ActorLinkingRequestType::TIE_ACTION
@ TIE_ACTION
RoR::rotator_t::engine_coupling
float engine_coupling
Definition: SimData.h:621
DEFAULT_DETACHER_GROUP
static const int DEFAULT_DETACHER_GROUP
Definition: SimConstants.h:79
RoR::beam_t::bounded
SpecialBeam bounded
Definition: SimData.h:358
RoR::tie_t::ti_min_length
float ti_min_length
Proportional to orig; length.
Definition: SimData.h:541
RoR::tie_t::ti_contract_speed
float ti_contract_speed
Definition: SimData.h:539
RoR::beam_t::d
float d
damping factor
Definition: SimData.h:349
RoR::rotator_t::debug_aerror
float debug_aerror
Definition: SimData.h:623
RoR::ActorModifyRequest
Definition: SimData.h:827
RoR::ExtCameraMode
ExtCameraMode
Definition: SimData.h:56
RoR::authorinfo_t::name
Ogre::String name
Definition: SimData.h:785
RoR::ground_model_t::fx_particle_ttl
float fx_particle_ttl
Definition: SimData.h:775
RoR::shock_t::sbd_damp
float sbd_damp
set beam default for damping
Definition: SimData.h:411
RoR::commandbeam_state_t
Definition: SimData.h:554
RoR::collision_box_t::selfcenter
Ogre::Vector3 selfcenter
center of self rotation
Definition: SimData.h:729
RoR::shock_t::trigger_cmdshort
int trigger_cmdshort
F-key for trigger injection shortbound-check.
Definition: SimData.h:390
RoR::collision_box_t::relo
Ogre::Vector3 relo
relative collision box
Definition: SimData.h:732
RoR::commandbeam_t::cmb_center_length
float cmb_center_length
Attr computed at spawn.
Definition: SimData.h:569
RoR::commandbeam_t::cmb_needs_engine
bool cmb_needs_engine
Attribute defined in truckfile.
Definition: SimData.h:576
RoR::ActorSpawnRequest::asr_tuneup_entry
CacheEntryPtr asr_tuneup_entry
Only filled when user selected a saved/downloaded .tuneup mod in SelectorUI.
Definition: SimData.h:812
RoR::rotator_t::needs_engine
bool needs_engine
Definition: SimData.h:612
RoR::shock_t::beamid
int beamid
Definition: SimData.h:383
RoR::ANIM_FLAG_CLUTCH
@ ANIM_FLAG_CLUTCH
Definition: SimData.h:166
RoR::shock_t::shock_t
shock_t()
Definition: SimData.h:381
RoR::ActorLinkingRequestType::INVALID
@ INVALID
RoR::hook_t::hk_autolock
bool hk_autolock
Definition: SimData.h:494
RoR::ACTORINSTANCEID_INVALID
static const ActorInstanceID_t ACTORINSTANCEID_INVALID
Definition: ForwardDeclarations.h:38
RoR::hook_t::hk_selflock
bool hk_selflock
Definition: SimData.h:493
RoR::ActorSpawnRequest::asr_cache_entry
CacheEntryPtr asr_cache_entry
Optional, overrides 'asr_filename' and 'asr_cache_entry_num'.
Definition: SimData.h:805
RoR::wheel_t::wh_axis_node_1
node_t * wh_axis_node_1
Definition: SimData.h:451
RoR::AeroEngineType
AeroEngineType
Definition: SimData.h:286
RoR::ActorLinkingRequestType::ROPE_ACTION
@ ROPE_ACTION
RoR::hydrobeam_t::hb_inertia
RoR::CmdKeyInertia hb_inertia
Definition: SimData.h:607
RoR::flare_t::nodex
NodeNum_t nodex
Definition: SimData.h:629
RoR::cparticle_t::active
bool active
Definition: SimData.h:662
RoR::shock_t::trigger_switch_state
float trigger_switch_state
needed to avoid doubleswitch, bool and timer in one
Definition: SimData.h:387
RoR::hydrobeam_t
Definition: SimData.h:599
RoR::ActorLinkingRequestType::HOOK_ACTION
@ HOOK_ACTION
RoR::ANIM_FLAG_FLAP
@ ANIM_FLAG_FLAP
Definition: SimData.h:158
RoR::tie_t::ti_max_stress
float ti_max_stress
Definition: SimData.h:540
RoR::HookAction
HookAction
Definition: SimData.h:67
RoR::wheel_t::BrakeCombo::FOOT_HAND_SKID_RIGHT
@ FOOT_HAND_SKID_RIGHT
RoR::ActorState::LOCAL_SLEEPING
@ LOCAL_SLEEPING
sleeping (local) actor
RoR::node_t::nd_cab_node
bool nd_cab_node
Attr; This node is part of collision triangle.
Definition: SimData.h:320
RoR::commandbeam_t::cmb_speed
float cmb_speed
Attr; Rate of contraction/extension.
Definition: SimData.h:570
RoR::BEAM_VIRTUAL
@ BEAM_VIRTUAL
Excluded from mass calculations, visuals permanently disabled.
Definition: SimData.h:84
RoR::node_t::nd_no_mouse_grab
bool nd_no_mouse_grab
Attr; User-defined.
Definition: SimData.h:332
RoR::ActorLinkingRequestType
ActorLinkingRequestType
Definition: SimData.h:851
RoR::node_t::node_t
node_t()
Definition: SimData.h:301
RoR::shock_t::trigger_cmdlong
int trigger_cmdlong
F-key for trigger injection longbound-check.
Definition: SimData.h:389
RoR::LOCALIZER_VOR
@ LOCALIZER_VOR
Definition: SimData.h:267
RoR::wheel_t::wh_net_rp
float wh_net_rp
Definition: SimData.h:463
RoR::ExtCameraMode::NODE
@ NODE
RoR::node_t::pos
NodeNum_t pos
This node's index in Actor::ar_nodes array.
Definition: SimData.h:315
RoR::node_t::nd_tyre_node
bool nd_tyre_node
Attr; This node is part of a tyre.
Definition: SimData.h:322
RoR::ActorModifyRequest::amr_addonpart_fname
std::string amr_addonpart_fname
Fallback method in case CacheEntry doesn't exist anymore - that means mod was uninstalled in the mean...
Definition: SimData.h:848
RoR::BLINK_RIGHT
@ BLINK_RIGHT
Definition: SimData.h:136
RoR::collision_box_t::refined
bool refined
Definition: SimData.h:718
RoR::ANIM_FLAG_VVI
@ ANIM_FLAG_VVI
Definition: SimData.h:155
RoR::BLINK_WARN
@ BLINK_WARN
Definition: SimData.h:137
RoR::beam_t::debug_k
float debug_k
debug shock spring_rate
Definition: SimData.h:374
RoR::shock_t::splitout
float splitout
shocks3
Definition: SimData.h:406
RoR::wheeldetacher_t::wd_detacher_group
int wd_detacher_group
Definition: SimData.h:479
RoR::HookState
HookState
Definition: SimData.h:92
RoR::command_t
Definition: SimData.h:585
RoR::flare_t::intensity
float intensity
Definition: SimData.h:644
RoR::command_t::rotator_inertia
RoR::CmdKeyInertia rotator_inertia
Definition: SimData.h:595
RoR::wheel_t::wh_near_attach_node
node_t * wh_near_attach_node
Definition: SimData.h:449
RoR::ActorLinkingRequest::alr_rope_group
int alr_rope_group
Definition: SimData.h:874
RoR::AeroEngineType::AE_UNKNOWN
@ AE_UNKNOWN
RoR::ANIM_FLAG_AESTATUS
@ ANIM_FLAG_AESTATUS
Definition: SimData.h:174
RoR::SHOCK2
@ SHOCK2
shock2
Definition: SimData.h:120
RoR::hook_t::hk_nodisable
bool hk_nodisable
Definition: SimData.h:495
RoR::node_t::nd_loaded_mass
bool nd_loaded_mass
User defined attr; mass is calculated from 'globals/loaded-mass' rather than 'globals/dry-mass'.
Definition: SimData.h:328
RoR::ground_model_t::fx_type
int fx_type
Definition: SimData.h:762
RoR::node_t::nd_last_collision_force
Ogre::Vector3 nd_last_collision_force
Physics state; last collision force.
Definition: SimData.h:336
RoR::SHOCK_FLAG_TRG_CONTINUOUS
@ SHOCK_FLAG_TRG_CONTINUOUS
Definition: SimData.h:221
RoR::command_t::description
Ogre::String description
Definition: SimData.h:594
RoR::node_t
Physics: A vertex in the softbody structure.
Definition: SimData.h:297
RoR::commandbeam_t::cmb_boundary_length
float cmb_boundary_length
Attr; Maximum/minimum length proportional to orig. len.
Definition: SimData.h:571
RoR::EVENT_NONE
@ EVENT_NONE
Definition: SimData.h:47
RoR::hook_t::hk_maxforce
float hk_maxforce
Definition: SimData.h:496
RoR::collision_box_t::camforced
bool camforced
Definition: SimData.h:720
RoR::ground_model_t::name
char name[256]
Definition: SimData.h:764
RoR::rotator_t::debug_rate
float debug_rate
Definition: SimData.h:622
RoR::node_t::friction_coef
Ogre::Real friction_coef
Definition: SimData.h:311
RoR::wheel_t::BrakeCombo
BrakeCombo
Wheels are braked by three mechanisms: A footbrake, a handbrake/parkingbrake, and directional brakes ...
Definition: SimData.h:434
RoR::shock_t::springout
float springout
shocks2 & shocks3
Definition: SimData.h:395
RoR::shock_t::sprogout
float sprogout
shocks2
Definition: SimData.h:400
RoR::CmdKeyInertia
Designed to be run in physics loop (2khz)
Definition: CmdKeyInertia.h:45
RoR::AIRPLANE
@ AIRPLANE
its an airplane
Definition: SimData.h:105
RoR::rotator_t::tolerance
float tolerance
Definition: SimData.h:620
RoR::commandbeam_state_t::pressed_center_mode
bool pressed_center_mode
State.
Definition: SimData.h:561
RoR::HYDRO_FLAG_ELEVATOR
@ HYDRO_FLAG_ELEVATOR
Definition: SimData.h:146
RoR::node_t::buoyancy
Ogre::Real buoyancy
Definition: SimData.h:310
RoR::beam_t::beam_t
beam_t()
Definition: SimData.cpp:42
RoR::wheel_t::wh_speed
Ogre::Real wh_speed
Current wheel speed in m/s.
Definition: SimData.h:455
RoR::ANIM_FLAG_AETORQUE
@ ANIM_FLAG_AETORQUE
Definition: SimData.h:172
RoR::ground_model_t::basename
char basename[256]
Definition: SimData.h:765
RoR::BlinkType
BlinkType
< Turn signal
Definition: SimData.h:132
RoR::commandbeam_t::cmb_is_1press
bool cmb_is_1press
Attribute defined in truckfile.
Definition: SimData.h:579
RoR::tie_t::~tie_t
~tie_t()
Definition: SimData.cpp:72
RoR::hook_t::hk_locked_actor
ActorPtr hk_locked_actor
Definition: SimData.h:505
RoR::beam_t::plastic_coef
float plastic_coef
Definition: SimData.h:356
RoR::SHOCK_FLAG_RACTIVE
@ SHOCK_FLAG_RACTIVE
Definition: SimData.h:210
RoR::collision_box_t::campos
Ogre::Vector3 campos
camera position
Definition: SimData.h:734
RoR::ANIM_FLAG_ROLL
@ ANIM_FLAG_ROLL
Definition: SimData.h:160
RoR::ActorSpawnRequest::net_stream_id
int net_stream_id
Definition: SimData.h:819
RoR::BLINK_LEFT
@ BLINK_LEFT
Definition: SimData.h:135
RoR::SUPPORTBEAM
@ SUPPORTBEAM
Definition: SimData.h:123
RoR::ActorSpawnRequest::Origin::TERRN_DEF
@ TERRN_DEF
Preloaded with terrain.
RoR::ActorSpawnRequest::asr_terrn_machine
bool asr_terrn_machine
This is a fixed machinery.
Definition: SimData.h:822
RoR::beam_t::bm_type
BeamType bm_type
Definition: SimData.h:359
RoR::wheel_t::wh_avg_speed
Ogre::Real wh_avg_speed
Internal physics state; Do not read from this.
Definition: SimData.h:456
RoR::ActorSpawnRequest::Origin::UNKNOWN
@ UNKNOWN
RoR::ActorSpawnRequest::asr_skin_entry
CacheEntryPtr asr_skin_entry
Definition: SimData.h:811
RoR::wheeldetacher_t
Definition: SimData.h:476
RoR::ground_model_t::t2
float t2
hydrodynamic friction (s/m)
Definition: SimData.h:745
RoR::hydrobeam_t::hb_beam_index
uint16_t hb_beam_index
Index to Actor::ar_beams array.
Definition: SimData.h:601
RoR::tie_t::ti_beam
beam_t * ti_beam
Definition: SimData.h:536
RoR::node_t::nd_last_collision_slip
Ogre::Vector3 nd_last_collision_slip
Physics state; last collision slip vector.
Definition: SimData.h:335
RoR::wheel_t::debug_rpm
float debug_rpm
Definition: SimData.h:468
RoR::ActorSpawnRequest::Origin::AI
@ AI
Script controlled.
RoR::ActorModifyRequest::amr_saved_state
std::shared_ptr< rapidjson::Document > amr_saved_state
Definition: SimData.h:846
RoR::wheeldetacher_t::wd_wheel_id
int wd_wheel_id
Definition: SimData.h:478
RoR::ActorState
ActorState
Definition: SimData.h:276
RoR::ExtCameraMode::INVALID
@ INVALID
RoR::wheel_t::debug_scaled_cforce
Ogre::Vector3 debug_scaled_cforce
Definition: SimData.h:473
RoR::cparticle_t
Definition: SimData.h:658
RoR::ground_model_t::ms
float ms
static friction coefficient
Definition: SimData.h:743
RoR::collision_box_t::selfrot
Ogre::Quaternion selfrot
self rotation
Definition: SimData.h:730
RoR::ExtCameraMode::CLASSIC
@ CLASSIC
RoR::SHOCK_FLAG_TRG_CMD_SWITCH
@ SHOCK_FLAG_TRG_CMD_SWITCH
Definition: SimData.h:216
RoR::ANIM_FLAG_BRAKE
@ ANIM_FLAG_BRAKE
Definition: SimData.h:165
RoR::AnimModes
AnimModes
Definition: SimData.h:188
RoR::node_t::nd_has_mesh_contact
bool nd_has_mesh_contact
Physics state.
Definition: SimData.h:326
RoR::authorinfo_t::email
Ogre::String email
Definition: SimData.h:786
RoR::ANIM_MODE_OFFSET_Y
@ ANIM_MODE_OFFSET_Y
Definition: SimData.h:194
RoR::authorinfo_t::type
Ogre::String type
Definition: SimData.h:784
RoR::tie_t::tie_t
tie_t()
Definition: SimData.cpp:62
RoR::SHOCK_FLAG_ISSHOCK3
@ SHOCK_FLAG_ISSHOCK3
Definition: SimData.h:212
RoR::flare_t::snode
Ogre::SceneNode * snode
Definition: SimData.h:634
RoR::hydrobeam_t::hb_flags
int hb_flags
Definition: SimData.h:604
RoR::ANIM_FLAG_PBRAKE
@ ANIM_FLAG_PBRAKE
Definition: SimData.h:169
RoR::shock_t::dslowout
float dslowout
shocks3
Definition: SimData.h:407
RoR::ANIM_FLAG_ARUDDER
@ ANIM_FLAG_ARUDDER
Definition: SimData.h:181
RoR::wheel_t::wh_arm_node
node_t * wh_arm_node
Definition: SimData.h:448
RoR::beam_t::debug_d
float debug_d
debug shock damping
Definition: SimData.h:375
RoR::PropAnimKeyState::anim_active
bool anim_active
Definition: SimData.h:672
RoR::beam_t::bm_inter_actor
bool bm_inter_actor
in case p2 is on another actor
Definition: SimData.h:360
RoR::rope_t
Definition: SimData.h:518
RoR::node_t::volume_coef
Ogre::Real volume_coef
Definition: SimData.h:313
RoR::wheel_t::BrakeCombo::FOOT_HAND
@ FOOT_HAND
RoR::hook_t::~hook_t
~hook_t()
Definition: SimData.cpp:82
RoR::wheel_t::wh_radius
Ogre::Real wh_radius
Definition: SimData.h:453
RoR::SHOCK_FLAG_TRG_ENGINE
@ SHOCK_FLAG_TRG_ENGINE
Definition: SimData.h:222
RoR::TRG_ENGINE_SHIFTDOWN
@ TRG_ENGINE_SHIFTDOWN
Definition: SimData.h:237
RoR::flare_t::controlnumber
int controlnumber
Only 'u' type flares, valid values 0-9, maps to EV_TRUCK_LIGHTTOGGLE01 to 10.
Definition: SimData.h:638
RoR::authorinfo_t::id
int id
Definition: SimData.h:783
RoR::ground_model_t::flow_behavior_index
float flow_behavior_index
if flow_behavior_index<1 then liquid is Pseudoplastic (ketchup, whipped cream, paint) if =1 then liqu...
Definition: SimData.h:756
RoR::ActorLinkingRequest::alr_tie_group
int alr_tie_group
Definition: SimData.h:872
RoR::ANIM_MODE_NOFLIP
@ ANIM_MODE_NOFLIP
Definition: SimData.h:197
RoR::beam_t::debug_v
float debug_v
debug shock velocity
Definition: SimData.h:376
RoR::ANIM_FLAG_AEPITCH
@ ANIM_FLAG_AEPITCH
Definition: SimData.h:173
RoR::cparticle_t::psys
Ogre::ParticleSystem * psys
Definition: SimData.h:664
RoR::node_t::nd_rim_node
bool nd_rim_node
Attr; This node is part of a rim.
Definition: SimData.h:321
RoR::wheel_t::wh_is_detached
bool wh_is_detached
Definition: SimData.h:465
RoR::ground_model_t::fx_particle_timedelta
float fx_particle_timedelta
delta for particle animation
Definition: SimData.h:773
RoR::ActorModifyRequest::amr_addonpart
CacheEntryPtr amr_addonpart
Primary method of specifying cache entry.
Definition: SimData.h:847
RoR::HYDRO_FLAG_RUDDER
@ HYDRO_FLAG_RUDDER
Definition: SimData.h:145
RoR::hook_t::hk_lockrange
float hk_lockrange
Definition: SimData.h:497
RoR::beam_t::k
float k
tensile spring
Definition: SimData.h:348
RoR::BEAM_HYDRO
@ BEAM_HYDRO
Definition: SimData.h:83
RoR::flare_t
Definition: SimData.h:626
RoR::tie_t
Definition: SimData.h:530
RoR::wheel_t::wh_last_torque
Ogre::Real wh_last_torque
Last internal forces (engine / brakes / diffs)
Definition: SimData.h:461
RoR::node_t::nd_has_ground_contact
bool nd_has_ground_contact
Physics state.
Definition: SimData.h:325
RoR::rope_t::rope_t
rope_t()
Definition: SimData.cpp:52
RoR::SHOCK_FLAG_TRG_CMD_BLOCKER
@ SHOCK_FLAG_TRG_CMD_BLOCKER
Definition: SimData.h:217
RoR::TRIGGER
@ TRIGGER
trigger
Definition: SimData.h:122
RoR::node_t::node_t
node_t(size_t _pos)
Definition: SimData.h:302
RoR::ActorSpawnRequest::ActorSpawnRequest
ActorSpawnRequest()
Definition: SimData.cpp:30
RoR::ActorModifyRequest::Type::SOFT_RESET
@ SOFT_RESET
RoR::LOCALIZER_HORIZONTAL
@ LOCALIZER_HORIZONTAL
Definition: SimData.h:265
RoR::PropAnimKeyState::event_active_prev
bool event_active_prev
Definition: SimData.h:671
RoR::beam_t::longbound
float longbound
Definition: SimData.h:366
RoR::ActorModifyRequest::Type::INVALID
@ INVALID
RoR::ActorSpawnRequest::asr_net_username
Ogre::UTFString asr_net_username
Definition: SimData.h:816
RoR::beam_t::~beam_t
~beam_t()
Definition: SimData.cpp:47
RoR::commandbeam_t
Definition: SimData.h:565
RoR::BLINK_NONE
@ BLINK_NONE
Definition: SimData.h:134
RoR::beam_t::maxnegstress
float maxnegstress
Definition: SimData.h:353
RoR::collision_box_t::rot
Ogre::Quaternion rot
rotation
Definition: SimData.h:727
RoR::HYDRO_FLAG_REV_ELEVATOR
@ HYDRO_FLAG_REV_ELEVATOR
Definition: SimData.h:149
RoR::ActorSpawnRequest::asr_debugview
int asr_debugview
Definition: SimData.h:815
RoR::cparticle_t::emitterNode
NodeNum_t emitterNode
Definition: SimData.h:660
RoR::beam_t::minmaxposnegstress
float minmaxposnegstress
Definition: SimData.h:351
RoR::ground_model_t::fluid_density
float fluid_density
Density of liquid.
Definition: SimData.h:750
RoR::wheel_t::wh_axis_node_0
node_t * wh_axis_node_0
Definition: SimData.h:450
RoR::collision_box_t::selfunrot
Ogre::Quaternion selfunrot
self rotation
Definition: SimData.h:731
RoR::shock_t::dampin
float dampin
shocks2 & shocks3
Definition: SimData.h:394
RoR::flare_t::blinkdelay_curr
float blinkdelay_curr
Definition: SimData.h:641
RoR::ropable_t::group
int group
Definition: SimData.h:512
RoR::hook_t::hk_lockgroup
int hk_lockgroup
Definition: SimData.h:492
RoR::LocalizerType
LocalizerType
Definition: SimData.h:262
RoR::beam_t::detacher_group
int detacher_group
Attribute: detacher group number (integer)
Definition: SimData.h:357
RoR::ANIM_FLAG_PITCH
@ ANIM_FLAG_PITCH
Definition: SimData.h:161
RoR::TRG_ENGINE_BRAKE
@ TRG_ENGINE_BRAKE
Definition: SimData.h:233
RoR::ground_model_t
Surface friction properties.
Definition: SimData.h:740
RoR::ground_model_t::drag_anisotropy
float drag_anisotropy
Upwards/Downwards drag anisotropy.
Definition: SimData.h:760
RoR::tie_t::ti_locked_ropable
ropable_t * ti_locked_ropable
Definition: SimData.h:537
RoR::wheel_t::debug_vel
Ogre::Vector3 debug_vel
Definition: SimData.h:470
RoR::command_t::commandValueState
int commandValueState
Definition: SimData.h:587
RoR::SHOCK_FLAG_TRG_HOOK_UNLOCK
@ SHOCK_FLAG_TRG_HOOK_UNLOCK
Definition: SimData.h:219
RoR::ActorLinkingRequest::alr_actor_instance_id
ActorInstanceID_t alr_actor_instance_id
Definition: SimData.h:865
RoR::commandbeam_state_t::auto_move_lock
bool auto_move_lock
State.
Definition: SimData.h:562
RoR::TRG_ENGINE_CLUTCH
@ TRG_ENGINE_CLUTCH
Definition: SimData.h:232
RoR::flare_t::light
Ogre::Light * light
Definition: SimData.h:636
RoR::command_t::beams
std::vector< commandbeam_t > beams
Definition: SimData.h:592
RoR::beam_t::p2
node_t * p2
Definition: SimData.h:347
RoR::AeroEngineType::AE_XPROP
@ AE_XPROP
RoR::node_t::nd_no_ground_contact
bool nd_no_ground_contact
User-defined attr; node ignores contact with ground.
Definition: SimData.h:329
RoR::ActorSpawnRequest::net_source_id
int net_source_id
Definition: SimData.h:818
RoR::rotator_t::angle
float angle
Definition: SimData.h:617
RoR::commandbeam_t::cmb_is_1press_center
bool cmb_is_1press_center
Attribute defined in truckfile.
Definition: SimData.h:580
RoR::wheel_t::wh_tc_coef
Ogre::Real wh_tc_coef
Sim state; Current traction control modulation ratio.
Definition: SimData.h:458
RoR::ActorLinkingRequest::alr_hook_mousenode
NodeNum_t alr_hook_mousenode
Definition: SimData.h:870
RoR::ANIM_FLAG_TURBO
@ ANIM_FLAG_TURBO
Definition: SimData.h:170
RoR::FlexAirfoil
Definition: FlexAirfoil.h:33
RoR::exhaust_t::smokeNode
Ogre::SceneNode * smokeNode
Definition: SimData.h:653
RoR::hydrobeam_t::hb_anim_param
float hb_anim_param
Animators (beams updating length based on simulation variables)
Definition: SimData.h:606
RoR::hydrobeam_t::hb_speed
float hb_speed
Rate of change.
Definition: SimData.h:603
RoR::EVENT_ALL
@ EVENT_ALL
Definition: SimData.h:48
RoR::shock_t::sbd_spring
float sbd_spring
set beam default for spring
Definition: SimData.h:410
RoR::ActorState::NETWORKED_HIDDEN
@ NETWORKED_HIDDEN
not simulated, not updated (remote)
RoR::beam_t::shortbound
float shortbound
Definition: SimData.h:365
RoR::rotator_t::nodes1
NodeNum_t nodes1[4]
Definition: SimData.h:613
InputEngine.h
Handles controller inputs from player. Defines input events and binding mechanism,...
RoR::collision_box_t::debug_verts
Ogre::Vector3 debug_verts[8]
box corners in absolute world position
Definition: SimData.h:735
RoR::command_t::commandValue
float commandValue
Definition: SimData.h:588
RoR::ActorSpawnRequest::Origin::USER
@ USER
Direct selection by user via GUI.
RoR::tie_t::ti_no_self_lock
bool ti_no_self_lock
Attribute.
Definition: SimData.h:543
RoR::commandbeam_t::cmb_plays_sound
bool cmb_plays_sound
Attribute defined in truckfile.
Definition: SimData.h:578
RoR::rope_t::rp_locked
int rp_locked
Definition: SimData.h:523
RoR::ground_model_t::flow_consistency_index
float flow_consistency_index
general drag coefficient
Definition: SimData.h:751
RoR::ANIM_FLAG_DIFFLOCK
@ ANIM_FLAG_DIFFLOCK
Definition: SimData.h:177
RoR::SHOCK1
@ SHOCK1
shock1
Definition: SimData.h:119
RoR::SHOCK_FLAG_ISTRIGGER
@ SHOCK_FLAG_ISTRIGGER
Definition: SimData.h:214
RoR::rotator_t::force
float force
Definition: SimData.h:619
RoR::ANIM_FLAG_AIRSPEED
@ ANIM_FLAG_AIRSPEED
Definition: SimData.h:154
RoR::ANIM_FLAG_STEERING
@ ANIM_FLAG_STEERING
Definition: SimData.h:178
RoR::ActorSpawnRequest::asr_position
Ogre::Vector3 asr_position
Definition: SimData.h:808
RoR::SHOCK_FLAG_TRG_BLOCKER
@ SHOCK_FLAG_TRG_BLOCKER
Definition: SimData.h:215
RoR::rope_t::~rope_t
~rope_t()
Definition: SimData.cpp:57
RoR::hook_t::hk_hook_node
node_t * hk_hook_node
Definition: SimData.h:502
RoR::ActorType
ActorType
< Aka 'Driveable'
Definition: SimData.h:99
RoR::node_t::mass
Ogre::Real mass
Definition: SimData.h:309
RoR::events
events
Definition: InputEngine.h:74
RoR::BOAT
@ BOAT
its a boat
Definition: SimData.h:106
RoR::ActorState::NETWORKED_OK
@ NETWORKED_OK
not simulated (remote) actor
RoR::flare_t::offsetx
float offsetx
Definition: SimData.h:631
RoR::ANIM_FLAG_TACHO
@ ANIM_FLAG_TACHO
Definition: SimData.h:167
RoR::commandbeam_t::cmb_beam_index
uint16_t cmb_beam_index
Index to Actor::ar_beams array.
Definition: SimData.h:567
RoR::commandbeam_t::cmb_is_autocentering
bool cmb_is_autocentering
Attribute defined in truckfile.
Definition: SimData.h:577
RoR::FlareType::HIGH_BEAM
@ HIGH_BEAM
RoR::node_t::nd_lockgroup
int16_t nd_lockgroup
Optional attribute (-1 = default, 9999 = deny lock) - used in the hook lock logic.
Definition: SimData.h:317
RoR::flare_t::blinkdelay
float blinkdelay
Definition: SimData.h:640
RoR::ANIM_FLAG_THROTTLE
@ ANIM_FLAG_THROTTLE
Definition: SimData.h:162
RoR::TRG_ENGINE_RPM
@ TRG_ENGINE_RPM
Definition: SimData.h:235
RoR::wheel_t::wh_braking
BrakeCombo wh_braking
Definition: SimData.h:447
RoR::commandbeam_state_t::commandbeam_state_t
commandbeam_state_t()
Definition: SimData.h:556
RoR::hook_t::hk_group
int hk_group
Definition: SimData.h:491
RoR::AI
@ AI
machine controlled by an Artificial Intelligence
Definition: SimData.h:108
RoR::beam_t::shock
shock_t * shock
Definition: SimData.h:369
RoR::PropAnimKeyState::eventlock_present
bool eventlock_present
Definition: SimData.h:670
RoR::ropable_t
Definition: SimData.h:508
RoR::ActorModifyRequest::amr_type
Type amr_type
Definition: SimData.h:844
RoR::ActorSpawnRequest::asr_spawnbox
collision_box_t * asr_spawnbox
Definition: SimData.h:810
RoR::ActorSpawnRequest::asr_rotation
Ogre::Quaternion asr_rotation
Definition: SimData.h:809
RoR::TRG_ENGINE_SHIFTUP
@ TRG_ENGINE_SHIFTUP
Definition: SimData.h:236
RoR
Definition: AppContext.h:36
RoR::soundsource_t
Definition: SimData.h:422
RoR::ActorSpawnRequest::asr_enter
bool asr_enter
Definition: SimData.h:821
RoR::beam_t::default_beam_deform
float default_beam_deform
for reset
Definition: SimData.h:372
RoR::ANIM_MODE_OFFSET_X
@ ANIM_MODE_OFFSET_X
Definition: SimData.h:193
RoR::ActorModifyRequest::Type
Type
Definition: SimData.h:832
RoR::ActorSpawnRequest::~ActorSpawnRequest
~ActorSpawnRequest()
Definition: SimData.cpp:36
RoR::beam_t::bm_disabled
bool bm_disabled
Definition: SimData.h:362
RoR::ground_model_t::fx_particle_min_velo
float fx_particle_min_velo
minimum velocity to display sparks
Definition: SimData.h:770
RoR::wheel_t::BrakeCombo::NONE
@ NONE
RoR::EngineTriggerType
EngineTriggerType
Definition: SimData.h:230
RoR::ground_model_t::particle_name
char particle_name[256]
Definition: SimData.h:766
RoR::wing_t
Definition: SimData.h:548
RoR::ANIM_FLAG_AIRBRAKE
@ ANIM_FLAG_AIRBRAKE
Definition: SimData.h:159
RoR::rope_t::rp_locked_actor
ActorPtr rp_locked_actor
Definition: SimData.h:527
RoR::shock_t::dfastout
float dfastout
shocks3
Definition: SimData.h:408
RoR::beam_t::L
float L
length
Definition: SimData.h:350
RoR::ActorSpawnRequest::Origin
Origin
< Enables special processing
Definition: SimData.h:794
RoR::flare_t::inertia
SimpleInertia inertia
Only 'flares3'.
Definition: SimData.h:646
RoR::ActorModifyRequest::Type::RESET_ON_SPOT
@ RESET_ON_SPOT
RoR::flare_t::noderef
NodeNum_t noderef
Definition: SimData.h:628
RoR::beam_t::bm_broken
bool bm_broken
Definition: SimData.h:363
RoR::rotator_t
Definition: SimData.h:610
RoR::CmdKeyArray
For backwards compatibility of the 'triggers' feature, the commandkey array must support negative ind...
Definition: SimData.h:678
RoR::SHOCK_FLAG_ISSHOCK2
@ SHOCK_FLAG_ISSHOCK2
Definition: SimData.h:211
RoR::ActorSpawnRequest::asr_saved_state
std::shared_ptr< rapidjson::Document > asr_saved_state
Pushes msg MODIFY_ACTOR (type RESTORE_SAVED) after spawn.
Definition: SimData.h:824
RoR::node_t::Forces
Ogre::Vector3 Forces
Definition: SimData.h:307
RoR::beam_t::maxposstress
float maxposstress
Definition: SimData.h:352
RoR::hook_t::hk_lockspeed
float hk_lockspeed
Definition: SimData.h:498
RoR::shock_t::flags
int flags
Definition: SimData.h:384
RoR::shock_t
Definition: SimData.h:379
RoR::ANIM_FLAG_SHIFTER
@ ANIM_FLAG_SHIFTER
Definition: SimData.h:171
RoR::ground_model_t::fx_colour
Ogre::ColourValue fx_colour
Definition: SimData.h:763
RoR::command_t::playerInputValue
float playerInputValue
Definition: SimData.h:590
RoR::ANIM_MODE_OFFSET_Z
@ ANIM_MODE_OFFSET_Z
Definition: SimData.h:195
RoR::ActorModifyRequest::Type::RELOAD
@ RELOAD
Full reload from filesystem, requested by user.
RoR::ActorLinkingRequestType::SLIDENODE_ACTION
@ SLIDENODE_ACTION