123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138 |
- /*
- ===========================================================================
- Doom 3 BFG Edition GPL Source Code
- Copyright (C) 1993-2012 id Software LLC, a ZeniMax Media company.
- This file is part of the Doom 3 BFG Edition GPL Source Code ("Doom 3 BFG Edition Source Code").
- Doom 3 BFG Edition Source Code is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
- Doom 3 BFG Edition Source Code is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with Doom 3 BFG Edition Source Code. If not, see <http://www.gnu.org/licenses/>.
- In addition, the Doom 3 BFG Edition Source Code is also subject to certain additional terms. You should have received a copy of these additional terms immediately following the terms and conditions of the GNU General Public License which accompanied the Doom 3 BFG Edition Source Code. If not, please request a copy in writing from id Software at the address below.
- If you have questions concerning this license or the applicable additional terms, you may contact in writing id Software LLC, c/o ZeniMax Media Inc., Suite 120, Rockville, Maryland 20850 USA.
- ===========================================================================
- */
- #ifndef __R_STATE__
- #define __R_STATE__
- // Need data structure definitions.
- #include "d_player.h"
- #include "r_data.h"
- #ifdef __GNUG__
- #pragma interface
- #endif
- //
- // Refresh internal data structures,
- // for rendering.
- //
- // needed for texture pegging
- // needed for pre rendering (fracs)
- extern fixed_t* spritewidth;
- extern fixed_t* spriteoffset;
- extern fixed_t* spritetopoffset;
- extern lighttable_t* colormaps;
- extern int viewwidth;
- extern int scaledviewwidth;
- extern int viewheight;
- extern int firstflat;
- // for global animation
- extern int* flattranslation;
- extern int* texturetranslation;
- // Sprite....
- extern int firstspritelump;
- extern int lastspritelump;
- extern int numspritelumps;
- //
- // Lookup tables for map data.
- //
- extern int numsprites;
- extern spritedef_t* sprites;
- extern int numvertexes;
- extern vertex_t* vertexes;
- extern int numsegs;
- extern seg_t* segs;
- extern int numsectors;
- extern sector_t* sectors;
- extern int numsubsectors;
- extern subsector_t* subsectors;
- extern int numnodes;
- extern node_t* nodes;
- extern int numlines;
- extern line_t* lines;
- extern int numsides;
- extern side_t* sides;
- //
- // POV data.
- //
- extern fixed_t viewx;
- extern fixed_t viewy;
- extern fixed_t viewz;
- extern angle_t viewangle;
- extern player_t* viewplayer;
- // ?
- extern angle_t clipangle;
- extern int viewangletox[FINEANGLES/2];
- extern angle_t xtoviewangle[SCREENWIDTH+1];
- //extern fixed_t finetangent[FINEANGLES/2];
- extern fixed_t rw_distance;
- extern angle_t rw_normalangle;
- // angle to line origin
- extern int rw_angle1;
- // Segs count?
- extern int sscount;
- #endif
|