mirror of
https://github.com/ZDoom/gzdoom-gles.git
synced 2025-02-17 17:11:19 +00:00
- moved the code from r_data.cpp to some better fitting places and deleted this file and r_data.h because the remaining parts of it were just a random collection of unrelated functions.
SVN r3248 (trunk)
This commit is contained in:
parent
2a3d1a4493
commit
17ed7aaabd
59 changed files with 268 additions and 52 deletions
|
@ -724,7 +724,6 @@ add_executable( zdoom WIN32
|
||||||
po_man.cpp
|
po_man.cpp
|
||||||
r_3dfloors.cpp
|
r_3dfloors.cpp
|
||||||
r_bsp.cpp
|
r_bsp.cpp
|
||||||
r_data.cpp
|
|
||||||
r_draw.cpp
|
r_draw.cpp
|
||||||
r_drawt.cpp
|
r_drawt.cpp
|
||||||
r_interpolate.cpp
|
r_interpolate.cpp
|
||||||
|
|
|
@ -70,6 +70,7 @@
|
||||||
#include "d_net.h"
|
#include "d_net.h"
|
||||||
#include "v_text.h"
|
#include "v_text.h"
|
||||||
#include "p_lnspec.h"
|
#include "p_lnspec.h"
|
||||||
|
#include "v_video.h"
|
||||||
|
|
||||||
extern FILE *Logfile;
|
extern FILE *Logfile;
|
||||||
extern bool insave;
|
extern bool insave;
|
||||||
|
|
|
@ -58,6 +58,7 @@
|
||||||
#include "d_event.h"
|
#include "d_event.h"
|
||||||
#include "m_argv.h"
|
#include "m_argv.h"
|
||||||
#include "p_lnspec.h"
|
#include "p_lnspec.h"
|
||||||
|
#include "v_video.h"
|
||||||
|
|
||||||
int P_StartScript (AActor *who, line_t *where, int script, char *map, bool backSide,
|
int P_StartScript (AActor *who, line_t *where, int script, char *map, bool backSide,
|
||||||
int arg0, int arg1, int arg2, int always, bool wantResultCode, bool net);
|
int arg0, int arg1, int arg2, int always, bool wantResultCode, bool net);
|
||||||
|
|
|
@ -48,6 +48,7 @@
|
||||||
#include "gi.h"
|
#include "gi.h"
|
||||||
#include "g_level.h"
|
#include "g_level.h"
|
||||||
#include "colormatcher.h"
|
#include "colormatcher.h"
|
||||||
|
#include "b_bot.h"
|
||||||
|
|
||||||
FDecalLib DecalLibrary;
|
FDecalLib DecalLibrary;
|
||||||
|
|
||||||
|
|
|
@ -61,7 +61,6 @@
|
||||||
#include "b_bot.h"
|
#include "b_bot.h"
|
||||||
#include "p_local.h"
|
#include "p_local.h"
|
||||||
#include "g_game.h"
|
#include "g_game.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "a_sharedglobal.h"
|
#include "a_sharedglobal.h"
|
||||||
#include "sbar.h"
|
#include "sbar.h"
|
||||||
#include "stats.h"
|
#include "stats.h"
|
||||||
|
@ -72,6 +71,7 @@
|
||||||
#include "doomstat.h"
|
#include "doomstat.h"
|
||||||
#include "m_argv.h"
|
#include "m_argv.h"
|
||||||
#include "po_man.h"
|
#include "po_man.h"
|
||||||
|
#include "v_video.h"
|
||||||
#include "menu/menu.h"
|
#include "menu/menu.h"
|
||||||
#include "intermission/intermission.h"
|
#include "intermission/intermission.h"
|
||||||
|
|
||||||
|
|
|
@ -37,6 +37,7 @@
|
||||||
#include "p_local.h"
|
#include "p_local.h"
|
||||||
#include "farchive.h"
|
#include "farchive.h"
|
||||||
#include "sbar.h"
|
#include "sbar.h"
|
||||||
|
#include "v_video.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -38,7 +38,6 @@
|
||||||
#include "g_level.h"
|
#include "g_level.h"
|
||||||
#include "sc_man.h"
|
#include "sc_man.h"
|
||||||
#include "s_sound.h"
|
#include "s_sound.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "r_sky.h"
|
#include "r_sky.h"
|
||||||
#include "t_script.h"
|
#include "t_script.h"
|
||||||
#include "cmdlib.h"
|
#include "cmdlib.h"
|
||||||
|
|
|
@ -61,7 +61,6 @@
|
||||||
#include "p_local.h"
|
#include "p_local.h"
|
||||||
#include "s_sound.h"
|
#include "s_sound.h"
|
||||||
#include "gstrings.h"
|
#include "gstrings.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "r_sky.h"
|
#include "r_sky.h"
|
||||||
#include "r_draw.h"
|
#include "r_draw.h"
|
||||||
#include "g_game.h"
|
#include "g_game.h"
|
||||||
|
|
|
@ -42,7 +42,6 @@
|
||||||
#include "m_random.h"
|
#include "m_random.h"
|
||||||
#include "doomstat.h"
|
#include "doomstat.h"
|
||||||
#include "wi_stuff.h"
|
#include "wi_stuff.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "w_wad.h"
|
#include "w_wad.h"
|
||||||
#include "am_map.h"
|
#include "am_map.h"
|
||||||
#include "c_dispatch.h"
|
#include "c_dispatch.h"
|
||||||
|
|
|
@ -2,10 +2,10 @@
|
||||||
|
|
||||||
#include "info.h"
|
#include "info.h"
|
||||||
#include "gi.h"
|
#include "gi.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "a_pickups.h"
|
#include "a_pickups.h"
|
||||||
#include "templates.h"
|
#include "templates.h"
|
||||||
#include "g_level.h"
|
#include "g_level.h"
|
||||||
|
#include "d_player.h"
|
||||||
|
|
||||||
|
|
||||||
IMPLEMENT_CLASS (AArmor)
|
IMPLEMENT_CLASS (AArmor)
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
#include "a_lightning.h"
|
#include "a_lightning.h"
|
||||||
#include "p_lnspec.h"
|
#include "p_lnspec.h"
|
||||||
#include "statnums.h"
|
#include "statnums.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "m_random.h"
|
#include "m_random.h"
|
||||||
#include "templates.h"
|
#include "templates.h"
|
||||||
#include "s_sound.h"
|
#include "s_sound.h"
|
||||||
#include "p_acs.h"
|
#include "p_acs.h"
|
||||||
#include "r_sky.h"
|
#include "r_sky.h"
|
||||||
#include "g_level.h"
|
#include "g_level.h"
|
||||||
|
#include "r_state.h"
|
||||||
|
|
||||||
static FRandom pr_lightning ("Lightning");
|
static FRandom pr_lightning ("Lightning");
|
||||||
|
|
||||||
|
|
|
@ -40,7 +40,6 @@
|
||||||
#include "d_player.h"
|
#include "d_player.h"
|
||||||
#include "doomstat.h"
|
#include "doomstat.h"
|
||||||
#include "v_font.h"
|
#include "v_font.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "p_spec.h"
|
#include "p_spec.h"
|
||||||
|
|
||||||
EXTERN_CVAR(String, secretmessage)
|
EXTERN_CVAR(String, secretmessage)
|
||||||
|
|
|
@ -51,6 +51,7 @@
|
||||||
#include "d_net.h"
|
#include "d_net.h"
|
||||||
#include "colormatcher.h"
|
#include "colormatcher.h"
|
||||||
#include "v_palette.h"
|
#include "v_palette.h"
|
||||||
|
#include "d_player.h"
|
||||||
|
|
||||||
#include "../version.h"
|
#include "../version.h"
|
||||||
|
|
||||||
|
|
|
@ -38,6 +38,7 @@
|
||||||
#include "dobject.h"
|
#include "dobject.h"
|
||||||
#include "dthinker.h"
|
#include "dthinker.h"
|
||||||
#include "doomtype.h"
|
#include "doomtype.h"
|
||||||
|
#include "farchive.h"
|
||||||
|
|
||||||
#define LOCAL_SIZE 20
|
#define LOCAL_SIZE 20
|
||||||
#define NUM_MAPVARS 128
|
#define NUM_MAPVARS 128
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
|
|
||||||
#include "actor.h"
|
#include "actor.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "r_main.h"
|
#include "r_main.h"
|
||||||
#include "p_conversation.h"
|
#include "p_conversation.h"
|
||||||
#include "w_wad.h"
|
#include "w_wad.h"
|
||||||
|
|
|
@ -3,9 +3,13 @@
|
||||||
|
|
||||||
#include <tarray.h>
|
#include <tarray.h>
|
||||||
|
|
||||||
|
#include "s_sound.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
struct FStrifeDialogueReply;
|
struct FStrifeDialogueReply;
|
||||||
class FTexture;
|
class FTexture;
|
||||||
struct FBrokenLines;
|
struct FBrokenLines;
|
||||||
|
struct PClass;
|
||||||
|
|
||||||
struct FStrifeDialogueItemCheck
|
struct FStrifeDialogueItemCheck
|
||||||
{
|
{
|
||||||
|
|
|
@ -21,7 +21,6 @@
|
||||||
//
|
//
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
#include "r_data.h"
|
|
||||||
#include "p_spec.h"
|
#include "p_spec.h"
|
||||||
#include "c_cvars.h"
|
#include "c_cvars.h"
|
||||||
#include "doomstat.h"
|
#include "doomstat.h"
|
||||||
|
|
|
@ -3936,7 +3936,7 @@ void P_SetupLevel (char *lumpname, int position)
|
||||||
// preload graphics and sounds
|
// preload graphics and sounds
|
||||||
if (precache)
|
if (precache)
|
||||||
{
|
{
|
||||||
R_PrecacheLevel ();
|
TexMan.PrecacheLevel ();
|
||||||
S_PrecacheLevel ();
|
S_PrecacheLevel ();
|
||||||
}
|
}
|
||||||
times[17].Unclock();
|
times[17].Unclock();
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
|
|
||||||
#include "doomtype.h"
|
#include "doomtype.h"
|
||||||
#include "p_local.h"
|
#include "p_local.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "cmdlib.h"
|
#include "cmdlib.h"
|
||||||
#include "p_lnspec.h"
|
#include "p_lnspec.h"
|
||||||
|
|
||||||
|
|
|
@ -27,6 +27,7 @@
|
||||||
|
|
||||||
#include "dsectoreffect.h"
|
#include "dsectoreffect.h"
|
||||||
#include "doomdata.h"
|
#include "doomdata.h"
|
||||||
|
#include "r_state.h"
|
||||||
|
|
||||||
class FScanner;
|
class FScanner;
|
||||||
struct level_info_t;
|
struct level_info_t;
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
**
|
**
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "r_data.h"
|
|
||||||
#include "p_setup.h"
|
#include "p_setup.h"
|
||||||
#include "p_lnspec.h"
|
#include "p_lnspec.h"
|
||||||
#include "templates.h"
|
#include "templates.h"
|
||||||
|
@ -43,6 +42,7 @@
|
||||||
#include "g_level.h"
|
#include "g_level.h"
|
||||||
#include "v_palette.h"
|
#include "v_palette.h"
|
||||||
#include "p_udmf.h"
|
#include "p_udmf.h"
|
||||||
|
#include "r_state.h"
|
||||||
#include "resources/colormaps.h"
|
#include "resources/colormaps.h"
|
||||||
|
|
||||||
//===========================================================================
|
//===========================================================================
|
||||||
|
|
|
@ -32,7 +32,6 @@
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||||
// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
#include "r_data.h"
|
|
||||||
#include "p_setup.h"
|
#include "p_setup.h"
|
||||||
#include "p_lnspec.h"
|
#include "p_lnspec.h"
|
||||||
#include "templates.h"
|
#include "templates.h"
|
||||||
|
@ -40,6 +39,8 @@
|
||||||
#include "p_conversation.h"
|
#include "p_conversation.h"
|
||||||
#include "p_udmf.h"
|
#include "p_udmf.h"
|
||||||
#include "doomerrors.h"
|
#include "doomerrors.h"
|
||||||
|
#include "cmdlib.h"
|
||||||
|
#include "actor.h"
|
||||||
|
|
||||||
#define Zd 1
|
#define Zd 1
|
||||||
#define St 2
|
#define St 2
|
||||||
|
|
|
@ -36,7 +36,6 @@
|
||||||
#include "g_level.h"
|
#include "g_level.h"
|
||||||
#include "p_lnspec.h"
|
#include "p_lnspec.h"
|
||||||
#include "doomdata.h"
|
#include "doomdata.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "m_swap.h"
|
#include "m_swap.h"
|
||||||
#include "p_spec.h"
|
#include "p_spec.h"
|
||||||
#include "p_local.h"
|
#include "p_local.h"
|
||||||
|
|
|
@ -1031,15 +1031,6 @@ struct FMiniBSP
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// posts are runs of non masked source pixels
|
|
||||||
struct column_t
|
|
||||||
{
|
|
||||||
BYTE topdelta; // -1 is the last post in a column
|
|
||||||
BYTE length; // length data bytes follows
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// OTHER TYPES
|
// OTHER TYPES
|
||||||
//
|
//
|
||||||
|
|
|
@ -2043,6 +2043,18 @@ void R_DrawBorder (int x1, int y1, int x2, int y2)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//==========================================================================
|
||||||
|
//
|
||||||
|
// R_GetColumn
|
||||||
|
//
|
||||||
|
//==========================================================================
|
||||||
|
|
||||||
|
const BYTE *R_GetColumn (FTexture *tex, int col)
|
||||||
|
{
|
||||||
|
return tex->GetColumn (col, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
==================
|
==================
|
||||||
=
|
=
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
#ifndef __R_DRAW__
|
#ifndef __R_DRAW__
|
||||||
#define __R_DRAW__
|
#define __R_DRAW__
|
||||||
|
|
||||||
#include "r_data.h"
|
#include "r_defs.h"
|
||||||
|
|
||||||
extern "C" int ylookup[MAXHEIGHT];
|
extern "C" int ylookup[MAXHEIGHT];
|
||||||
|
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
**
|
**
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "r_data.h"
|
|
||||||
#include "p_3dmidtex.h"
|
#include "p_3dmidtex.h"
|
||||||
#include "stats.h"
|
#include "stats.h"
|
||||||
#include "r_interpolate.h"
|
#include "r_interpolate.h"
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
#ifndef R_INTERPOLATE_H
|
#ifndef R_INTERPOLATE_H
|
||||||
#define R_INTERPOLATE_H
|
#define R_INTERPOLATE_H
|
||||||
|
|
||||||
|
#include "dobject.h"
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
|
|
|
@ -30,7 +30,6 @@
|
||||||
#include "doomdef.h"
|
#include "doomdef.h"
|
||||||
|
|
||||||
// Include the refresh/render data structs.
|
// Include the refresh/render data structs.
|
||||||
#include "r_data.h"
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Separate header file for each module.
|
// Separate header file for each module.
|
||||||
|
|
|
@ -52,6 +52,8 @@
|
||||||
#include "r_3dfloors.h"
|
#include "r_3dfloors.h"
|
||||||
#include "v_palette.h"
|
#include "v_palette.h"
|
||||||
#include "po_man.h"
|
#include "po_man.h"
|
||||||
|
#include "st_start.h"
|
||||||
|
#include "v_font.h"
|
||||||
#include "resources/colormaps.h"
|
#include "resources/colormaps.h"
|
||||||
|
|
||||||
// MACROS ------------------------------------------------------------------
|
// MACROS ------------------------------------------------------------------
|
||||||
|
@ -810,7 +812,12 @@ void R_Init ()
|
||||||
{
|
{
|
||||||
atterm (R_Shutdown);
|
atterm (R_Shutdown);
|
||||||
|
|
||||||
R_InitData ();
|
StartScreen->Progress();
|
||||||
|
V_InitFonts();
|
||||||
|
StartScreen->Progress();
|
||||||
|
R_InitColormaps ();
|
||||||
|
StartScreen->Progress();
|
||||||
|
|
||||||
R_InitPointToAngle ();
|
R_InitPointToAngle ();
|
||||||
R_InitTables ();
|
R_InitTables ();
|
||||||
// viewwidth / viewheight are set by the defaults
|
// viewwidth / viewheight are set by the defaults
|
||||||
|
@ -845,7 +852,22 @@ static void R_Shutdown ()
|
||||||
R_DeinitParticles();
|
R_DeinitParticles();
|
||||||
R_DeinitTranslationTables();
|
R_DeinitTranslationTables();
|
||||||
R_DeinitPlanes();
|
R_DeinitPlanes();
|
||||||
R_DeinitData();
|
R_DeinitColormaps ();
|
||||||
|
FCanvasTextureInfo::EmptyList();
|
||||||
|
|
||||||
|
// Free openings
|
||||||
|
if (openings != NULL)
|
||||||
|
{
|
||||||
|
M_Free (openings);
|
||||||
|
openings = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Free drawsegs
|
||||||
|
if (drawsegs != NULL)
|
||||||
|
{
|
||||||
|
M_Free (drawsegs);
|
||||||
|
drawsegs = NULL;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
|
|
22
src/r_main.h
22
src/r_main.h
|
@ -28,9 +28,9 @@
|
||||||
#define NUMCOLORMAPS 32
|
#define NUMCOLORMAPS 32
|
||||||
|
|
||||||
#include "d_player.h"
|
#include "d_player.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "r_state.h"
|
#include "r_state.h"
|
||||||
#include "v_palette.h"
|
#include "v_palette.h"
|
||||||
|
#include "resources/colormaps.h"
|
||||||
|
|
||||||
|
|
||||||
//
|
//
|
||||||
|
@ -214,4 +214,24 @@ extern angle_t stacked_angle;
|
||||||
|
|
||||||
extern void R_CopyStackedViewParameters();
|
extern void R_CopyStackedViewParameters();
|
||||||
|
|
||||||
|
// This list keeps track of the cameras that draw into canvas textures.
|
||||||
|
struct FCanvasTextureInfo
|
||||||
|
{
|
||||||
|
FCanvasTextureInfo *Next;
|
||||||
|
TObjPtr<AActor> Viewpoint;
|
||||||
|
FCanvasTexture *Texture;
|
||||||
|
FTextureID PicNum;
|
||||||
|
int FOV;
|
||||||
|
|
||||||
|
static void Add (AActor *viewpoint, FTextureID picnum, int fov);
|
||||||
|
static void UpdateAll ();
|
||||||
|
static void EmptyList ();
|
||||||
|
static void Serialize (FArchive &arc);
|
||||||
|
static void Mark();
|
||||||
|
|
||||||
|
private:
|
||||||
|
static FCanvasTextureInfo *List;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
#endif // __R_MAIN_H__
|
#endif // __R_MAIN_H__
|
||||||
|
|
|
@ -24,7 +24,6 @@
|
||||||
#define __R_PLANE_H__
|
#define __R_PLANE_H__
|
||||||
|
|
||||||
#include <stddef.h>
|
#include <stddef.h>
|
||||||
#include "r_data.h"
|
|
||||||
|
|
||||||
class ASkyViewpoint;
|
class ASkyViewpoint;
|
||||||
|
|
||||||
|
|
|
@ -81,6 +81,7 @@ Low priority:
|
||||||
#include "r_bsp.h"
|
#include "r_bsp.h"
|
||||||
#include "v_palette.h"
|
#include "v_palette.h"
|
||||||
#include "v_font.h"
|
#include "v_font.h"
|
||||||
|
#include "v_video.h"
|
||||||
#include "resources/colormaps.h"
|
#include "resources/colormaps.h"
|
||||||
|
|
||||||
EXTERN_CVAR (Int, r_polymost)
|
EXTERN_CVAR (Int, r_polymost)
|
||||||
|
|
|
@ -28,7 +28,6 @@
|
||||||
|
|
||||||
// Needed for FRACUNIT.
|
// Needed for FRACUNIT.
|
||||||
#include "m_fixed.h"
|
#include "m_fixed.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "c_cvars.h"
|
#include "c_cvars.h"
|
||||||
#include "g_level.h"
|
#include "g_level.h"
|
||||||
#include "r_sky.h"
|
#include "r_sky.h"
|
||||||
|
|
|
@ -25,7 +25,6 @@
|
||||||
|
|
||||||
// Need data structure definitions.
|
// Need data structure definitions.
|
||||||
#include "d_player.h"
|
#include "d_player.h"
|
||||||
#include "r_data.h"
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Refresh internal data structures,
|
// Refresh internal data structures,
|
||||||
|
@ -130,4 +129,6 @@ extern sector_t* viewsector; // [RH] keep track of sector viewing from
|
||||||
extern angle_t xtoviewangle[MAXWIDTH+1];
|
extern angle_t xtoviewangle[MAXWIDTH+1];
|
||||||
extern int FieldOfView;
|
extern int FieldOfView;
|
||||||
|
|
||||||
|
int R_FindSkin (const char *name, int pclass); // [RH] Find a skin
|
||||||
|
|
||||||
#endif // __R_STATE_H__
|
#endif // __R_STATE_H__
|
||||||
|
|
|
@ -43,7 +43,6 @@
|
||||||
#include "r_local.h"
|
#include "r_local.h"
|
||||||
#include "r_sky.h"
|
#include "r_sky.h"
|
||||||
#include "c_dispatch.h"
|
#include "c_dispatch.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "sc_man.h"
|
#include "sc_man.h"
|
||||||
#include "v_text.h"
|
#include "v_text.h"
|
||||||
#include "st_start.h"
|
#include "st_start.h"
|
||||||
|
@ -53,6 +52,7 @@
|
||||||
#include "v_palette.h"
|
#include "v_palette.h"
|
||||||
#include "colormatcher.h"
|
#include "colormatcher.h"
|
||||||
#include "colormaps.h"
|
#include "colormaps.h"
|
||||||
|
#include "v_video.h"
|
||||||
|
|
||||||
static bool R_CheckForFixedLights(const BYTE *colormaps);
|
static bool R_CheckForFixedLights(const BYTE *colormaps);
|
||||||
|
|
||||||
|
|
|
@ -46,10 +46,10 @@
|
||||||
#include "gi.h"
|
#include "gi.h"
|
||||||
#include "doomstat.h"
|
#include "doomstat.h"
|
||||||
#include "i_sound.h"
|
#include "i_sound.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "m_random.h"
|
#include "m_random.h"
|
||||||
#include "d_netinf.h"
|
#include "d_netinf.h"
|
||||||
#include "i_system.h"
|
#include "i_system.h"
|
||||||
|
#include "d_player.h"
|
||||||
|
|
||||||
// MACROS ------------------------------------------------------------------
|
// MACROS ------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
|
@ -37,8 +37,8 @@
|
||||||
|
|
||||||
#include "doomtype.h"
|
#include "doomtype.h"
|
||||||
#include "files.h"
|
#include "files.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "w_wad.h"
|
#include "w_wad.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
//
|
//
|
||||||
|
|
|
@ -40,6 +40,7 @@
|
||||||
#include "templates.h"
|
#include "templates.h"
|
||||||
#include "cmdlib.h"
|
#include "cmdlib.h"
|
||||||
#include "st_start.h"
|
#include "st_start.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
//
|
//
|
||||||
|
|
|
@ -37,6 +37,8 @@
|
||||||
#include "files.h"
|
#include "files.h"
|
||||||
#include "r_local.h"
|
#include "r_local.h"
|
||||||
#include "v_palette.h"
|
#include "v_palette.h"
|
||||||
|
#include "v_video.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
extern float LastFOV;
|
extern float LastFOV;
|
||||||
|
|
||||||
|
|
|
@ -54,6 +54,8 @@
|
||||||
#include "w_wad.h"
|
#include "w_wad.h"
|
||||||
#include "templates.h"
|
#include "templates.h"
|
||||||
#include "bitmap.h"
|
#include "bitmap.h"
|
||||||
|
#include "v_video.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
// Since we want this to compile under Linux too, we need to define this
|
// Since we want this to compile under Linux too, we need to define this
|
||||||
// stuff ourselves instead of including a DirectX header.
|
// stuff ourselves instead of including a DirectX header.
|
||||||
|
|
|
@ -36,8 +36,8 @@
|
||||||
|
|
||||||
#include "doomtype.h"
|
#include "doomtype.h"
|
||||||
#include "files.h"
|
#include "files.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "w_wad.h"
|
#include "w_wad.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
//
|
//
|
||||||
|
|
|
@ -35,9 +35,9 @@
|
||||||
|
|
||||||
#include "doomtype.h"
|
#include "doomtype.h"
|
||||||
#include "files.h"
|
#include "files.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "w_wad.h"
|
#include "w_wad.h"
|
||||||
#include "v_palette.h"
|
#include "v_palette.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
//
|
//
|
||||||
|
|
|
@ -35,8 +35,8 @@
|
||||||
|
|
||||||
#include "doomtype.h"
|
#include "doomtype.h"
|
||||||
#include "files.h"
|
#include "files.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "w_wad.h"
|
#include "w_wad.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
|
|
|
@ -35,11 +35,12 @@
|
||||||
|
|
||||||
#include "doomtype.h"
|
#include "doomtype.h"
|
||||||
#include "files.h"
|
#include "files.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "r_jpeg.h"
|
#include "r_jpeg.h"
|
||||||
#include "w_wad.h"
|
#include "w_wad.h"
|
||||||
#include "v_text.h"
|
#include "v_text.h"
|
||||||
#include "bitmap.h"
|
#include "bitmap.h"
|
||||||
|
#include "v_video.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
//
|
//
|
||||||
|
|
|
@ -36,7 +36,6 @@
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include "doomtype.h"
|
#include "doomtype.h"
|
||||||
#include "files.h"
|
#include "files.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "w_wad.h"
|
#include "w_wad.h"
|
||||||
#include "i_system.h"
|
#include "i_system.h"
|
||||||
#include "gi.h"
|
#include "gi.h"
|
||||||
|
@ -47,6 +46,9 @@
|
||||||
#include "bitmap.h"
|
#include "bitmap.h"
|
||||||
#include "colormatcher.h"
|
#include "colormatcher.h"
|
||||||
#include "v_palette.h"
|
#include "v_palette.h"
|
||||||
|
#include "v_video.h"
|
||||||
|
#include "m_fixed.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
#include "resources/colormaps.h"
|
#include "resources/colormaps.h"
|
||||||
|
|
||||||
// On the Alpha, accessing the shorts directly if they aren't aligned on a
|
// On the Alpha, accessing the shorts directly if they aren't aligned on a
|
||||||
|
|
|
@ -35,10 +35,18 @@
|
||||||
|
|
||||||
#include "doomtype.h"
|
#include "doomtype.h"
|
||||||
#include "files.h"
|
#include "files.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "w_wad.h"
|
#include "w_wad.h"
|
||||||
#include "templates.h"
|
#include "templates.h"
|
||||||
#include "v_palette.h"
|
#include "v_palette.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
|
|
||||||
|
// posts are runs of non masked source pixels
|
||||||
|
struct column_t
|
||||||
|
{
|
||||||
|
BYTE topdelta; // -1 is the last post in a column
|
||||||
|
BYTE length; // length data bytes follows
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
|
|
|
@ -41,6 +41,8 @@
|
||||||
#include "templates.h"
|
#include "templates.h"
|
||||||
#include "bitmap.h"
|
#include "bitmap.h"
|
||||||
#include "colormatcher.h"
|
#include "colormatcher.h"
|
||||||
|
#include "v_video.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
//
|
//
|
||||||
|
|
|
@ -41,6 +41,7 @@
|
||||||
#include "m_png.h"
|
#include "m_png.h"
|
||||||
#include "bitmap.h"
|
#include "bitmap.h"
|
||||||
#include "v_palette.h"
|
#include "v_palette.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
//
|
//
|
||||||
|
|
|
@ -35,9 +35,9 @@
|
||||||
|
|
||||||
#include "doomtype.h"
|
#include "doomtype.h"
|
||||||
#include "files.h"
|
#include "files.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "w_wad.h"
|
#include "w_wad.h"
|
||||||
#include "v_palette.h"
|
#include "v_palette.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
|
|
|
@ -36,12 +36,15 @@
|
||||||
#include "doomtype.h"
|
#include "doomtype.h"
|
||||||
#include "files.h"
|
#include "files.h"
|
||||||
#include "w_wad.h"
|
#include "w_wad.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "templates.h"
|
#include "templates.h"
|
||||||
#include "i_system.h"
|
#include "i_system.h"
|
||||||
#include "r_translate.h"
|
#include "r_translate.h"
|
||||||
#include "bitmap.h"
|
#include "bitmap.h"
|
||||||
#include "colormatcher.h"
|
#include "colormatcher.h"
|
||||||
|
#include "c_dispatch.h"
|
||||||
|
#include "v_video.h"
|
||||||
|
#include "m_fixed.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
typedef bool (*CheckFunc)(FileReader & file);
|
typedef bool (*CheckFunc)(FileReader & file);
|
||||||
typedef FTexture * (*CreateFunc)(FileReader & file, int lumpnum);
|
typedef FTexture * (*CreateFunc)(FileReader & file, int lumpnum);
|
||||||
|
@ -596,3 +599,37 @@ const BYTE *FDummyTexture::GetPixels ()
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//==========================================================================
|
||||||
|
//
|
||||||
|
// Debug stuff
|
||||||
|
//
|
||||||
|
//==========================================================================
|
||||||
|
|
||||||
|
#ifdef _DEBUG
|
||||||
|
// Prints the spans generated for a texture. Only needed for debugging.
|
||||||
|
CCMD (printspans)
|
||||||
|
{
|
||||||
|
if (argv.argc() != 2)
|
||||||
|
return;
|
||||||
|
|
||||||
|
FTextureID picnum = TexMan.CheckForTexture (argv[1], FTexture::TEX_Any);
|
||||||
|
if (!picnum.Exists())
|
||||||
|
{
|
||||||
|
Printf ("Unknown texture %s\n", argv[1]);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
FTexture *tex = TexMan[picnum];
|
||||||
|
for (int x = 0; x < tex->GetWidth(); ++x)
|
||||||
|
{
|
||||||
|
const FTexture::Span *spans;
|
||||||
|
Printf ("%4d:", x);
|
||||||
|
tex->GetColumn (x, &spans);
|
||||||
|
while (spans->Length != 0)
|
||||||
|
{
|
||||||
|
Printf (" (%4d,%4d)", spans->TopOffset, spans->TopOffset+spans->Length-1);
|
||||||
|
spans++;
|
||||||
|
}
|
||||||
|
Printf ("\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
|
@ -35,8 +35,8 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "doomtype.h"
|
#include "doomtype.h"
|
||||||
|
#include "doomstat.h"
|
||||||
#include "w_wad.h"
|
#include "w_wad.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "templates.h"
|
#include "templates.h"
|
||||||
#include "i_system.h"
|
#include "i_system.h"
|
||||||
#include "r_translate.h"
|
#include "r_translate.h"
|
||||||
|
@ -47,6 +47,10 @@
|
||||||
#include "st_start.h"
|
#include "st_start.h"
|
||||||
#include "cmdlib.h"
|
#include "cmdlib.h"
|
||||||
#include "g_level.h"
|
#include "g_level.h"
|
||||||
|
#include "m_fixed.h"
|
||||||
|
#include "farchive.h"
|
||||||
|
#include "v_video.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
FTextureManager TexMan;
|
FTextureManager TexMan;
|
||||||
|
|
||||||
|
@ -1143,6 +1147,36 @@ int FTextureManager::CountLumpTextures (int lumpnum)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//===========================================================================
|
||||||
|
//
|
||||||
|
// R_PrecacheLevel
|
||||||
|
//
|
||||||
|
// Preloads all relevant graphics for the level.
|
||||||
|
//
|
||||||
|
//===========================================================================
|
||||||
|
|
||||||
|
void FTextureManager::PrecacheLevel (void)
|
||||||
|
{
|
||||||
|
BYTE *hitlist;
|
||||||
|
int cnt = NumTextures();
|
||||||
|
|
||||||
|
if (demoplayback)
|
||||||
|
return;
|
||||||
|
|
||||||
|
hitlist = new BYTE[cnt];
|
||||||
|
memset (hitlist, 0, cnt);
|
||||||
|
|
||||||
|
screen->GetHitlist(hitlist);
|
||||||
|
for (int i = cnt - 1; i >= 0; i--)
|
||||||
|
{
|
||||||
|
screen->PrecacheTexture(ByIndex(i), hitlist[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
delete[] hitlist;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
//
|
//
|
||||||
|
|
|
@ -392,6 +392,7 @@ public:
|
||||||
void UnloadAll ();
|
void UnloadAll ();
|
||||||
|
|
||||||
int NumTextures () const { return (int)Textures.Size(); }
|
int NumTextures () const { return (int)Textures.Size(); }
|
||||||
|
void PrecacheLevel (void);
|
||||||
|
|
||||||
void WriteTexture (FArchive &arc, int picnum);
|
void WriteTexture (FArchive &arc, int picnum);
|
||||||
int ReadTexture (FArchive &arc);
|
int ReadTexture (FArchive &arc);
|
||||||
|
@ -457,6 +458,86 @@ private:
|
||||||
TArray<BYTE *> BuildTileFiles;
|
TArray<BYTE *> BuildTileFiles;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// A texture that doesn't really exist
|
||||||
|
class FDummyTexture : public FTexture
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
FDummyTexture ();
|
||||||
|
const BYTE *GetColumn (unsigned int column, const Span **spans_out);
|
||||||
|
const BYTE *GetPixels ();
|
||||||
|
void Unload ();
|
||||||
|
void SetSize (int width, int height);
|
||||||
|
};
|
||||||
|
|
||||||
|
// A texture that returns a wiggly version of another texture.
|
||||||
|
class FWarpTexture : public FTexture
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
FWarpTexture (FTexture *source);
|
||||||
|
~FWarpTexture ();
|
||||||
|
|
||||||
|
virtual int CopyTrueColorPixels(FBitmap *bmp, int x, int y, int rotate=0, FCopyInfo *inf = NULL);
|
||||||
|
const BYTE *GetColumn (unsigned int column, const Span **spans_out);
|
||||||
|
const BYTE *GetPixels ();
|
||||||
|
void Unload ();
|
||||||
|
bool CheckModified ();
|
||||||
|
|
||||||
|
float GetSpeed() const { return Speed; }
|
||||||
|
int GetSourceLump() { return SourcePic->GetSourceLump(); }
|
||||||
|
void SetSpeed(float fac) { Speed = fac; }
|
||||||
|
FTexture *GetRedirect(bool wantwarped);
|
||||||
|
|
||||||
|
DWORD GenTime;
|
||||||
|
protected:
|
||||||
|
FTexture *SourcePic;
|
||||||
|
BYTE *Pixels;
|
||||||
|
Span **Spans;
|
||||||
|
float Speed;
|
||||||
|
|
||||||
|
virtual void MakeTexture (DWORD time);
|
||||||
|
};
|
||||||
|
|
||||||
|
// [GRB] Eternity-like warping
|
||||||
|
class FWarp2Texture : public FWarpTexture
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
FWarp2Texture (FTexture *source);
|
||||||
|
|
||||||
|
protected:
|
||||||
|
void MakeTexture (DWORD time);
|
||||||
|
};
|
||||||
|
|
||||||
|
// A texture that can be drawn to.
|
||||||
|
class DSimpleCanvas;
|
||||||
|
class AActor;
|
||||||
|
class FArchive;
|
||||||
|
|
||||||
|
class FCanvasTexture : public FTexture
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
FCanvasTexture (const char *name, int width, int height);
|
||||||
|
~FCanvasTexture ();
|
||||||
|
|
||||||
|
const BYTE *GetColumn (unsigned int column, const Span **spans_out);
|
||||||
|
const BYTE *GetPixels ();
|
||||||
|
void Unload ();
|
||||||
|
bool CheckModified ();
|
||||||
|
void RenderView (AActor *viewpoint, int fov);
|
||||||
|
void NeedUpdate() { bNeedsUpdate=true; }
|
||||||
|
|
||||||
|
protected:
|
||||||
|
DSimpleCanvas *Canvas;
|
||||||
|
BYTE *Pixels;
|
||||||
|
Span DummySpans[2];
|
||||||
|
BYTE bNeedsUpdate:1;
|
||||||
|
BYTE bDidUpdate:1;
|
||||||
|
BYTE bFirstUpdate:1;
|
||||||
|
|
||||||
|
void MakeTexture ();
|
||||||
|
|
||||||
|
friend struct FCanvasTextureInfo;
|
||||||
|
};
|
||||||
|
|
||||||
extern FTextureManager TexMan;
|
extern FTextureManager TexMan;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -40,6 +40,8 @@
|
||||||
#include "templates.h"
|
#include "templates.h"
|
||||||
#include "bitmap.h"
|
#include "bitmap.h"
|
||||||
#include "colormatcher.h"
|
#include "colormatcher.h"
|
||||||
|
#include "v_video.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
|
|
|
@ -35,9 +35,9 @@
|
||||||
|
|
||||||
#include "doomtype.h"
|
#include "doomtype.h"
|
||||||
#include "files.h"
|
#include "files.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "r_main.h"
|
#include "r_main.h"
|
||||||
#include "templates.h"
|
#include "templates.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
|
|
||||||
FWarpTexture::FWarpTexture (FTexture *source)
|
FWarpTexture::FWarpTexture (FTexture *source)
|
||||||
|
|
|
@ -68,6 +68,7 @@
|
||||||
#include "a_morph.h"
|
#include "a_morph.h"
|
||||||
#include "colormatcher.h"
|
#include "colormatcher.h"
|
||||||
#include "teaminfo.h"
|
#include "teaminfo.h"
|
||||||
|
#include "v_video.h"
|
||||||
#include "resources/colormaps.h"
|
#include "resources/colormaps.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -85,7 +85,6 @@ The FON2 header is followed by variable length data:
|
||||||
#include "v_font.h"
|
#include "v_font.h"
|
||||||
#include "v_video.h"
|
#include "v_video.h"
|
||||||
#include "w_wad.h"
|
#include "w_wad.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "i_system.h"
|
#include "i_system.h"
|
||||||
#include "gi.h"
|
#include "gi.h"
|
||||||
#include "cmdlib.h"
|
#include "cmdlib.h"
|
||||||
|
|
|
@ -83,8 +83,8 @@
|
||||||
#include "doomstat.h"
|
#include "doomstat.h"
|
||||||
#include "v_palette.h"
|
#include "v_palette.h"
|
||||||
#include "stats.h"
|
#include "stats.h"
|
||||||
#include "r_data.h"
|
|
||||||
#include "textures/bitmap.h"
|
#include "textures/bitmap.h"
|
||||||
|
#include "textures/textures.h"
|
||||||
|
|
||||||
// MACROS ------------------------------------------------------------------
|
// MACROS ------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
|
@ -2323,10 +2323,6 @@
|
||||||
RelativePath=".\src\r_bsp.cpp"
|
RelativePath=".\src\r_bsp.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath=".\src\r_data.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath=".\src\r_draw.cpp"
|
RelativePath=".\src\r_draw.cpp"
|
||||||
>
|
>
|
||||||
|
|
Loading…
Reference in a new issue