Compiles now
This commit is contained in:
parent
0ba7b441b1
commit
76985519f1
66
Makefile
66
Makefile
|
@ -18,7 +18,8 @@ ifeq ($(DEBUG), 1)
|
||||||
INFO = dbg
|
INFO = dbg
|
||||||
endif
|
endif
|
||||||
|
|
||||||
objprefix = ./bin/obj
|
BIN = ./bin/
|
||||||
|
objprefix = $(BIN)obj
|
||||||
|
|
||||||
DIRS = engine pinball editor brainstorm
|
DIRS = engine pinball editor brainstorm
|
||||||
ETP = ./source/engine/thirdparty/
|
ETP = ./source/engine/thirdparty/
|
||||||
|
@ -47,7 +48,7 @@ define rm
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define findindir
|
define findindir
|
||||||
find $(1) -type f -maxdepth 1 -name '$(2)'
|
find $(1) -maxdepth 1 -type f -name '$(2)'
|
||||||
endef
|
endef
|
||||||
|
|
||||||
# All other sources
|
# All other sources
|
||||||
|
@ -55,15 +56,15 @@ edirs != find ./source/engine -type d -name include
|
||||||
edirs += ./source/engine
|
edirs += ./source/engine
|
||||||
ehead != $(call findindir,./source/engine,*.h)
|
ehead != $(call findindir,./source/engine,*.h)
|
||||||
eobjects != $(call make_objs, ./source/engine)
|
eobjects != $(call make_objs, ./source/engine)
|
||||||
eobjects != $(call rm,$(eobjects),sqlite s7 pl_mpeg_extract_frames pl_mpeg_player)
|
eobjects != $(call rm,$(eobjects),sqlite pl_mpeg_extract_frames pl_mpeg_player yugine.c yugine.c)
|
||||||
|
|
||||||
imguisrcs = imgui imgui_draw imgui_widgets imgui_tables backends/imgui_impl_sdl backends/imgui_impl_opengl3
|
imguisrcs = imgui imgui_draw imgui_widgets imgui_tables backends/imgui_impl_sdl backends/imgui_impl_opengl3
|
||||||
imguiobjs != $(call prefix,$(imguisrcs),./source/editor/imgui/,.o)
|
imguiobjs != $(call prefix,$(imguisrcs),$(objprefix)/source/editor/imgui/,.o)
|
||||||
|
|
||||||
eddirs != find ./source/editor -type d
|
eddirs != find ./source/editor -type d
|
||||||
eddirs += ./source/editor
|
eddirs += ./source/editor
|
||||||
edhead != $(call findindir,./source/editor,*.h)
|
edhead != $(call findindir,./source/editor,*.h)
|
||||||
edobjects != find ./source/editor -type f -maxdepth 1 -name '*.c' -o -name '*.cpp'
|
edobjects != find ./source/editor -maxdepth 1 -type f -name '*.c' -o -name '*.cpp'
|
||||||
edobjects != $(call make_obj,$(edobjects))
|
edobjects != $(call make_obj,$(edobjects))
|
||||||
edobjects += $(imguiobjs)
|
edobjects += $(imguiobjs)
|
||||||
|
|
||||||
|
@ -75,22 +76,23 @@ pinobjects != $(call make_objs, ./source/pinball);
|
||||||
|
|
||||||
edirs += ./source/engine/thirdparty/Chipmunk2D/include ./source/engine/thirdparty/enet/include
|
edirs += ./source/engine/thirdparty/Chipmunk2D/include ./source/engine/thirdparty/enet/include
|
||||||
includeflag != $(call prefix,$(edirs) $(eddirs) $(pindirs) $(bsdirs),-I)
|
includeflag != $(call prefix,$(edirs) $(eddirs) $(pindirs) $(bsdirs),-I)
|
||||||
|
COMPINCLUDE = $(edirs) $(eddirs) $(pindirs) $(bsdirs)
|
||||||
|
|
||||||
#COMPILER_FLAGS specifies the additional compilation options we're using
|
#COMPILER_FLAGS specifies the additional compilation options we're using
|
||||||
WARNING_FLAGS = -w #-pedantic -Wall -Wextra -Wwrite-strings
|
WARNING_FLAGS = -w #-pedantic -Wall -Wextra -Wwrite-strings
|
||||||
COMPILER_FLAGS = -g -O0 $(WARNING_FLAGS)
|
COMPILER_FLAGS = $(includeflag) -g -O0 $(WARNING_FLAGS) -DGLEW_STATIC -c -MMD -MP $< -o $@
|
||||||
|
|
||||||
LIBPATH = -L./bin
|
LIBPATH = -L./bin
|
||||||
|
|
||||||
ifeq ($(UNAME), Windows_NT)
|
ifeq ($(UNAME), Windows_NT)
|
||||||
LINKER_FLAGS = -static -DSDL_MAIN_HANDLED
|
LINKER_FLAGS = -static -DSDL_MAIN_HANDLED
|
||||||
ELIBS = engine mingw32 SDL2main SDL2 m dinput8 dxguid dxerr8 user32 gdi32 winmm imm32 ole32 oleaut32 shell32 version uuid setupapi opengl32 stdc++ winpthread
|
ELIBS = engine editor mingw32 SDL2main SDL2 m dinput8 dxguid dxerr8 user32 gdi32 winmm imm32 ole32 oleaut32 shell32 version uuid setupapi opengl32 stdc++ winpthread
|
||||||
ELIBS += SDL2_mixer FLAC vorbis vorbisenc vorbisfile mpg123 out123 syn123 opus opusurl opusfile ogg ssp shlwapi
|
ELIBS += SDL2_mixer FLAC vorbis vorbisenc vorbisfile mpg123 out123 syn123 opus opusurl opusfile ogg ssp shlwapi
|
||||||
CLIBS = glew32
|
CLIBS = glew32
|
||||||
EXT = .exe
|
EXT = .exe
|
||||||
else
|
else
|
||||||
LINKER_FLAGS =
|
LINKER_FLAGS =
|
||||||
ELIBS = engine
|
ELIBS = editor engine
|
||||||
CLIBS = SDL2 SDL2_mixer GLEW GL dl pthread
|
CLIBS = SDL2 SDL2_mixer GLEW GL dl pthread
|
||||||
EXT =
|
EXT =
|
||||||
endif
|
endif
|
||||||
|
@ -106,48 +108,52 @@ DEPENDS = $(objects:.o=.d)
|
||||||
|
|
||||||
yuginec = ./source/engine/yugine.c
|
yuginec = ./source/engine/yugine.c
|
||||||
|
|
||||||
LINK = $(includeflag) $(LIBPATH) $(LINKER_FLAGS) $(LELIBS)
|
ENGINE = $(BIN)libengine.a
|
||||||
|
EDITOR = $(BIN)libeditor.a
|
||||||
|
INCLUDE = $(BIN)include
|
||||||
|
|
||||||
engine: libengine.a
|
linkinclude = ./bin/include
|
||||||
|
|
||||||
|
LINK = $(LIBPATH) $(LINKER_FLAGS) $(LELIBS) -o $@
|
||||||
|
|
||||||
|
engine: $(yuginec:.%.c=$(objprefix)%.o) $(ENGINE)
|
||||||
@echo Linking engine
|
@echo Linking engine
|
||||||
$(CXX) $(yuginec) -DGLEW_STATIC $(LINK) -o engine
|
@$(CXX) $< $(linkinclude:%=-I%) $(LINK)
|
||||||
|
|
||||||
editor: ./bin/libengine.a ./bin/libeditor.a
|
editor: $(yuginec:.%.c=$(objprefix)%.o) $(EDITOR) $(ENGINE)
|
||||||
@echo Linking editor
|
@echo Linking editor
|
||||||
$(CXX) $(yuginec) -DGLEW_STATIC $(LINK) -o editor
|
$(CXX) $< $(linkinclude:%=-I%) $(LINK)
|
||||||
|
|
||||||
./bin/libengine.a: $(eobjects)
|
$(ENGINE): $(eobjects)
|
||||||
@echo Making library engine.a
|
@echo Making library engine.a
|
||||||
@ar -r libengine.a $(eobjects)
|
@ar -r $(ENGINE) $(eobjects)
|
||||||
@mv libengine.a bin/libengine.a
|
@cp -u -r $(ehead) $(INCLUDE)
|
||||||
@cp $() bin/include
|
|
||||||
|
|
||||||
./bin/libeditor.a: $(edobjects)
|
$(EDITOR): $(edobjects)
|
||||||
@echo Making editor library
|
@echo Making editor library
|
||||||
@ar -r libeditor.a $(edobjects)
|
@ar -r $(EDITOR) $(edobjects)
|
||||||
@mv libeditor.a bin/libeditor.a
|
@cp -u -r $(edhead) $(INCLUDE)
|
||||||
@cp $(edhead) bin/include
|
|
||||||
|
|
||||||
xbrainstorm: libengine.a $(bsobjects)
|
xbrainstorm: $(ENGINE) $(bsobjects)
|
||||||
@echo Making brainstorm
|
@echo Making brainstorm
|
||||||
@$(CXX) $(bsobjects) -DGLEW_STATIC $(LINK) -o $@
|
@$(CXX) $(bsobjects) $(LINK) -o $@
|
||||||
mv xbrainstorm brainstorm/brainstorm$(EXT)
|
@mv xbrainstorm brainstorm/brainstorm$(EXT)
|
||||||
|
|
||||||
pinball: libengine.a $(pinobjects)
|
pinball: $(ENGINE) $(pinobjects)
|
||||||
@echo Making pinball
|
@echo Making pinball
|
||||||
@$(CXX) $(pinobjects) -DGLEW_STATIC $(LINK) -o $@
|
@$(CXX) $(pinobjects) $(LINK) -o $@
|
||||||
mv pinball paladin/pinball
|
@mv pinball paladin/pinball
|
||||||
|
|
||||||
$(objprefix)/%.o:%.cpp
|
$(objprefix)/%.o:%.cpp
|
||||||
@mkdir -p $(@D)
|
@mkdir -p $(@D)
|
||||||
@echo Making C++ object $@
|
@echo Making C++ object $@
|
||||||
@$(CXX) $(includeflag) $(COMPILER_FLAGS) -c -MMD -MP $< -o $@
|
@$(CXX) $(COMPILER_FLAGS)
|
||||||
|
|
||||||
$(objprefix)/%.o:%.c
|
$(objprefix)/%.o:%.c
|
||||||
@mkdir -p $(@D)
|
@mkdir -p $(@D)
|
||||||
@echo Making C object $@
|
@echo Making C object $@
|
||||||
@$(CC) $(includeflag) $(COMPILER_FLAGS) -c -MMD -MP $< -o $@
|
@$(CC) $(COMPILER_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
@echo Cleaning project
|
@echo Cleaning project
|
||||||
@rm -f $(eobjects) $(bsobjects)
|
@find $(BIN) -type f -delete
|
|
@ -7,7 +7,6 @@
|
||||||
cpBody *ballBody = NULL;
|
cpBody *ballBody = NULL;
|
||||||
cpSpace *space = NULL;
|
cpSpace *space = NULL;
|
||||||
float phys2d_gravity = -50.f;
|
float phys2d_gravity = -50.f;
|
||||||
int physOn = 0;
|
|
||||||
|
|
||||||
void phys2d_init()
|
void phys2d_init()
|
||||||
{
|
{
|
||||||
|
@ -17,7 +16,7 @@ void phys2d_init()
|
||||||
|
|
||||||
void phys2d_update(float deltaT)
|
void phys2d_update(float deltaT)
|
||||||
{
|
{
|
||||||
cpSpaceStep(space, deltaT * physOn);
|
cpSpaceStep(space, deltaT);
|
||||||
}
|
}
|
||||||
|
|
||||||
void phys2d_apply()
|
void phys2d_apply()
|
||||||
|
|
|
@ -1,9 +1,19 @@
|
||||||
#include "engine.h"
|
#include "engine.h"
|
||||||
|
|
||||||
|
#define PL_MPEG_IMPLEMENTATION
|
||||||
|
#define CGLTF_IMPLEMENTATION
|
||||||
|
#define GL_GLEXT_PROTOTYPES
|
||||||
|
#define STB_DS_IMPLEMENTATION
|
||||||
|
#define STB_IMAGE_IMPLEMENTATION
|
||||||
|
|
||||||
#ifdef EDITOR
|
#ifdef EDITOR
|
||||||
#include "editor.h"
|
#include "editor.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#include <stb_ds.h>
|
||||||
|
#include <stb_image.h>
|
||||||
|
#include <pl_mpeg.h>
|
||||||
|
|
||||||
#include <SDL2/SDL.h>
|
#include <SDL2/SDL.h>
|
||||||
#include <SDL2/SDL_mixer.h>
|
#include <SDL2/SDL_mixer.h>
|
||||||
#include "openglrender.h"
|
#include "openglrender.h"
|
||||||
|
@ -17,20 +27,8 @@
|
||||||
#include "log.h"
|
#include "log.h"
|
||||||
#include "resources.h"
|
#include "resources.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
unsigned int frameCount = 0;
|
|
||||||
uint32_t lastTick = 0;
|
|
||||||
uint32_t frameTick = 0;
|
|
||||||
uint32_t elapsed = 0;
|
|
||||||
|
|
||||||
uint32_t physMS = FPS144;
|
|
||||||
uint32_t physlag = 0;
|
|
||||||
uint32_t renderMS = FPS144;
|
|
||||||
uint32_t renderlag = 0;
|
|
||||||
|
|
||||||
// TODO: Init on the heap
|
// TODO: Init on the heap
|
||||||
struct mCamera camera = {0};
|
|
||||||
|
|
||||||
#include "engine.h"
|
#include "engine.h"
|
||||||
|
|
||||||
|
@ -63,7 +61,6 @@ void engine_init()
|
||||||
init_gameobjects();
|
init_gameobjects();
|
||||||
|
|
||||||
prefabs = vec_make(MAXNAME, 25);
|
prefabs = vec_make(MAXNAME, 25);
|
||||||
camera.speed = 500;
|
|
||||||
stbi_set_flip_vertically_on_load(1);
|
stbi_set_flip_vertically_on_load(1);
|
||||||
phys2d_init();
|
phys2d_init();
|
||||||
gui_init();
|
gui_init();
|
||||||
|
|
|
@ -7,13 +7,7 @@
|
||||||
#define FPS144 7
|
#define FPS144 7
|
||||||
#define FPS300 3
|
#define FPS300 3
|
||||||
|
|
||||||
#include <stb_ds.h>
|
|
||||||
#include <stb_image.h>
|
|
||||||
#include <pl_mpeg.h>
|
|
||||||
|
|
||||||
void engine_init();
|
void engine_init();
|
||||||
void engine_stop();
|
void engine_stop();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
|
@ -203,3 +203,7 @@ void gameobject_rotate(struct mGameObject *go, float as)
|
||||||
a += as * deltaT;
|
a += as * deltaT;
|
||||||
cpBodySetAngle(go->body, a);
|
cpBodySetAngle(go->body, a);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void update_gameobjects() {
|
||||||
|
vec_walk(gameobjects, gameobject_update);
|
||||||
|
}
|
|
@ -1,16 +1,30 @@
|
||||||
#define PL_MPEG_IMPLEMENTATION
|
|
||||||
#define CGLTF_IMPLEMENTATION
|
|
||||||
#define GL_GLEXT_PROTOTYPES
|
|
||||||
#define STB_DS_IMPLEMENTATION
|
|
||||||
#define STB_IMAGE_IMPLEMENTATION
|
|
||||||
|
|
||||||
#include <SDL2/SDL.h>
|
#include <SDL2/SDL.h>
|
||||||
|
#include "camera.h"
|
||||||
|
#include "window.h"
|
||||||
#include "engine.h"
|
#include "engine.h"
|
||||||
|
#include "editor.h"
|
||||||
|
#include "input.h"
|
||||||
|
#include "2dphysics.h"
|
||||||
|
#include "openglrender.h"
|
||||||
|
#include "gameobject.h"
|
||||||
|
|
||||||
|
int physOn = 0;
|
||||||
|
unsigned int frameCount = 0;
|
||||||
|
Uint32 lastTick = 0;
|
||||||
|
Uint32 frameTick = 0;
|
||||||
|
Uint32 elapsed = 0;
|
||||||
|
|
||||||
|
Uint32 physMS = FPS144;
|
||||||
|
Uint32 physlag = 0;
|
||||||
|
Uint32 renderMS = FPS144;
|
||||||
|
Uint32 renderlag = 0;
|
||||||
|
|
||||||
|
struct mCamera camera = {0};
|
||||||
|
|
||||||
int main(int argc, char **args)
|
int main(int argc, char **args)
|
||||||
{
|
{
|
||||||
/*
|
camera.speed = 500;
|
||||||
|
|
||||||
engine_init();
|
engine_init();
|
||||||
|
|
||||||
struct mSDLWindow *window = MakeSDLWindow("Untitled Game", 1920, 1080,
|
struct mSDLWindow *window = MakeSDLWindow("Untitled Game", 1920, 1080,
|
||||||
|
@ -18,13 +32,13 @@ int main(int argc, char **args)
|
||||||
SDL_WINDOW_RESIZABLE);
|
SDL_WINDOW_RESIZABLE);
|
||||||
|
|
||||||
|
|
||||||
openglInit(window);
|
openglInit();
|
||||||
|
|
||||||
|
|
||||||
editor_init(window);
|
editor_init(window);
|
||||||
|
|
||||||
|
|
||||||
quit = false;
|
int quit = 0;
|
||||||
SDL_Event e;
|
SDL_Event e;
|
||||||
|
|
||||||
//While application is running
|
//While application is running
|
||||||
|
@ -48,7 +62,7 @@ int main(int argc, char **args)
|
||||||
|
|
||||||
if (renderlag >= renderMS) {
|
if (renderlag >= renderMS) {
|
||||||
if (physOn) {
|
if (physOn) {
|
||||||
vec_walk(gameobjects, gameobject_update);
|
update_gameobjects();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -69,7 +83,7 @@ int main(int argc, char **args)
|
||||||
|
|
||||||
|
|
||||||
engine_stop();
|
engine_stop();
|
||||||
*/
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue