Skip to content

Commit

Permalink
Restructuring
Browse files Browse the repository at this point in the history
  • Loading branch information
kosshi-net committed Sep 4, 2017
1 parent 7fc866b commit 1bed372
Show file tree
Hide file tree
Showing 41 changed files with 272 additions and 115 deletions.
40 changes: 21 additions & 19 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ SRC= src/
BIN= bin/
BUILD= build/
CC= g++
CFLAGS= -O3 -ftree-vectorize -msse2 -static -fopenmp -Wall -static-libgcc -static-libstdc++ -std=c++11
CFLAGS= -O3 -ftree-vectorize -msse2 -static -fopenmp -Wall -static-libgcc -static-libstdc++ -std=c++11 -m32
# CFLAGS= -g -fopenmp -Wall -std=c++11
#-Wl,-subsystem,windows
# -Wl,-subsystem,windows -fopt-info-vec-missed
Expand All @@ -17,29 +17,32 @@ SIMPLEX = $(EXT)simplex-1.0/
GLM = $(EXT)glm-0.9.8.4/
FT = $(EXT)freetype-2.8/

INC = -I $(GLFW)include -I $(GLEW)include -I $(SIMPLEX)include -I $(GLM)include -I $(FT)include -I
LIB = $(GLEW)lib/glew.o -L $(GLFW)lib $(SIMPLEX)lib/simplex.o $(FT)lib/libfreetype.a
INC = -I $(GLFW)include -I $(GLEW)include -I $(SIMPLEX)include -I $(GLM)include -I $(FT)include -I include -I src
LIB = $(GLEW)lib/glew.o -L $(GLFW)lib $(SIMPLEX)lib/simplex.o $(FT)lib/libfreetype.a
HEAD = include/

$(BIN)game: $(BUILD)game.o $(BUILD)renderer.o $(BUILD)input.o $(BUILD)terrain.o $(BUILD)terrainmesher.o;
$(CC) $(BUILD)game.o $(BUILD)renderer.o $(BUILD)input.o $(BUILD)terrain.o $(BUILD)terrainmesher.o $(LIB) -lglfw3 -lgdi32 -lopengl32 $(CFLAGS) -o $(BIN)game.exe
$(BIN)game: $(BUILD)game.o $(BUILD)renderer.o $(BUILD)input.o $(BUILD)terrain.o $(BUILD)terrainmesher.o $(BUILD)log.o;
$(CC) $(BUILD)game.o $(BUILD)log.o $(BUILD)renderer.o $(BUILD)input.o $(BUILD)terrain.o $(BUILD)terrainmesher.o $(LIB) -lglfw3 -lgdi32 -lopengl32 $(CFLAGS) -o $(BIN)game.exe

$(BUILD)game.o: $(SRC)game.cpp $(HEAD)defineterrain.hpp
$(BUILD)game.o: $(SRC)game.cpp $(SRC)other/defineterrain.hpp
$(CC) -c $(SRC)game.cpp $(INC) $(CFLAGS) -o $(BUILD)game.o

$(BUILD)renderer.o: $(SRC)renderer.cpp $(BUILD)res.h $(HEAD)textrenderer.hpp
$(CC) -c $(SRC)renderer.cpp $(INC) $(CFLAGS) -o $(BUILD)renderer.o
$(BUILD)renderer.o: $(SRC)renderer/renderer.cpp $(BUILD)res.h $(SRC)renderer/textrenderer.hpp
$(CC) -c $(SRC)renderer/renderer.cpp $(INC) $(CFLAGS) -o $(BUILD)renderer.o

$(BUILD)input.o: $(SRC)input.cpp
$(CC) -c $(SRC)input.cpp $(INC) $(CFLAGS) -o $(BUILD)input.o
$(BUILD)input.o: $(SRC)input/input.cpp
$(CC) -c $(SRC)input/input.cpp $(INC) $(CFLAGS) -o $(BUILD)input.o

$(BUILD)terrain.o: $(SRC)terrain.cpp
$(CC) -c $(SRC)terrain.cpp $(INC) $(CFLAGS) -o $(BUILD)terrain.o
$(BUILD)terrain.o: $(SRC)terrain/terrain.cpp
$(CC) -c $(SRC)terrain/terrain.cpp $(INC) $(CFLAGS) -o $(BUILD)terrain.o

