Browse Source

Get rid of the SHADER_CRAP macro and use LOL_EXPERIMENTAL instead,

together with the --enable-experimental flag. Use LOL_DEBUG and
LOL_RELEASE instead of the previous values.
legacy
Sam Hocevar sam 15 years ago
parent
commit
4df4ba3a78
14 changed files with 44 additions and 41 deletions
  1. +8
    -2
      configure.ac
  2. +0
    -3
      src/core.h
  3. +1
    -1
      src/dict.cpp
  4. +4
    -4
      src/entity.cpp
  5. +1
    -1
      src/entity.h
  6. +1
    -1
      src/sample.cpp
  7. +2
    -2
      src/scene.cpp
  8. +9
    -9
      src/ticker.cpp
  9. +7
    -7
      src/tiler.cpp
  10. +1
    -1
      src/tileset.cpp
  11. +7
    -7
      src/video.cpp
  12. +1
    -1
      win32/deushax.vcxproj
  13. +1
    -1
      win32/editor.vcxproj
  14. +1
    -1
      win32/monsterz.vcxproj

+ 8
- 2
configure.ac View File

@@ -43,6 +43,8 @@ AC_ARG_ENABLE(debug,
[ --enable-debug build debug versions of the game (default no)]) [ --enable-debug build debug versions of the game (default no)])
AC_ARG_ENABLE(release, AC_ARG_ENABLE(release,
[ --enable-release build final release of the game (default no)]) [ --enable-release build final release of the game (default no)])
AC_ARG_ENABLE(experimental,
[ --enable-experimental experimental build (default no)])


