From a812fd572eb8ceea0182c8faaf6ba711c22c61bf Mon Sep 17 00:00:00 2001 From: Hayden K <819028+mrneo240@users.noreply.github.com> Date: Mon, 15 Apr 2019 14:11:17 -0400 Subject: [PATCH] Change to single file --- GL/draw.c | 13 ++++++++----- GL/gldc.c | 21 +++++++++++++++++++++ GL/texture.c | 2 +- Makefile | 8 +++++--- include/glkos.h | 4 +++- 5 files changed, 38 insertions(+), 10 deletions(-) create mode 100644 GL/gldc.c diff --git a/GL/draw.c b/GL/draw.c index b266912..c7dd18f 100644 --- a/GL/draw.c +++ b/GL/draw.c @@ -7,6 +7,7 @@ #include "../include/gl.h" #include "../include/glext.h" +#include "../include/glkos.h" #include "private.h" #include "profiler.h" @@ -1055,11 +1056,13 @@ static void submitVertices(GLenum mode, GLsizei first, GLuint count, GLenum type GLint activeTexture; glGetIntegerv(GL_ACTIVE_TEXTURE_ARB, &activeTexture); - glActiveTextureARB(GL_TEXTURE0); - glGetBooleanv(GL_TEXTURE_2D, &doTexture); + doTexture =_GetBooleanTextureEnabled(GL_TEXTURE0); + //glActiveTextureARB(GL_TEXTURE0); + //glGetBooleanv(GL_TEXTURE_2D, &doTexture); - glActiveTextureARB(GL_TEXTURE1); - glGetBooleanv(GL_TEXTURE_2D, &doMultitexture); + doMultitexture = _GetBooleanTextureEnabled(GL_TEXTURE1); + //glActiveTextureARB(GL_TEXTURE1); + //glGetBooleanv(GL_TEXTURE_2D, &doMultitexture); doLighting = _glIsLightingEnabled(); @@ -1108,7 +1111,7 @@ static void submitVertices(GLenum mode, GLsizei first, GLuint count, GLenum type generate(target, mode, first, count, (GLubyte*) indices, type, doTexture, doMultitexture, doLighting); profiler_checkpoint("generate"); - + light(target); profiler_checkpoint("light"); diff --git a/GL/gldc.c b/GL/gldc.c new file mode 100644 index 0000000..22b8c2e --- /dev/null +++ b/GL/gldc.c @@ -0,0 +1,21 @@ +#include "../include/gl.h" +#include "../include/glu.h" +#include "../include/glext.h" +#include "../include/glkos.h" +#include "private.h" +#include "config.h" +#include "profiler.h" +#include "../containers/aligned_vector.h" + +#include "clip.c" +#include "draw.c" +#include "error.c" +#include "flush.c" +#include "fog.c" +#include "framebuffer.c" +#include "glu.c" +#include "immediate.c" +#include "lighting.c" +#include "matrix.c" +#include "state.c" +#include "texture.c" diff --git a/GL/texture.c b/GL/texture.c index 7b3e2ed..ea902eb 100644 --- a/GL/texture.c +++ b/GL/texture.c @@ -17,7 +17,7 @@ static TextureObject* TEXTURE_UNITS[MAX_TEXTURE_UNITS] = {NULL, NULL}; static NamedArray TEXTURE_OBJECTS; -static GLubyte ACTIVE_TEXTURE = 0; +GLubyte ACTIVE_TEXTURE = 0; static TexturePalette* SHARED_PALETTES[4] = {NULL, NULL, NULL, NULL}; diff --git a/Makefile b/Makefile index 76a1114..cc4ae95 100644 --- a/Makefile +++ b/Makefile @@ -6,12 +6,14 @@ # Copyright (C) 2018 Luke Benstead TARGET = libGLdc.a -OBJS = GL/draw.o GL/flush.o GL/framebuffer.o GL/immediate.o GL/lighting.o GL/state.o GL/texture.o GL/glu.o -OBJS += GL/matrix.o GL/fog.o GL/error.o GL/clip.o containers/stack.o containers/named_array.o containers/aligned_vector.o GL/profiler.o +OBJS = GL/gldc.o +#OBJS = GL/draw.o GL/flush.o GL/framebuffer.o GL/immediate.o GL/lighting.o GL/state.o GL/texture.o GL/glu.o +#OBJS += GL/matrix.o GL/fog.o GL/error.o GL/clip.o containers/stack.o containers/named_array.o containers/aligned_vector.o GL/profiler.o +OBJS += containers/stack.o containers/named_array.o containers/aligned_vector.o GL/profiler.o SUBDIRS = -KOS_CFLAGS += -ffast-math -Ofast -Iinclude +KOS_CFLAGS += -ffast-math -O3 -funroll-loops -Iinclude link: $(KOS_AR) rcs $(TARGET) $(OBJS) diff --git a/include/glkos.h b/include/glkos.h index f99607c..622bca3 100644 --- a/include/glkos.h +++ b/include/glkos.h @@ -97,4 +97,6 @@ GLAPI void APIENTRY glKOS_INTERNAL_SetMipmapBias(GLubyte level); #define GL_SHARED_TEXTURE_BANK_KOS 0xEF00 __END_DECLS - +extern GLboolean TEXTURES_ENABLED[]; +extern GLubyte ACTIVE_TEXTURE; +#define _GetBooleanTextureEnabled(TEXTURE_INDEX) ( TEXTURE_INDEX == GL_TEXTURE0 ? TEXTURES_ENABLED[0] : TEXTURES_ENABLED[1] ) \ No newline at end of file