d_ifacea.h 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. //
  2. // d_ifacea.h
  3. //
  4. // Include file for asm driver interface.
  5. //
  6. //
  7. // !!! note that this file must match the corresponding C structures in
  8. // d_iface.h at all times !!!
  9. //
  10. // !!! if this is changed, it must be changed in r_shared.h too !!!
  11. #define ALIAS_ONSEAM 0x0020
  12. // !!! if this is changed, it must be changed in d_iface.h too !!!
  13. #define TURB_TEX_SIZE 64 // base turbulent texture size
  14. // !!! if this is changed, it must be changed in d_iface.h too !!!
  15. #define CYCLE 128
  16. // !!! if this is changed, it must be changed in r_shared.h too !!!
  17. #define MAXHEIGHT 1024
  18. // !!! if this is changed, it must be changed in quakedef.h too !!!
  19. #define CACHE_SIZE 32 // used to align key data structures
  20. // particle_t structure
  21. // !!! if this is changed, it must be changed in d_iface.h too !!!
  22. // driver-usable fields
  23. #define pt_org 0
  24. #define pt_color 12
  25. // drivers never touch the following fields
  26. #define pt_next 16
  27. #define pt_vel 20
  28. #define pt_ramp 32
  29. #define pt_die 36
  30. #define pt_type 40
  31. #define pt_size 44
  32. #define PARTICLE_Z_CLIP 8.0
  33. // finalvert_t structure
  34. // !!! if this is changed, it must be changed in d_iface.h too !!!
  35. #define fv_v 0 // !!! if this is moved, cases where the !!!
  36. // !!! address of this field is pushed in !!!
  37. // !!! d_polysa.s must be changed !!!
  38. #define fv_flags 24
  39. #define fv_reserved 28
  40. #define fv_size 32
  41. #define fv_shift 5
  42. // stvert_t structure
  43. // !!! if this is changed, it must be changed in modelgen.h too !!!
  44. #define stv_onseam 0
  45. #define stv_s 4
  46. #define stv_t 8
  47. #define stv_size 12
  48. // trivertx_t structure
  49. // !!! if this is changed, it must be changed in modelgen.h too !!!
  50. #define tv_v 0
  51. #define tv_lightnormalindex 3
  52. #define tv_size 4
  53. // affinetridesc_t structure
  54. // !!! if this is changed, it must be changed in d_iface.h too !!!
  55. #define atd_pskin 0
  56. #define atd_pskindesc 4
  57. #define atd_skinwidth 8
  58. #define atd_skinheight 12
  59. #define atd_ptriangles 16
  60. #define atd_pfinalverts 20
  61. #define atd_numtriangles 24
  62. #define atd_drawtype 28
  63. #define atd_seamfixupX16 32
  64. #define atd_size 36