AC_ARG_ENABLE(cppunit, AC_ARG_ENABLE(cppunit,
[ --enable-cppunit use cppunit for unit tests (autodetected)]) [ --enable-cppunit use cppunit for unit tests (autodetected)])
@@ -50,19 +52,23 @@ AC_ARG_ENABLE(cppunit,
AC_CHECK_HEADERS(stdio.h stdarg.h inttypes.h endian.h stdint.h getopt.h) AC_CHECK_HEADERS(stdio.h stdarg.h inttypes.h endian.h stdint.h getopt.h)


if test "${enable_debug}" = "yes"; then if test "${enable_debug}" = "yes"; then
AC_DEFINE(_DEBUG, 1, Define to 1 to activate debug)
AC_DEFINE(LOL_DEBUG, 1, Define to 1 to activate debug)
OPT="-O0" OPT="-O0"
else else
OPT="-O2" OPT="-O2"
fi fi


if test "${enable_release}" = "yes"; then if test "${enable_release}" = "yes"; then
AC_DEFINE(FINAL_RELEASE, 1, Define to 1 to activate final release)
AC_DEFINE(LOL_RELEASE, 1, Define to 1 to activate final release)
REL="" REL=""
else else
REL="-g" REL="-g"
fi fi


if test "${enable_experimental}" = "yes"; then
AC_DEFINE(LOL_EXPERIMENTAL, 1, Define to 1 to activate experimental build)
fi

# Optimizations # Optimizations
CXXFLAGS="${CXXFLAGS} ${REL} ${OPT} -fno-strength-reduce -fomit-frame-pointer" CXXFLAGS="${CXXFLAGS} ${REL} ${OPT} -fno-strength-reduce -fomit-frame-pointer"
# Code qui fait des warnings == code de porc == deux baffes dans ta gueule # Code qui fait des warnings == code de porc == deux baffes dans ta gueule


+ 0
- 3
src/core.h View File

@@ -16,9 +16,6 @@
#if !defined __DH_CORE_H__ #if !defined __DH_CORE_H__
#define __DH_CORE_H__ #define __DH_CORE_H__


// Temporary stuff
//#define SHADER_CRAP 1

// Base types // Base types
#include "matrix.h" #include "matrix.h"
#include "numeric.h" #include "numeric.h"


+ 1
- 1
src/dict.cpp View File

@@ -41,7 +41,7 @@ public:


~DictData() ~DictData()
{ {
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (nentities) if (nentities)
fprintf(stderr, "ERROR: still %i entities in dict\n", nentities); fprintf(stderr, "ERROR: still %i entities in dict\n", nentities);
#endif #endif


+ 4
- 4
src/entity.cpp View File

@@ -27,7 +27,7 @@ Entity::Entity() :
ref(0), ref(0),
destroy(0) destroy(0)
{ {
#if !FINAL_RELEASE
#if !LOL_RELEASE
state = STATE_IDLE; state = STATE_IDLE;
#endif #endif
gamegroup = GAMEGROUP_DEFAULT; gamegroup = GAMEGROUP_DEFAULT;
@@ -37,7 +37,7 @@ Entity::Entity() :


Entity::~Entity() Entity::~Entity()
{ {
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (!destroy) if (!destroy)
fprintf(stderr, "ERROR: entity destructor called directly\n"); fprintf(stderr, "ERROR: entity destructor called directly\n");
#endif #endif
@@ -50,7 +50,7 @@ char const *Entity::GetName()


void Entity::TickGame(float deltams) void Entity::TickGame(float deltams)
{ {
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (state != STATE_PRETICK_GAME) if (state != STATE_PRETICK_GAME)
fprintf(stderr, "ERROR: invalid entity game tick\n"); fprintf(stderr, "ERROR: invalid entity game tick\n");
state = STATE_POSTTICK_GAME; state = STATE_POSTTICK_GAME;
@@ -59,7 +59,7 @@ void Entity::TickGame(float deltams)


void Entity::TickDraw(float deltams) void Entity::TickDraw(float deltams)
{ {
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (state != STATE_PRETICK_DRAW) if (state != STATE_PRETICK_DRAW)
fprintf(stderr, "ERROR: invalid entity draw tick\n"); fprintf(stderr, "ERROR: invalid entity draw tick\n");
state = STATE_POSTTICK_DRAW; state = STATE_POSTTICK_DRAW;


+ 1
- 1
src/entity.h View File

@@ -62,7 +62,7 @@ protected:
static int const DRAWGROUP_BEGIN = GAMEGROUP_END; static int const DRAWGROUP_BEGIN = GAMEGROUP_END;
static int const ALLGROUP_END = DRAWGROUP_END; static int const ALLGROUP_END = DRAWGROUP_END;


#if !FINAL_RELEASE
#if !LOL_RELEASE
enum enum
{ {
STATE_IDLE = 0, STATE_IDLE = 0,


+ 1
- 1
src/sample.cpp View File

@@ -47,7 +47,7 @@ Sample::Sample(char const *path)
data->chunk = Mix_LoadWAV(path); data->chunk = Mix_LoadWAV(path);
if (!data->chunk) if (!data->chunk)
{ {
#if !FINAL_RELEASE
#if !LOL_RELEASE
fprintf(stderr, "ERROR: could not load %s\n", path); fprintf(stderr, "ERROR: could not load %s\n", path);
#endif #endif
SDL_Quit(); SDL_Quit();


+ 2
- 2
src/scene.cpp View File

@@ -35,7 +35,7 @@ struct Tile
int x, y, z, o; int x, y, z, o;
}; };


#if SHADER_CRAP
#if LOL_EXPERIMENTAL
extern GLuint prog; extern GLuint prog;
#endif #endif


@@ -134,7 +134,7 @@ void Scene::Render() // XXX: rename to Blit()
#endif #endif
qsort(data->tiles, data->ntiles, sizeof(Tile), SceneData::Compare); qsort(data->tiles, data->ntiles, sizeof(Tile), SceneData::Compare);


#if SHADER_CRAP
#if LOL_EXPERIMENTAL
float *vertices = new float[18]; float *vertices = new float[18];
vertices[0] = -0.5f; vertices[1] = 0.5f; vertices[2] = 0.0f; vertices[0] = -0.5f; vertices[1] = 0.5f; vertices[2] = 0.0f;
vertices[3] = 0.5f; vertices[4] = 0.5f; vertices[5] = 0.0f; vertices[3] = 0.5f; vertices[4] = 0.5f; vertices[5] = 0.0f;


+ 9
- 9
src/ticker.cpp View File

@@ -39,7 +39,7 @@ public:


~TickerData() ~TickerData()
{ {
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (nentities) if (nentities)
fprintf(stderr, "ERROR: still %i entities in ticker\n", nentities); fprintf(stderr, "ERROR: still %i entities in ticker\n", nentities);
if (autolist) if (autolist)
@@ -94,7 +94,7 @@ void Ticker::Register(Entity *entity)


void Ticker::Ref(Entity *entity) void Ticker::Ref(Entity *entity)
{ {
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (!entity) if (!entity)
{ {
fprintf(stderr, "ERROR: refing NULL entity\n"); fprintf(stderr, "ERROR: refing NULL entity\n");
@@ -125,7 +125,7 @@ void Ticker::Ref(Entity *entity)


int Ticker::Unref(Entity *entity) int Ticker::Unref(Entity *entity)
{ {
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (!entity) if (!entity)
{ {
fprintf(stderr, "ERROR: dereferencing NULL entity\n"); fprintf(stderr, "ERROR: dereferencing NULL entity\n");
@@ -192,14 +192,14 @@ void Ticker::TickGame()
for (Entity *e = data->list[i]; e && n < data->panic; e = e->gamenext) for (Entity *e = data->list[i]; e && n < data->panic; e = e->gamenext)
if (e->ref) if (e->ref)
{ {
#if !FINAL_RELEASE
#if !LOL_RELEASE
fprintf(stderr, "ERROR: poking %s\n", e->GetName()); fprintf(stderr, "ERROR: poking %s\n", e->GetName());
#endif #endif
e->ref--; e->ref--;
n++; n++;
} }


#if !FINAL_RELEASE
#if !LOL_RELEASE
if (n) if (n)
fprintf(stderr, "ERROR: %i entities stuck after %i frames, " fprintf(stderr, "ERROR: %i entities stuck after %i frames, "
"poked %i\n", data->nentities, data->quitdelay, n); "poked %i\n", data->nentities, data->quitdelay, n);
@@ -260,13 +260,13 @@ void Ticker::TickGame()
for (Entity *e = data->list[i]; e; e = e->gamenext) for (Entity *e = data->list[i]; e; e = e->gamenext)
if (!e->destroy) if (!e->destroy)
{ {
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (e->state != Entity::STATE_IDLE) if (e->state != Entity::STATE_IDLE)
fprintf(stderr, "ERROR: entity not idle for game tick\n"); fprintf(stderr, "ERROR: entity not idle for game tick\n");
e->state = Entity::STATE_PRETICK_GAME; e->state = Entity::STATE_PRETICK_GAME;
#endif #endif
e->TickGame(data->deltams); e->TickGame(data->deltams);
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (e->state != Entity::STATE_POSTTICK_GAME) if (e->state != Entity::STATE_POSTTICK_GAME)
fprintf(stderr, "ERROR: entity missed super game tick\n"); fprintf(stderr, "ERROR: entity missed super game tick\n");
e->state = Entity::STATE_IDLE; e->state = Entity::STATE_IDLE;
@@ -301,13 +301,13 @@ void Ticker::TickDraw()
for (Entity *e = data->list[i]; e; e = e->drawnext) for (Entity *e = data->list[i]; e; e = e->drawnext)
if (!e->destroy) if (!e->destroy)
{ {
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (e->state != Entity::STATE_IDLE) if (e->state != Entity::STATE_IDLE)
fprintf(stderr, "ERROR: entity not idle for draw tick\n"); fprintf(stderr, "ERROR: entity not idle for draw tick\n");
e->state = Entity::STATE_PRETICK_DRAW; e->state = Entity::STATE_PRETICK_DRAW;
#endif #endif
e->TickDraw(data->deltams); e->TickDraw(data->deltams);
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (e->state != Entity::STATE_POSTTICK_DRAW) if (e->state != Entity::STATE_POSTTICK_DRAW)
fprintf(stderr, "ERROR: entity missed super draw tick\n"); fprintf(stderr, "ERROR: entity missed super draw tick\n");
e->state = Entity::STATE_IDLE; e->state = Entity::STATE_IDLE;


+ 7
- 7
src/tiler.cpp View File

@@ -26,14 +26,14 @@ static class TilerData


public: public:
TilerData() TilerData()
#if !FINAL_RELEASE
#if !LOL_RELEASE
: lasterror(-1) : lasterror(-1)
#endif #endif
{ } { }


private: private:
Dict tilesets; Dict tilesets;
#if !FINAL_RELEASE
#if !LOL_RELEASE
int lasterror; int lasterror;
#endif #endif
} }
@@ -53,7 +53,7 @@ int Tiler::Register(char const *path, int2 size, int2 count, float dilate)
{ {
TileSet *tileset = new TileSet(path, size, count, dilate); TileSet *tileset = new TileSet(path, size, count, dilate);
data->tilesets.SetEntity(id, tileset); data->tilesets.SetEntity(id, tileset);
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (id == data->lasterror) if (id == data->lasterror)
data->lasterror = -1; data->lasterror = -1;
#endif #endif
@@ -70,7 +70,7 @@ void Tiler::Deregister(int id)
int2 Tiler::GetSize(int id) int2 Tiler::GetSize(int id)
{ {
TileSet *tileset = (TileSet *)data->tilesets.GetEntity(id - 1); TileSet *tileset = (TileSet *)data->tilesets.GetEntity(id - 1);
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (!tileset) if (!tileset)
{ {
fprintf(stderr, "ERROR: getting size for null tiler #%i\n", id); fprintf(stderr, "ERROR: getting size for null tiler #%i\n", id);
@@ -83,7 +83,7 @@ int2 Tiler::GetSize(int id)
int2 Tiler::GetCount(int id) int2 Tiler::GetCount(int id)
{ {
TileSet *tileset = (TileSet *)data->tilesets.GetEntity(id - 1); TileSet *tileset = (TileSet *)data->tilesets.GetEntity(id - 1);
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (!tileset) if (!tileset)
{ {
fprintf(stderr, "ERROR: getting count for null tiler #%i\n", id); fprintf(stderr, "ERROR: getting count for null tiler #%i\n", id);
@@ -98,7 +98,7 @@ void Tiler::Bind(uint32_t code)
int id = (code >> 16) - 1; /* ID 0 is for the empty tileset */ int id = (code >> 16) - 1; /* ID 0 is for the empty tileset */


TileSet *tileset = (TileSet *)data->tilesets.GetEntity(id); TileSet *tileset = (TileSet *)data->tilesets.GetEntity(id);
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (!tileset) if (!tileset)
{ {
if (id != data->lasterror) if (id != data->lasterror)
@@ -116,7 +116,7 @@ void Tiler::BlitTile(uint32_t code, int x, int y, int z, int o,
int id = (code >> 16) - 1; /* ID 0 is for the empty tileset */ int id = (code >> 16) - 1; /* ID 0 is for the empty tileset */


TileSet *tileset = (TileSet *)data->tilesets.GetEntity(id); TileSet *tileset = (TileSet *)data->tilesets.GetEntity(id);
#if !FINAL_RELEASE
#if !LOL_RELEASE
if (!tileset) if (!tileset)
{ {
if (id != data->lasterror) if (id != data->lasterror)


+ 1
- 1
src/tileset.cpp View File

@@ -70,7 +70,7 @@ TileSet::TileSet(char const *path, int2 size, int2 count, float dilate)


if (!data->img) if (!data->img)
{ {
#if !FINAL_RELEASE
#if !LOL_RELEASE
fprintf(stderr, "ERROR: could not load %s\n", path); fprintf(stderr, "ERROR: could not load %s\n", path);
#endif #endif
SDL_Quit(); SDL_Quit();


+ 7
- 7
src/video.cpp View File

@@ -28,14 +28,14 @@


#include "core.h" #include "core.h"


#if SHADER_CRAP
#if LOL_EXPERIMENTAL
GLuint prog, sh1, sh2; GLuint prog, sh1, sh2;
GLint uni_m1, uni_m2, uni_m3; GLint uni_m1, uni_m2, uni_m3;


float4x4 projection_matrix, view_matrix, model_matrix; float4x4 projection_matrix, view_matrix, model_matrix;
#endif #endif


#if SHADER_CRAP
#if LOL_EXPERIMENTAL
static char const *vertexshader = static char const *vertexshader =
"#version 130\n" "#version 130\n"
"\n" "\n"
@@ -85,7 +85,7 @@ void Video::Setup(int width, int height)


glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);


#if SHADER_CRAP
#if LOL_EXPERIMENTAL
sh1 = glCreateShader(GL_VERTEX_SHADER); sh1 = glCreateShader(GL_VERTEX_SHADER);
glShaderSource(sh1, 1, &vertexshader, NULL); glShaderSource(sh1, 1, &vertexshader, NULL);
glCompileShader(sh1); glCompileShader(sh1);
@@ -122,7 +122,7 @@ void Video::Setup(int width, int height)


void Video::SetFov(float theta) void Video::SetFov(float theta)
{ {
#if SHADER_CRAP
#if LOL_EXPERIMENTAL
float width = GetWidth(); float width = GetWidth();
float height = GetHeight(); float height = GetHeight();
//float near = -width - height; //float near = -width - height;
@@ -185,7 +185,7 @@ void Video::SetDepth(bool set)


void Video::Clear() void Video::Clear()
{ {
#if SHADER_CRAP
#if LOL_EXPERIMENTAL
glViewport(0, 0, GetWidth(), GetHeight()); glViewport(0, 0, GetWidth(), GetHeight());
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT);


@@ -213,7 +213,7 @@ void Video::Clear()
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
#endif #endif


#if SHADER_CRAP
#if LOL_EXPERIMENTAL
static float time; static float time;
time += 0.01f; time += 0.01f;
SetFov(1.0f + sinf(time)); SetFov(1.0f + sinf(time));
@@ -224,7 +224,7 @@ void Video::Clear()


void Video::Destroy() void Video::Destroy()
{ {
#if SHADER_CRAP
#if LOL_EXPERIMENTAL
glDetachShader(prog, sh1); glDetachShader(prog, sh1);
glDetachShader(prog, sh2); glDetachShader(prog, sh2);
glDeleteShader(sh1); glDeleteShader(sh1);


+ 1
- 1
win32/deushax.vcxproj View File

@@ -121,7 +121,7 @@
</PrecompiledHeader> </PrecompiledHeader>
<WarningLevel>Level3</WarningLevel> <WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;LOL_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(SolutionDir)\..\src;$(SdlIncludes);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>$(SolutionDir)\..\src;$(SdlIncludes);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile> </ClCompile>
<Link> <Link>


+ 1
- 1
win32/editor.vcxproj View File

@@ -121,7 +121,7 @@
</PrecompiledHeader> </PrecompiledHeader>
<WarningLevel>Level3</WarningLevel> <WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;LOL_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(SolutionDir)\..\src;$(SolutionDir)\..\deushax;$(SdlIncludes);$(GtkIncludes);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>$(SolutionDir)\..\src;$(SolutionDir)\..\deushax;$(SdlIncludes);$(GtkIncludes);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile> </ClCompile>
<Link> <Link>


+ 1
- 1
win32/monsterz.vcxproj View File

@@ -130,7 +130,7 @@
</PrecompiledHeader> </PrecompiledHeader>
<WarningLevel>Level3</WarningLevel> <WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;LOL_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(SolutionDir)\..\src;$(SdlIncludes);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>$(SolutionDir)\..\src;$(SdlIncludes);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile> </ClCompile>
<Link> <Link>


Loading…
Cancel
Save