$(BUILD)terrainmesher.o: $(SRC)terrainmesher.cpp
$(CC) -c $(SRC)terrainmesher.cpp $(INC) -fopenmp $(CFLAGS) -o $(BUILD)terrainmesher.o
$(BUILD)terrainmesher.o: $(SRC)mesher/terrainmesher.cpp
$(CC) -c $(SRC)mesher/terrainmesher.cpp $(INC) -fopenmp $(CFLAGS) -o $(BUILD)terrainmesher.o

$(BUILD)res.h: $(SRC)shader.glsl
$(BUILD)log.o: $(SRC)log/log.cpp
$(CC) -c $(SRC)log/log.cpp $(INC) $(CFLAGS) -o $(BUILD)log.o

$(BUILD)res.h: $(SRC)renderer/shader.glsl
node scripts/res.js

clean:
Expand All @@ -49,7 +52,6 @@ clean:
test: $(BIN)game
bin/game


optimal:
node scripts/res.js
$(CC) $(SRC)game.cpp $(SRC)renderer.cpp $(SRC)input.cpp $(SRC)terrain.cpp $(SRC)terrainmesher.cpp $(INC) $(LIB) -lglfw3 -lgdi32 -lopengl32 $(CFLAGS) -o $(BIN)game.exe
phystest:
$(CC) $(SRC)tests/aabbtest.cpp $(INC) $(CFLAGS) -o $(BUILD)phystest.exe
./build/phystest
Binary file removed bin/Consolas.ttf
Binary file not shown.
Binary file modified bin/game.exe
Binary file not shown.
Binary file modified build/game.o
Binary file not shown.
Binary file modified build/input.o
Binary file not shown.
Binary file added build/log.o
Binary file not shown.
Binary file added build/phystest.exe
Binary file not shown.
Binary file modified build/renderer.o
Binary file not shown.
3 changes: 3 additions & 0 deletions build/res.h

Large diffs are not rendered by default.

Binary file modified build/terrain.o
Binary file not shown.
Binary file modified build/terrainmesher.o
Binary file not shown.
Binary file modified file.ppm
Binary file not shown.
File renamed without changes.
Binary file added scripts/Inconsolata-Regular.ttf
Binary file not shown.
Binary file added scripts/font.ttf
Binary file not shown.
14 changes: 13 additions & 1 deletion scripts/res.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ console.log('Generating resource file...');
const fs = require('fs');
const cs = new (require('./commentstripper.js'))();

var shaderfile = fs.readFileSync('src/shader.glsl', 'utf8');
var shaderfile = fs.readFileSync('src/renderer/shader.glsl', 'utf8');

// var imagefile = new Uint8Array(fs.readFileSync('../res/gee.png'));

Expand All @@ -24,6 +24,18 @@ for (var i = 1; i < arr.length; i++) {
}


let file = fs.readFileSync('scripts/font.ttf');

file = new Uint8Array(file);


out += `\nconst unsigned char Consolas[] = {\n`;

for (var i = 0; i < file.length; i++) {
out += `${file[i]}, `;
}

out += `};`;

// const char[] chunk_vert_shader = "${vert}";
// const char[] chunk_frag_shader = "${frag}";
Expand Down
Empty file added src/entitysys/entitysys.cpp
Empty file.
Empty file added src/entitysys/entitysys.hpp
Empty file.
46 changes: 26 additions & 20 deletions src/game.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,24 +15,26 @@
#define GLFW_STATIC
#include <GLFW\glfw3.h>

#include <koshmath.hpp>
#include <other/koshmath.hpp>

#include <renderer.hpp>
#include <input.hpp>
#include <terrain.hpp>
#include <terrainmesher.hpp>
#include <renderer/renderer.hpp>
#include <input/input.hpp>
#include <terrain/terrain.hpp>
#include <mesher/terrainmesher.hpp>

#include <defineterrain.hpp>
#include <log/log.hpp>

#include <other/defineterrain.hpp>


// Extension of self
#include <camera.hpp>
#include <other/camera.hpp>


int main(void) {

if(krdr::init() != 0){
printf("Could not init renderer\n");
Logger::log("Could not init renderer\n");
return 1;
}
int width, height;
Expand All @@ -57,10 +59,10 @@ int main(void) {

int TERRAIN_SIZE[] = {TERRAIN_SIZE_X, TERRAIN_SIZE_Y, TERRAIN_SIZE_Z};

printf("[Main] Initializing Terrain...\n");
Logger::log("[Main] Initializing Terrain...\n");
Terrain::init( TERRAIN_SIZE );

printf("[Main] Initializing TerrainMesher...\n");
Logger::log("[Main] Initializing TerrainMesher...\n");
TerrainMesher::init(TERRAIN_SIZE, CHUNK_ROOT);


Expand All @@ -69,19 +71,19 @@ int main(void) {
// double lasttick = getTime();

bool cursorLocked = false;
bool drawText = false;
bool drawText = true;


input::resetCursorMovement();

char title[] = "ShovelEngine";
char build[] = "DEV-0.0.11";
char build[] = "DEV-0.0.16";
krdr::setWindowTitle(title);

krdr::setFogColor(0.7, 0.7, 0.9, 1.0);


printf("[Main] Startup done!\n");
Logger::log("[Main] Startup done!\n");


while(!krdr::windowShouldClose()) {
Expand Down Expand Up @@ -127,17 +129,21 @@ int main(void) {

int line = 1;

static char titlebuffer[256];
static char txtbfr[256];

snprintf(txtbfr, sizeof(txtbfr), "%ifps", (int)(1.0/delta));
krdr::drawText( txtbfr, -1 + 8 * sx, 1 - (20*line++) * sy, sx, sy, 20 );
snprintf(txtbfr, sizeof(txtbfr), "[%i, %i, %i]", (int)camera.loc[0], (int)camera.loc[1], (int)camera.loc[2]);
krdr::drawText( txtbfr, -1 + 8 * sx, 1 - (20*line++) * sy, sx, sy, 20 );

krdr::drawText( (char*)krdr::getRenderer(), -1 + 8 * sx, 1 - (20*line++) * sy, sx, sy, 20 );
krdr::drawText( (char*)krdr::getVersion(), -1 + 8 * sx, 1 - (20*line++) * sy, sx, sy, 20 );

snprintf(titlebuffer, sizeof(titlebuffer), "%ifps", (int)(1.0/delta));
krdr::drawText( titlebuffer, -1 + 8 * sx, 1 - (20*line++) * sy, sx, sy, 20 );
snprintf(titlebuffer, sizeof(titlebuffer), "[%i, %i, %i]", (int)camera.loc[0], (int)camera.loc[1], (int)camera.loc[2]);
krdr::drawText( titlebuffer, -1 + 8 * sx, 1 - (20*line++) * sy, sx, sy, 20 );
krdr::drawText( build, -1 + 8 * sx, 1 - (20*line++) * sy, sx, sy, 20 );
krdr::drawText( "Do not distribute", -1 + 8 * sx, 1 - (20*line++) * sy, sx, sy, 20 );

snprintf(titlebuffer, sizeof(titlebuffer), "Mshr: %i%%, %i", (int)(TerrainMesher::getActivity()*100), TerrainMesher::getCount());
krdr::drawText( titlebuffer, -1 + 8 * sx, 1 - (20*line++) * sy, sx, sy, 20 );
snprintf(txtbfr, sizeof(txtbfr), "Mshr: %i%%, %i", (int)(TerrainMesher::getActivity()*100), TerrainMesher::getCount());
krdr::drawText( txtbfr, -1 + 8 * sx, 1 - (20*line++) * sy, sx, sy, 20 );



Expand Down
15 changes: 13 additions & 2 deletions src/input.cpp → src/input/input.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,25 @@
#define GLFW_STATIC
#include <GLFW\glfw3.h>

#include <renderer.hpp>
#include <input.hpp>
#include <renderer/renderer.hpp>

#define MouseEventStackSize 128
#define KeyEventStackSize 128

namespace input {

typedef struct {
int button;
int action;
int mods;
} MouseEvent;

typedef struct {
int key;
int scancode;
int action;
int mods;
} KeyEvent;
GLFWwindow * window;

MouseEvent getMouseEvent(int index);
Expand Down
File renamed without changes.
37 changes: 37 additions & 0 deletions src/log/log.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@

#include <stdio.h>
#include <mutex>


#define LOG_LINE_LENGHT = 256;
#define LOG_HISTORY_LENGHT = 256;

namespace Logger {

char* logBuffer;

std::mutex mtx;

bool initialized = false;

void initialize(){

logBuffer = (char*)malloc(256*256*sizeof(char));

initialized = true;

}


void log(const char* string){
mtx.lock();

if(!initialized) initialize();

printf("%s\n", string);

mtx.unlock();
}


}
6 changes: 6 additions & 0 deletions src/log/log.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

namespace Logger {

void log(const char*);

}
Loading

0 comments on commit 1bed372

Please sign in to comment.