Subversion Repositories Games.Descent

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. /*
  2.  * Portions of this file are copyright Rebirth contributors and licensed as
  3.  * described in COPYING.txt.
  4.  * Portions of this file are copyright Parallax Software and licensed
  5.  * according to the Parallax license.
  6.  * See COPYING.txt for license details.
  7.  */
  8.  
  9. #pragma once
  10. #include "vecmat.h"
  11. #include "pack.h"
  12. #include "dxxsconf.h"
  13. #include "dsx-ns.h"
  14.  
  15. namespace dcx {
  16.  
  17. // information for physics sim for an object
  18. struct physics_info : prohibit_void_ptr<physics_info>
  19. {
  20.         vms_vector  velocity;   // velocity vector of this object
  21.         vms_vector  thrust;     // constant force applied to this object
  22.         fix         mass;       // the mass of this object
  23.         fix         drag;       // how fast this slows down
  24.         vms_vector  rotvel;     // rotational velecity (angles)
  25.         vms_vector  rotthrust;  // rotational acceleration
  26.         fixang      turnroll;   // rotation caused by turn banking
  27.         uint16_t    flags;      // misc physics flags
  28. };
  29.  
  30. struct physics_info_rw
  31. {
  32.         vms_vector  velocity;   // velocity vector of this object
  33.         vms_vector  thrust;     // constant force applied to this object
  34.         fix         mass;       // the mass of this object
  35.         fix         drag;       // how fast this slows down
  36.         fix         obsolete_brakes;     // how much brakes applied
  37.         vms_vector  rotvel;     // rotational velecity (angles)
  38.         vms_vector  rotthrust;  // rotational acceleration
  39.         fixang      turnroll;   // rotation caused by turn banking
  40.         uint16_t    flags;      // misc physics flags
  41. } __pack__;
  42.  
  43. }
  44.