r_state.h
上传用户:xuyinpeng
上传日期:2021-05-12
资源大小:455k
文件大小:3k
源码类别:

射击游戏

开发平台:

Visual C++

  1. // Emacs style mode select   -*- C++ -*- 
  2. //-----------------------------------------------------------------------------
  3. //
  4. // $Id:$
  5. //
  6. // Copyright (C) 1993-1996 by id Software, Inc.
  7. //
  8. // This source is available for distribution and/or modification
  9. // only under the terms of the DOOM Source Code License as
  10. // published by id Software. All rights reserved.
  11. //
  12. // The source is distributed in the hope that it will be useful,
  13. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. // FITNESS FOR A PARTICULAR PURPOSE. See the DOOM Source Code License
  15. // for more details.
  16. //
  17. // DESCRIPTION:
  18. // Refresh/render internal state variables (global).
  19. //
  20. //-----------------------------------------------------------------------------
  21. #ifndef __R_STATE__
  22. #define __R_STATE__
  23. // Need data structure definitions.
  24. #include "d_player.h"
  25. #include "r_data.h"
  26. #ifdef __GNUG__
  27. #pragma interface
  28. #endif
  29. //
  30. // Refresh internal data structures,
  31. //  for rendering.
  32. //
  33. // needed for texture pegging
  34. extern fixed_t* textureheight;
  35. // needed for pre rendering (fracs)
  36. extern fixed_t* spritewidth;
  37. extern fixed_t* spriteoffset;
  38. extern fixed_t* spritetopoffset;
  39. extern lighttable_t* colormaps;
  40. extern int viewwidth;
  41. extern int scaledviewwidth;
  42. extern int viewheight;
  43. extern int firstflat;
  44. // for global animation
  45. extern int* flattranslation;
  46. extern int* texturetranslation;
  47. // Sprite....
  48. extern int firstspritelump;
  49. extern int lastspritelump;
  50. extern int numspritelumps;
  51. //
  52. // Lookup tables for map data.
  53. //
  54. extern int numsprites;
  55. extern spritedef_t* sprites;
  56. extern int numvertexes;
  57. extern vertex_t* vertexes;
  58. extern int numsegs;
  59. extern seg_t* segs;
  60. extern int numsectors;
  61. extern sector_t* sectors;
  62. extern int numsubsectors;
  63. extern subsector_t* subsectors;
  64. extern int numnodes;
  65. extern node_t* nodes;
  66. extern int numlines;
  67. extern line_t* lines;
  68. extern int numsides;
  69. extern side_t* sides;
  70. //
  71. // POV data.
  72. //
  73. extern fixed_t viewx;
  74. extern fixed_t viewy;
  75. extern fixed_t viewz;
  76. extern angle_t viewangle;
  77. extern player_t* viewplayer;
  78. // ?
  79. extern angle_t clipangle;
  80. extern int viewangletox[FINEANGLES/2];
  81. extern angle_t *xtoviewangle; // HIRES
  82. //extern angle_t xtoviewangle[SCREENWIDTH+1];
  83. //extern fixed_t finetangent[FINEANGLES/2];
  84. extern fixed_t rw_distance;
  85. extern angle_t rw_normalangle;
  86. // angle to line origin
  87. extern int rw_angle1;
  88. // Segs count?
  89. extern int sscount;
  90. extern visplane_t* floorplane;
  91. extern visplane_t* ceilingplane;
  92. #endif
  93. //-----------------------------------------------------------------------------
  94. //
  95. // $Log:$
  96. //
  97. //-----------------------------------------------------------------------------