Odamex
Setting the Standard in Multiplayer Doom
common/r_plane.h
Go to the documentation of this file.
00001 // Emacs style mode select   -*- C++ -*- 
00002 //-----------------------------------------------------------------------------
00003 //
00004 // $Id: r_plane.h 1856 2010-09-05 03:14:13Z ladna $
00005 //
00006 // Copyright (C) 1993-1996 by id Software, Inc.
00007 // Copyright (C) 2006-2010 by The Odamex Team.
00008 //
00009 // This program is free software; you can redistribute it and/or
00010 // modify it under the terms of the GNU General Public License
00011 // as published by the Free Software Foundation; either version 2
00012 // of the License, or (at your option) any later version.
00013 //
00014 // This program is distributed in the hope that it will be useful,
00015 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00016 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017 // GNU General Public License for more details.
00018 //
00019 // DESCRIPTION:
00020 //      Refresh, visplane stuff (floor, ceilings).
00021 //
00022 //-----------------------------------------------------------------------------
00023 
00024 
00025 #ifndef __R_PLANE_H__
00026 #define __R_PLANE_H__
00027 
00028 #include "r_data.h"
00029 
00030 // Visplane related.
00031 extern  int*                    lastopening;
00032 
00033 typedef void (*planefunction_t) (int top, int bottom);
00034 
00035 extern planefunction_t  floorfunc;
00036 extern planefunction_t  ceilingfunc_t;
00037 
00038 extern int                      *floorclip;
00039 extern int                      *ceilingclip;
00040 
00041 extern fixed_t                  *yslope;
00042 extern fixed_t                  *distscale;
00043 
00044 void R_InitPlanes (void);
00045 void R_ClearPlanes (void);
00046 
00047 void
00048 R_MapPlane
00049 ( int           y,
00050   int           x1,
00051   int           x2 );
00052 
00053 void
00054 R_MakeSpans
00055 ( int           x,
00056   int           t1,
00057   int           b1,
00058   int           t2,
00059   int           b2 );
00060   
00061 void R_DrawPlanes (void);
00062 
00063 visplane_t *R_FindPlane
00064 ( fixed_t               height,
00065   int                   picnum,
00066   int                   lightlevel,
00067   fixed_t               xoffs,          // killough 2/28/98: add x-y offsets
00068   fixed_t               yoffs,
00069   fixed_t               xscale,
00070   fixed_t               yscale,
00071   angle_t               angle);
00072 
00073 visplane_t *R_CheckPlane (visplane_t *pl, int start, int stop);
00074 
00075 // [RH] Added for multires support
00076 BOOL R_PlaneInitData (void);
00077 
00078 
00079 #endif // __R_PLANE_H__
00080 
00081 
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends