Libneofx von Libzoom abgespalten
This commit is contained in:
parent
f3df7ef89a
commit
16dca7381b
18 changed files with 105 additions and 434 deletions
|
@ -1,5 +1,5 @@
|
||||||
lib_LTLIBRARIES = libzoom.la
|
lib_LTLIBRARIES = libzoom.la
|
||||||
libzoom_la_SOURCES = collision.c init.c level.c math.c player.c render.c texture.c
|
libzoom_la_SOURCES = init.c level.c player.c render.c texture.c
|
||||||
libzoom_la_CFLAGS = @GL_CFLAGS@ @GLU_CFLAGS@
|
libzoom_la_CFLAGS = @GL_CFLAGS@ @GLU_CFLAGS@
|
||||||
libzoom_la_LIBADD = @GL_LIBS@ @GLU_LIBS@
|
libzoom_la_LIBADD = @GL_LIBS@ @GLU_LIBS@
|
||||||
nobase_include_HEADERS = zoom/types.h zoom/collision.h zoom/init.h zoom/level.h zoom/math.h zoom/player.h zoom/render.h zoom/texture.h
|
nobase_include_HEADERS = zoom/types.h zoom/init.h zoom/level.h zoom/player.h zoom/render.h zoom/texture.h
|
||||||
|
|
81
Makefile.in
81
Makefile.in
|
@ -141,10 +141,10 @@ sharedstatedir = @sharedstatedir@
|
||||||
sysconfdir = @sysconfdir@
|
sysconfdir = @sysconfdir@
|
||||||
target_alias = @target_alias@
|
target_alias = @target_alias@
|
||||||
lib_LTLIBRARIES = libzoom.la
|
lib_LTLIBRARIES = libzoom.la
|
||||||
libzoom_la_SOURCES = collision.c init.c level.c math.c player.c render.c texture.c
|
libzoom_la_SOURCES = init.c level.c player.c render.c texture.c
|
||||||
libzoom_la_CFLAGS = @GL_CFLAGS@ @GLU_CFLAGS@
|
libzoom_la_CFLAGS = @GL_CFLAGS@ @GLU_CFLAGS@
|
||||||
libzoom_la_LIBADD = @GL_LIBS@ @GLU_LIBS@
|
libzoom_la_LIBADD = @GL_LIBS@ @GLU_LIBS@
|
||||||
nobase_include_HEADERS = zoom/types.h zoom/collision.h zoom/init.h zoom/level.h zoom/math.h zoom/player.h zoom/render.h zoom/texture.h
|
nobase_include_HEADERS = zoom/types.h zoom/init.h zoom/level.h zoom/player.h zoom/render.h zoom/texture.h
|
||||||
subdir = .
|
subdir = .
|
||||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||||
|
@ -154,18 +154,15 @@ LTLIBRARIES = $(lib_LTLIBRARIES)
|
||||||
|
|
||||||
libzoom_la_LDFLAGS =
|
libzoom_la_LDFLAGS =
|
||||||
libzoom_la_DEPENDENCIES =
|
libzoom_la_DEPENDENCIES =
|
||||||
am_libzoom_la_OBJECTS = libzoom_la-collision.lo libzoom_la-init.lo \
|
am_libzoom_la_OBJECTS = libzoom_la-init.lo libzoom_la-level.lo \
|
||||||
libzoom_la-level.lo libzoom_la-math.lo libzoom_la-player.lo \
|
libzoom_la-player.lo libzoom_la-render.lo libzoom_la-texture.lo
|
||||||
libzoom_la-render.lo libzoom_la-texture.lo
|
|
||||||
libzoom_la_OBJECTS = $(am_libzoom_la_OBJECTS)
|
libzoom_la_OBJECTS = $(am_libzoom_la_OBJECTS)
|
||||||
|
|
||||||
DEFAULT_INCLUDES = -I. -I$(srcdir) -I.
|
DEFAULT_INCLUDES = -I. -I$(srcdir) -I.
|
||||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||||
am__depfiles_maybe = depfiles
|
am__depfiles_maybe = depfiles
|
||||||
@AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/libzoom_la-collision.Plo \
|
@AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/libzoom_la-init.Plo \
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/libzoom_la-init.Plo \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/libzoom_la-level.Plo \
|
@AMDEP_TRUE@ ./$(DEPDIR)/libzoom_la-level.Plo \
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/libzoom_la-math.Plo \
|
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/libzoom_la-player.Plo \
|
@AMDEP_TRUE@ ./$(DEPDIR)/libzoom_la-player.Plo \
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/libzoom_la-render.Plo \
|
@AMDEP_TRUE@ ./$(DEPDIR)/libzoom_la-render.Plo \
|
||||||
@AMDEP_TRUE@ ./$(DEPDIR)/libzoom_la-texture.Plo
|
@AMDEP_TRUE@ ./$(DEPDIR)/libzoom_la-texture.Plo
|
||||||
|
@ -261,10 +258,8 @@ mostlyclean-compile:
|
||||||
distclean-compile:
|
distclean-compile:
|
||||||
-rm -f *.tab.c
|
-rm -f *.tab.c
|
||||||
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libzoom_la-collision.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libzoom_la-init.Plo@am__quote@
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libzoom_la-init.Plo@am__quote@
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libzoom_la-level.Plo@am__quote@
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libzoom_la-level.Plo@am__quote@
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libzoom_la-math.Plo@am__quote@
|
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libzoom_la-player.Plo@am__quote@
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libzoom_la-player.Plo@am__quote@
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libzoom_la-render.Plo@am__quote@
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libzoom_la-render.Plo@am__quote@
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libzoom_la-texture.Plo@am__quote@
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libzoom_la-texture.Plo@am__quote@
|
||||||
|
@ -302,39 +297,6 @@ distclean-compile:
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
|
@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
|
||||||
|
|
||||||
libzoom_la-collision.o: collision.c
|
|
||||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -MT libzoom_la-collision.o -MD -MP -MF "$(DEPDIR)/libzoom_la-collision.Tpo" \
|
|
||||||
@am__fastdepCC_TRUE@ -c -o libzoom_la-collision.o `test -f 'collision.c' || echo '$(srcdir)/'`collision.c; \
|
|
||||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libzoom_la-collision.Tpo" "$(DEPDIR)/libzoom_la-collision.Po"; \
|
|
||||||
@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/libzoom_la-collision.Tpo"; exit 1; \
|
|
||||||
@am__fastdepCC_TRUE@ fi
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='collision.c' object='libzoom_la-collision.o' libtool=no @AMDEPBACKSLASH@
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/libzoom_la-collision.Po' tmpdepfile='$(DEPDIR)/libzoom_la-collision.TPo' @AMDEPBACKSLASH@
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
||||||
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -c -o libzoom_la-collision.o `test -f 'collision.c' || echo '$(srcdir)/'`collision.c
|
|
||||||
|
|
||||||
libzoom_la-collision.obj: collision.c
|
|
||||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -MT libzoom_la-collision.obj -MD -MP -MF "$(DEPDIR)/libzoom_la-collision.Tpo" \
|
|
||||||
@am__fastdepCC_TRUE@ -c -o libzoom_la-collision.obj `if test -f 'collision.c'; then $(CYGPATH_W) 'collision.c'; else $(CYGPATH_W) '$(srcdir)/collision.c'; fi`; \
|
|
||||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libzoom_la-collision.Tpo" "$(DEPDIR)/libzoom_la-collision.Po"; \
|
|
||||||
@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/libzoom_la-collision.Tpo"; exit 1; \
|
|
||||||
@am__fastdepCC_TRUE@ fi
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='collision.c' object='libzoom_la-collision.obj' libtool=no @AMDEPBACKSLASH@
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/libzoom_la-collision.Po' tmpdepfile='$(DEPDIR)/libzoom_la-collision.TPo' @AMDEPBACKSLASH@
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
||||||
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -c -o libzoom_la-collision.obj `if test -f 'collision.c'; then $(CYGPATH_W) 'collision.c'; else $(CYGPATH_W) '$(srcdir)/collision.c'; fi`
|
|
||||||
|
|
||||||
libzoom_la-collision.lo: collision.c
|
|
||||||
@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -MT libzoom_la-collision.lo -MD -MP -MF "$(DEPDIR)/libzoom_la-collision.Tpo" \
|
|
||||||
@am__fastdepCC_TRUE@ -c -o libzoom_la-collision.lo `test -f 'collision.c' || echo '$(srcdir)/'`collision.c; \
|
|
||||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libzoom_la-collision.Tpo" "$(DEPDIR)/libzoom_la-collision.Plo"; \
|
|
||||||
@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/libzoom_la-collision.Tpo"; exit 1; \
|
|
||||||
@am__fastdepCC_TRUE@ fi
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='collision.c' object='libzoom_la-collision.lo' libtool=yes @AMDEPBACKSLASH@
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/libzoom_la-collision.Plo' tmpdepfile='$(DEPDIR)/libzoom_la-collision.TPlo' @AMDEPBACKSLASH@
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
||||||
@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -c -o libzoom_la-collision.lo `test -f 'collision.c' || echo '$(srcdir)/'`collision.c
|
|
||||||
|
|
||||||
libzoom_la-init.o: init.c
|
libzoom_la-init.o: init.c
|
||||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -MT libzoom_la-init.o -MD -MP -MF "$(DEPDIR)/libzoom_la-init.Tpo" \
|
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -MT libzoom_la-init.o -MD -MP -MF "$(DEPDIR)/libzoom_la-init.Tpo" \
|
||||||
@am__fastdepCC_TRUE@ -c -o libzoom_la-init.o `test -f 'init.c' || echo '$(srcdir)/'`init.c; \
|
@am__fastdepCC_TRUE@ -c -o libzoom_la-init.o `test -f 'init.c' || echo '$(srcdir)/'`init.c; \
|
||||||
|
@ -401,39 +363,6 @@ libzoom_la-level.lo: level.c
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||||
@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -c -o libzoom_la-level.lo `test -f 'level.c' || echo '$(srcdir)/'`level.c
|
@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -c -o libzoom_la-level.lo `test -f 'level.c' || echo '$(srcdir)/'`level.c
|
||||||
|
|
||||||
libzoom_la-math.o: math.c
|
|
||||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -MT libzoom_la-math.o -MD -MP -MF "$(DEPDIR)/libzoom_la-math.Tpo" \
|
|
||||||
@am__fastdepCC_TRUE@ -c -o libzoom_la-math.o `test -f 'math.c' || echo '$(srcdir)/'`math.c; \
|
|
||||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libzoom_la-math.Tpo" "$(DEPDIR)/libzoom_la-math.Po"; \
|
|
||||||
@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/libzoom_la-math.Tpo"; exit 1; \
|
|
||||||
@am__fastdepCC_TRUE@ fi
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='math.c' object='libzoom_la-math.o' libtool=no @AMDEPBACKSLASH@
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/libzoom_la-math.Po' tmpdepfile='$(DEPDIR)/libzoom_la-math.TPo' @AMDEPBACKSLASH@
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
||||||
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -c -o libzoom_la-math.o `test -f 'math.c' || echo '$(srcdir)/'`math.c
|
|
||||||
|
|
||||||
libzoom_la-math.obj: math.c
|
|
||||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -MT libzoom_la-math.obj -MD -MP -MF "$(DEPDIR)/libzoom_la-math.Tpo" \
|
|
||||||
@am__fastdepCC_TRUE@ -c -o libzoom_la-math.obj `if test -f 'math.c'; then $(CYGPATH_W) 'math.c'; else $(CYGPATH_W) '$(srcdir)/math.c'; fi`; \
|
|
||||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libzoom_la-math.Tpo" "$(DEPDIR)/libzoom_la-math.Po"; \
|
|
||||||
@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/libzoom_la-math.Tpo"; exit 1; \
|
|
||||||
@am__fastdepCC_TRUE@ fi
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='math.c' object='libzoom_la-math.obj' libtool=no @AMDEPBACKSLASH@
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/libzoom_la-math.Po' tmpdepfile='$(DEPDIR)/libzoom_la-math.TPo' @AMDEPBACKSLASH@
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
||||||
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -c -o libzoom_la-math.obj `if test -f 'math.c'; then $(CYGPATH_W) 'math.c'; else $(CYGPATH_W) '$(srcdir)/math.c'; fi`
|
|
||||||
|
|
||||||
libzoom_la-math.lo: math.c
|
|
||||||
@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -MT libzoom_la-math.lo -MD -MP -MF "$(DEPDIR)/libzoom_la-math.Tpo" \
|
|
||||||
@am__fastdepCC_TRUE@ -c -o libzoom_la-math.lo `test -f 'math.c' || echo '$(srcdir)/'`math.c; \
|
|
||||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libzoom_la-math.Tpo" "$(DEPDIR)/libzoom_la-math.Plo"; \
|
|
||||||
@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/libzoom_la-math.Tpo"; exit 1; \
|
|
||||||
@am__fastdepCC_TRUE@ fi
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='math.c' object='libzoom_la-math.lo' libtool=yes @AMDEPBACKSLASH@
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/libzoom_la-math.Plo' tmpdepfile='$(DEPDIR)/libzoom_la-math.TPlo' @AMDEPBACKSLASH@
|
|
||||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
||||||
@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -c -o libzoom_la-math.lo `test -f 'math.c' || echo '$(srcdir)/'`math.c
|
|
||||||
|
|
||||||
libzoom_la-player.o: player.c
|
libzoom_la-player.o: player.c
|
||||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -MT libzoom_la-player.o -MD -MP -MF "$(DEPDIR)/libzoom_la-player.Tpo" \
|
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libzoom_la_CFLAGS) $(CFLAGS) -MT libzoom_la-player.o -MD -MP -MF "$(DEPDIR)/libzoom_la-player.Tpo" \
|
||||||
@am__fastdepCC_TRUE@ -c -o libzoom_la-player.o `test -f 'player.c' || echo '$(srcdir)/'`player.c; \
|
@am__fastdepCC_TRUE@ -c -o libzoom_la-player.o `test -f 'player.c' || echo '$(srcdir)/'`player.c; \
|
||||||
|
|
116
collision.c
116
collision.c
|
@ -1,116 +0,0 @@
|
||||||
#include <zoom/collision.h>
|
|
||||||
#include <zoom/math.h>
|
|
||||||
|
|
||||||
static VERTEX TriangleCollisionPoint(TRIANGLE, VERTEX);
|
|
||||||
static VERTEX LineCollisionPoint(VERTEX, VERTEX, VERTEX);
|
|
||||||
|
|
||||||
int CollisionPointTriangle(VERTEX p, TRIANGLE t) {
|
|
||||||
VECTOR v1, v2;
|
|
||||||
TRIANGLE triangle = t;
|
|
||||||
|
|
||||||
if(VectorDot(VectorSub(p, triangle.vertices[0]), triangle.normal) > 0.0) return 0;
|
|
||||||
|
|
||||||
v1 = VectorCross(VectorSub(triangle.vertices[2], triangle.vertices[1]), VectorSub(p, triangle.vertices[1]));
|
|
||||||
v2 = VectorCross(VectorSub(triangle.vertices[2], triangle.vertices[1]), VectorSub(triangle.vertices[0], triangle.vertices[1]));
|
|
||||||
if(VectorDot(v1, v2) < 0.0) return 0;
|
|
||||||
|
|
||||||
v1 = VectorCross(VectorSub(triangle.vertices[2], triangle.vertices[0]), VectorSub(p, triangle.vertices[0]));
|
|
||||||
v2 = VectorCross(VectorSub(triangle.vertices[2], triangle.vertices[0]), VectorSub(triangle.vertices[1], triangle.vertices[0]));
|
|
||||||
if(VectorDot(v1, v2) < 0.0) return 0;
|
|
||||||
|
|
||||||
v1 = VectorCross(VectorSub(triangle.vertices[1], triangle.vertices[0]), VectorSub(p, triangle.vertices[0]));
|
|
||||||
v2 = VectorCross(VectorSub(triangle.vertices[1], triangle.vertices[0]), VectorSub(triangle.vertices[2], triangle.vertices[0]));
|
|
||||||
if(VectorDot(v1, v2) < 0.0) return 0;
|
|
||||||
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
int CollisionRayTriangle(VERTEX p, VECTOR vec, TRIANGLE t, float* f) {
|
|
||||||
VECTOR pvec, tvec, qvec, edge1, edge2;
|
|
||||||
float det, u, v, invDet;
|
|
||||||
|
|
||||||
edge1 = VectorSub(t.vertices[1], t.vertices[0]);
|
|
||||||
edge2 = VectorSub(t.vertices[2], t.vertices[0]);
|
|
||||||
|
|
||||||
pvec = VectorCross(vec, edge2);
|
|
||||||
|
|
||||||
det = VectorDot(edge1, pvec);
|
|
||||||
|
|
||||||
if(det < 0.0001) return 0;
|
|
||||||
|
|
||||||
tvec = VectorSub(p, t.vertices[0]);
|
|
||||||
u = VectorDot(tvec, pvec);
|
|
||||||
if(u < 0.0 || u > det) return 0;
|
|
||||||
|
|
||||||
qvec = VectorCross(tvec, edge1);
|
|
||||||
v = VectorDot(vec, qvec);
|
|
||||||
if(v < 0.0 || u+v > det) return 0;
|
|
||||||
|
|
||||||
if(f) {
|
|
||||||
*f = VectorDot(edge2, qvec);
|
|
||||||
invDet = 1.0 / det;
|
|
||||||
*f *= invDet;
|
|
||||||
}
|
|
||||||
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
static VERTEX LineCollisionPoint(VERTEX v1, VERTEX v2, VERTEX p) {
|
|
||||||
VECTOR c;
|
|
||||||
VECTOR V;
|
|
||||||
float d;
|
|
||||||
float t;
|
|
||||||
|
|
||||||
c = VectorSub(p, v1);
|
|
||||||
V = VectorSub(v2, v1);
|
|
||||||
d = VectorLengthSq(V);
|
|
||||||
t = VectorDot(V, c);
|
|
||||||
|
|
||||||
if(t < 0) return v1;
|
|
||||||
if(t > d) return v2;
|
|
||||||
|
|
||||||
return VectorAdd(v1, VectorMul(V, t/d));
|
|
||||||
}
|
|
||||||
|
|
||||||
static VERTEX TriangleCollisionPoint(TRIANGLE t, VERTEX p) {
|
|
||||||
VERTEX v1, v2, v3;
|
|
||||||
|
|
||||||
v1 = LineCollisionPoint(t.vertices[0], t.vertices[1], p);
|
|
||||||
v2 = LineCollisionPoint(t.vertices[1], t.vertices[2], p);
|
|
||||||
v3 = LineCollisionPoint(t.vertices[2], t.vertices[0], p);
|
|
||||||
|
|
||||||
if(VectorLengthSq(VectorSub(v1, p)) < VectorLengthSq(VectorSub(v2, p)) &&
|
|
||||||
VectorLengthSq(VectorSub(v1, p)) < VectorLengthSq(VectorSub(v3, p))) return v1;
|
|
||||||
if(VectorLengthSq(VectorSub(v2, p)) < VectorLengthSq(VectorSub(v3, p))) return v2;
|
|
||||||
return v3;
|
|
||||||
}
|
|
||||||
|
|
||||||
int CollisionSphereTriangle(VERTEX p, float r, TRIANGLE t) {
|
|
||||||
float f;
|
|
||||||
VERTEX v;
|
|
||||||
|
|
||||||
/*if(CollisionRayTriangle(VectorAdd(p, VectorMul(VectorNeg(t.normal), r)), m, t, &f)) {*/
|
|
||||||
if(CollisionRayTriangle(p, VectorNeg(t.normal), t, &f)) {
|
|
||||||
if(f < r) return 1;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
v = TriangleCollisionPoint(t, p);
|
|
||||||
if(VectorLengthSq(VectorSub(p, v)) < r*r) return 1;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
int CollisionMovingSphereTriangle(VERTEX p, float r, VECTOR m, float l, TRIANGLE t) {
|
|
||||||
float f;
|
|
||||||
VERTEX v;
|
|
||||||
|
|
||||||
if(CollisionRayTriangle(VectorAdd(p, VectorMul(VectorNeg(t.normal), r)), m, t, &f)) {
|
|
||||||
if(f < l) return 1;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
v = TriangleCollisionPoint(t, p);
|
|
||||||
v = LineCollisionPoint(v, VectorSub(v, VectorMul(m, l)), p);
|
|
||||||
if(VectorLengthSq(VectorSub(p, v)) < r*r) return 1;
|
|
||||||
return 0;
|
|
||||||
}
|
|
|
@ -9,6 +9,9 @@
|
||||||
/* Define to 1 if you have the <inttypes.h> header file. */
|
/* Define to 1 if you have the <inttypes.h> header file. */
|
||||||
#undef HAVE_INTTYPES_H
|
#undef HAVE_INTTYPES_H
|
||||||
|
|
||||||
|
/* Define to 1 if you have the `neofx' library (-lneofx). */
|
||||||
|
#undef HAVE_LIBNEOFX
|
||||||
|
|
||||||
/* Define to 1 if your system has a GNU libc compatible `malloc' function, and
|
/* Define to 1 if your system has a GNU libc compatible `malloc' function, and
|
||||||
to 0 otherwise. */
|
to 0 otherwise. */
|
||||||
#undef HAVE_MALLOC
|
#undef HAVE_MALLOC
|
||||||
|
|
79
configure
vendored
79
configure
vendored
|
@ -20150,8 +20150,83 @@ echo "$as_me: error: OpenGL Utility Library not found" >&2;}
|
||||||
{ (exit 1); exit 1; }; }
|
{ (exit 1); exit 1; }; }
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#CFLAGS="$CFLAGS $GL_CFLAGS $GLU_CFLAGS"
|
|
||||||
#LIBS="$LIBS $GL_LIBS $GLU_LIBS"
|
echo "$as_me:$LINENO: checking for MatrixMul in -lneofx" >&5
|
||||||
|
echo $ECHO_N "checking for MatrixMul in -lneofx... $ECHO_C" >&6
|
||||||
|
if test "${ac_cv_lib_neofx_MatrixMul+set}" = set; then
|
||||||
|
echo $ECHO_N "(cached) $ECHO_C" >&6
|
||||||
|
else
|
||||||
|
ac_check_lib_save_LIBS=$LIBS
|
||||||
|
LIBS="-lneofx $LIBS"
|
||||||
|
cat >conftest.$ac_ext <<_ACEOF
|
||||||
|
/* confdefs.h. */
|
||||||
|
_ACEOF
|
||||||
|
cat confdefs.h >>conftest.$ac_ext
|
||||||
|
cat >>conftest.$ac_ext <<_ACEOF
|
||||||
|
/* end confdefs.h. */
|
||||||
|
|
||||||
|
/* Override any gcc2 internal prototype to avoid an error. */
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C"
|
||||||
|
#endif
|
||||||
|
/* We use char because int might match the return type of a gcc2
|
||||||
|
builtin and then its argument prototype would still apply. */
|
||||||
|
char MatrixMul ();
|
||||||
|
int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
MatrixMul ();
|
||||||
|
;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_ACEOF
|
||||||
|
rm -f conftest.$ac_objext conftest$ac_exeext
|
||||||
|
if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
|
||||||
|
(eval $ac_link) 2>conftest.er1
|
||||||
|
ac_status=$?
|
||||||
|
grep -v '^ *+' conftest.er1 >conftest.err
|
||||||
|
rm -f conftest.er1
|
||||||
|
cat conftest.err >&5
|
||||||
|
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||||
|
(exit $ac_status); } &&
|
||||||
|
{ ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
|
||||||
|
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||||
|
(eval $ac_try) 2>&5
|
||||||
|
ac_status=$?
|
||||||
|
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||||
|
(exit $ac_status); }; } &&
|
||||||
|
{ ac_try='test -s conftest$ac_exeext'
|
||||||
|
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||||
|
(eval $ac_try) 2>&5
|
||||||
|
ac_status=$?
|
||||||
|
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||||
|
(exit $ac_status); }; }; then
|
||||||
|
ac_cv_lib_neofx_MatrixMul=yes
|
||||||
|
else
|
||||||
|
echo "$as_me: failed program was:" >&5
|
||||||
|
sed 's/^/| /' conftest.$ac_ext >&5
|
||||||
|
|
||||||
|
ac_cv_lib_neofx_MatrixMul=no
|
||||||
|
fi
|
||||||
|
rm -f conftest.err conftest.$ac_objext \
|
||||||
|
conftest$ac_exeext conftest.$ac_ext
|
||||||
|
LIBS=$ac_check_lib_save_LIBS
|
||||||
|
fi
|
||||||
|
echo "$as_me:$LINENO: result: $ac_cv_lib_neofx_MatrixMul" >&5
|
||||||
|
echo "${ECHO_T}$ac_cv_lib_neofx_MatrixMul" >&6
|
||||||
|
if test $ac_cv_lib_neofx_MatrixMul = yes; then
|
||||||
|
cat >>confdefs.h <<_ACEOF
|
||||||
|
#define HAVE_LIBNEOFX 1
|
||||||
|
_ACEOF
|
||||||
|
|
||||||
|
LIBS="-lneofx $LIBS"
|
||||||
|
|
||||||
|
else
|
||||||
|
{ { echo "$as_me:$LINENO: error: NeoFX Library not found" >&5
|
||||||
|
echo "$as_me: error: NeoFX Library not found" >&2;}
|
||||||
|
{ (exit 1); exit 1; }; }
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
# Checks for header files.
|
# Checks for header files.
|
||||||
echo "$as_me:$LINENO: checking for ANSI C header files" >&5
|
echo "$as_me:$LINENO: checking for ANSI C header files" >&5
|
||||||
|
|
|
@ -24,8 +24,7 @@ if test x$no_gl = xyes; then
|
||||||
AC_MSG_ERROR([OpenGL Utility Library not found])
|
AC_MSG_ERROR([OpenGL Utility Library not found])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#CFLAGS="$CFLAGS $GL_CFLAGS $GLU_CFLAGS"
|
AC_CHECK_LIB(neofx, MatrixMul, , AC_MSG_ERROR([NeoFX Library not found]))
|
||||||
#LIBS="$LIBS $GL_LIBS $GLU_LIBS"
|
|
||||||
|
|
||||||
# Checks for header files.
|
# Checks for header files.
|
||||||
AC_HEADER_STDC
|
AC_HEADER_STDC
|
||||||
|
|
2
level.c
2
level.c
|
@ -4,7 +4,7 @@
|
||||||
#include <zoom/types.h>
|
#include <zoom/types.h>
|
||||||
#include <zoom/level.h>
|
#include <zoom/level.h>
|
||||||
#include <zoom/texture.h>
|
#include <zoom/texture.h>
|
||||||
#include <zoom/math.h>
|
#include <neofx/math.h>
|
||||||
|
|
||||||
extern GLuint sphere;
|
extern GLuint sphere;
|
||||||
extern GLuint meditex_blue;
|
extern GLuint meditex_blue;
|
||||||
|
|
165
math.c
165
math.c
|
@ -1,165 +0,0 @@
|
||||||
#include <math.h>
|
|
||||||
#include <zoom/math.h>
|
|
||||||
#include <zoom/types.h>
|
|
||||||
|
|
||||||
float VectorDot(VECTOR v1, VECTOR v2) {
|
|
||||||
return v1.x*v2.x + v1.y*v2.y + v1.z*v2.z;
|
|
||||||
}
|
|
||||||
|
|
||||||
VECTOR VectorCross(VECTOR v1, VECTOR v2) {
|
|
||||||
VECTOR vec;
|
|
||||||
|
|
||||||
vec.x = v1.y * v2.z - v1.z * v2.y;
|
|
||||||
vec.y = v1.z * v2.x - v1.x * v2.z;
|
|
||||||
vec.z = v1.x * v2.y - v1.y * v2.x;
|
|
||||||
|
|
||||||
return vec;
|
|
||||||
}
|
|
||||||
|
|
||||||
VECTOR VectorSub(VECTOR v1, VECTOR v2) {
|
|
||||||
VECTOR vec;
|
|
||||||
|
|
||||||
vec.x = v1.x - v2.x;
|
|
||||||
vec.y = v1.y - v2.y;
|
|
||||||
vec.z = v1.z - v2.z;
|
|
||||||
|
|
||||||
return vec;
|
|
||||||
}
|
|
||||||
|
|
||||||
VECTOR VectorAdd(VECTOR v1, VECTOR v2) {
|
|
||||||
VECTOR vec;
|
|
||||||
|
|
||||||
vec.x = v1.x + v2.x;
|
|
||||||
vec.y = v1.y + v2.y;
|
|
||||||
vec.z = v1.z + v2.z;
|
|
||||||
|
|
||||||
return vec;
|
|
||||||
}
|
|
||||||
|
|
||||||
VECTOR VectorMul(VECTOR v, float f) {
|
|
||||||
v.x *= f;
|
|
||||||
v.y *= f;
|
|
||||||
v.z *= f;
|
|
||||||
|
|
||||||
return v;
|
|
||||||
}
|
|
||||||
|
|
||||||
VECTOR VectorNormalize(VECTOR v) {
|
|
||||||
float f = sqrt(v.x*v.x + v.y*v.y + v.z*v.z);
|
|
||||||
|
|
||||||
v.x /= f;
|
|
||||||
v.y /= f;
|
|
||||||
v.z /= f;
|
|
||||||
|
|
||||||
return v;
|
|
||||||
}
|
|
||||||
|
|
||||||
VECTOR VectorNeg(VECTOR v) {
|
|
||||||
v.x = -v.x;
|
|
||||||
v.y = -v.y;
|
|
||||||
v.z = -v.z;
|
|
||||||
|
|
||||||
return v;
|
|
||||||
}
|
|
||||||
|
|
||||||
float VectorLength(VECTOR v) {
|
|
||||||
return sqrt(v.x*v.x + v.y*v.y + v.z*v.z);
|
|
||||||
}
|
|
||||||
|
|
||||||
float VectorLengthSq(VECTOR v) {
|
|
||||||
return (v.x*v.x + v.y*v.y + v.z*v.z);
|
|
||||||
}
|
|
||||||
|
|
||||||
int VectorEqual(VECTOR v1, VECTOR v2) {
|
|
||||||
if(v1.x == v2.x && v1.y == v2.y && v1.z == v2.z) return 1;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
MATRIX MatrixIdentity() {
|
|
||||||
MATRIX m = {
|
|
||||||
1.0, 0.0, 0.0, 0.0,
|
|
||||||
0.0, 1.0, 0.0, 0.0,
|
|
||||||
0.0, 0.0, 1.0, 0.0,
|
|
||||||
0.0, 0.0, 0.0, 1.0
|
|
||||||
};
|
|
||||||
return m;
|
|
||||||
}
|
|
||||||
|
|
||||||
MATRIX MatrixMul(MATRIX m1, MATRIX m2) {
|
|
||||||
MATRIX m = {
|
|
||||||
0.0, 0.0, 0.0, 0.0,
|
|
||||||
0.0, 0.0, 0.0, 0.0,
|
|
||||||
0.0, 0.0, 0.0, 0.0,
|
|
||||||
0.0, 0.0, 0.0, 0.0
|
|
||||||
};
|
|
||||||
short i, j, k;
|
|
||||||
|
|
||||||
for(i = 0; i < 4; i++)
|
|
||||||
for(j = 0; j < 4; j++)
|
|
||||||
for(k = 0; k < 4; k++)
|
|
||||||
m.m[i][j] += m1.m[i][k] * m2.m[k][j];
|
|
||||||
|
|
||||||
return m;
|
|
||||||
}
|
|
||||||
|
|
||||||
MATRIX VectorMatrix(VERTEX p1, VECTOR v1, VERTEX p2, VECTOR v2) {
|
|
||||||
MATRIX translate;
|
|
||||||
MATRIX rotate;
|
|
||||||
VECTOR axis;
|
|
||||||
float s, c;
|
|
||||||
|
|
||||||
axis = VectorCross(v1, v2);
|
|
||||||
s = VectorLength(axis);
|
|
||||||
c = VectorDot(v1, v2);
|
|
||||||
if(s) axis = VectorMul(axis, 1/s);
|
|
||||||
|
|
||||||
rotate.m[0][0] = (axis.x * axis.x) * (1.0 - c) + c;
|
|
||||||
rotate.m[0][1] = (axis.x * axis.y) * (1.0 - c) - (axis.z * s);
|
|
||||||
rotate.m[0][2] = (axis.x * axis.z) * (1.0 - c) + (axis.y * s);
|
|
||||||
rotate.m[0][3] = 0.0;
|
|
||||||
|
|
||||||
rotate.m[1][0] = (axis.y * axis.x) * (1.0 - c) + (axis.z * s);
|
|
||||||
rotate.m[1][1] = (axis.y * axis.y) * (1.0 - c) + c;
|
|
||||||
rotate.m[1][2] = (axis.y * axis.z) * (1.0 - c) - (axis.x * s);
|
|
||||||
rotate.m[1][3] = 0.0;
|
|
||||||
|
|
||||||
rotate.m[2][0] = (axis.z * axis.x) * (1.0 - c) - (axis.y * s);
|
|
||||||
rotate.m[2][1] = (axis.z * axis.y) * (1.0 - c) + (axis.x * s);
|
|
||||||
rotate.m[2][2] = (axis.z * axis.z) * (1.0 - c) + c;
|
|
||||||
rotate.m[2][3] = 0.0;
|
|
||||||
|
|
||||||
rotate.m[3][0] = 0.0;
|
|
||||||
rotate.m[3][1] = 0.0;
|
|
||||||
rotate.m[3][2] = 0.0;
|
|
||||||
rotate.m[3][3] = 1.0;
|
|
||||||
|
|
||||||
translate = MatrixIdentity();
|
|
||||||
|
|
||||||
translate.m[3][0] = p1.x;
|
|
||||||
translate.m[3][1] = p1.y;
|
|
||||||
translate.m[3][2] = p1.z;
|
|
||||||
|
|
||||||
rotate = MatrixMul(rotate, translate);
|
|
||||||
|
|
||||||
translate.m[3][0] = -p2.x;
|
|
||||||
translate.m[3][1] = -p2.y;
|
|
||||||
translate.m[3][2] = -p2.z;
|
|
||||||
|
|
||||||
return MatrixMul(translate, rotate);
|
|
||||||
}
|
|
||||||
|
|
||||||
VECTOR VectorMatrixMul(VECTOR v, MATRIX m) {
|
|
||||||
VECTOR r;
|
|
||||||
float w;
|
|
||||||
|
|
||||||
r.x = v.x*m.m[0][0] + v.y*m.m[1][0] + v.z*m.m[2][0] + m.m[3][0];
|
|
||||||
r.y = v.x*m.m[0][1] + v.y*m.m[1][1] + v.z*m.m[2][1] + m.m[3][1];
|
|
||||||
r.z = v.x*m.m[0][2] + v.y*m.m[1][2] + v.z*m.m[2][2] + m.m[3][2];
|
|
||||||
w = v.x*m.m[0][3] + v.y*m.m[1][3] + v.z*m.m[2][3] + m.m[3][3];
|
|
||||||
|
|
||||||
r.x /= w;
|
|
||||||
r.y /= w;
|
|
||||||
r.z /= w;
|
|
||||||
|
|
||||||
return r;
|
|
||||||
}
|
|
4
player.c
4
player.c
|
@ -2,8 +2,8 @@
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#include <zoom/player.h>
|
#include <zoom/player.h>
|
||||||
#include <zoom/level.h>
|
#include <zoom/level.h>
|
||||||
#include <zoom/collision.h>
|
#include <neofx/collision.h>
|
||||||
#include <zoom/math.h>
|
#include <neofx/math.h>
|
||||||
|
|
||||||
int input = 0;
|
int input = 0;
|
||||||
int falling = 0;
|
int falling = 0;
|
||||||
|
|
2
render.c
2
render.c
|
@ -3,7 +3,7 @@
|
||||||
#include <zoom/render.h>
|
#include <zoom/render.h>
|
||||||
#include <zoom/player.h>
|
#include <zoom/player.h>
|
||||||
#include <zoom/level.h>
|
#include <zoom/level.h>
|
||||||
#include <zoom/math.h>
|
#include <neofx/math.h>
|
||||||
|
|
||||||
extern PLAYER player;
|
extern PLAYER player;
|
||||||
extern LEVEL level;
|
extern LEVEL level;
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
#ifndef GAME_COLLISION_H
|
|
||||||
#define GAME_COLLISION_H
|
|
||||||
|
|
||||||
#include "types.h"
|
|
||||||
|
|
||||||
int CollisionPointTriangle(VERTEX, TRIANGLE);
|
|
||||||
int CollisionRayTriangle(VERTEX, VECTOR, TRIANGLE, float*);
|
|
||||||
int CollisionSphereTriangle(VERTEX, float,TRIANGLE);
|
|
||||||
int CollisionMovingSphereTriangle(VERTEX, float, VECTOR, float, TRIANGLE);
|
|
||||||
|
|
||||||
#endif
|
|
|
@ -1,5 +1,5 @@
|
||||||
#ifndef GAME_INIT_H
|
#ifndef ZOOM_INIT_H
|
||||||
#define GAME_INIT_H
|
#define ZOOM_INIT_H
|
||||||
|
|
||||||
int InitGame();
|
int InitGame();
|
||||||
void UninitGame();
|
void UninitGame();
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#ifndef GAME_LEVEL_H
|
#ifndef ZOOM_LEVEL_H
|
||||||
#define GAME_LEVEL_H
|
#define ZOOM_LEVEL_H
|
||||||
|
|
||||||
#include <GL/gl.h>
|
#include <GL/gl.h>
|
||||||
#include "types.h"
|
#include "types.h"
|
||||||
|
|
21
zoom/math.h
21
zoom/math.h
|
@ -1,21 +0,0 @@
|
||||||
#ifndef GAME_MATH_H
|
|
||||||
#define GAME_MATH_H
|
|
||||||
|
|
||||||
#include "types.h"
|
|
||||||
|
|
||||||
float VectorDot(VECTOR, VECTOR);
|
|
||||||
VECTOR VectorCross(VECTOR, VECTOR);
|
|
||||||
VECTOR VectorSub(VECTOR, VECTOR);
|
|
||||||
VECTOR VectorAdd(VECTOR, VECTOR);
|
|
||||||
VECTOR VectorMul(VECTOR, float);
|
|
||||||
VECTOR VectorNormalize(VECTOR);
|
|
||||||
VECTOR VectorNeg(VECTOR);
|
|
||||||
float VectorLength(VECTOR);
|
|
||||||
float VectorLengthSq(VECTOR);
|
|
||||||
int VectorEqual(VECTOR, VECTOR);
|
|
||||||
MATRIX MatrixMul(MATRIX, MATRIX);
|
|
||||||
MATRIX MatrixIdentity();
|
|
||||||
MATRIX VectorMatrix(VERTEX, VECTOR, VERTEX, VECTOR);
|
|
||||||
VECTOR VectorMatrixMul(VECTOR, MATRIX);
|
|
||||||
|
|
||||||
#endif
|
|
|
@ -1,5 +1,5 @@
|
||||||
#ifndef GAME_PLAYER_H
|
#ifndef ZOOM_PLAYER_H
|
||||||
#define GAME_PLAYER_H
|
#define ZOOM_PLAYER_H
|
||||||
|
|
||||||
#include "types.h"
|
#include "types.h"
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#ifndef GAME_RENDER_H
|
#ifndef ZOOM_RENDER_H
|
||||||
#define GAME_RENDER_H
|
#define ZOOM_RENDER_H
|
||||||
|
|
||||||
void Render();
|
void Render();
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#ifndef GAME_TEXTURE_H
|
#ifndef ZOOM_TEXTURE_H
|
||||||
#define GAME_TEXTURE_H
|
#define ZOOM_TEXTURE_H
|
||||||
|
|
||||||
typedef struct _TEXLIST {
|
typedef struct _TEXLIST {
|
||||||
char name[30];
|
char name[30];
|
||||||
|
|
28
zoom/types.h
28
zoom/types.h
|
@ -1,7 +1,7 @@
|
||||||
#ifndef GAME_TYPES_H
|
#ifndef ZOOM_TYPES_H
|
||||||
#define GAME_TYPES_H
|
#define ZOOM_TYPES_H
|
||||||
|
|
||||||
#include <GL/gl.h>
|
#include <neofx/types.h>
|
||||||
|
|
||||||
#define TRIANGLE_UNKNOWN 0
|
#define TRIANGLE_UNKNOWN 0
|
||||||
#define TRIANGLE_WALL 1
|
#define TRIANGLE_WALL 1
|
||||||
|
@ -22,28 +22,6 @@
|
||||||
#define STATE_CLOSING 4
|
#define STATE_CLOSING 4
|
||||||
|
|
||||||
#pragma pack(push, 2)
|
#pragma pack(push, 2)
|
||||||
typedef union _MATRIX {
|
|
||||||
float m[4][4];
|
|
||||||
float f[16];
|
|
||||||
} MATRIX;
|
|
||||||
|
|
||||||
typedef struct _VECTOR_VERTEX {
|
|
||||||
float x, y, z;
|
|
||||||
} VECTOR, VERTEX;
|
|
||||||
|
|
||||||
typedef struct _TEXCOORDS {
|
|
||||||
float s, t;
|
|
||||||
} TEXCOORDS;
|
|
||||||
|
|
||||||
typedef struct _TRIANGLE {
|
|
||||||
unsigned char type;
|
|
||||||
unsigned char visible;
|
|
||||||
VERTEX vertices[3];
|
|
||||||
VECTOR normal;
|
|
||||||
int texture;
|
|
||||||
TEXCOORDS texcoords[3];
|
|
||||||
} TRIANGLE;
|
|
||||||
|
|
||||||
typedef struct _OBJECT {
|
typedef struct _OBJECT {
|
||||||
unsigned char type;
|
unsigned char type;
|
||||||
unsigned char visible;
|
unsigned char visible;
|
||||||
|
|
Reference in a new issue