Testing, cleaner makefiles

* Makefiles use GLOBs and Libraries to have better organization
* Zeus directory renamed to src
* New test directory for unit tests
* Using Catch2 for unit tests
* Added unit tests to BlockChunk serialization
master
aurailus 2019-02-01 16:12:37 -08:00
parent c3c9e357f9
commit d191f926ef
189 changed files with 367 additions and 184 deletions

View File

@ -1 +1 @@
zeus
Zeus

View File

@ -3,7 +3,8 @@
<component name="CMakeWorkspace" PROJECT_DIR="$PROJECT_DIR$" />
<component name="CidrRootsConfiguration">
<sourceRoots>
<file path="$PROJECT_DIR$/zeus" />
<file path="$PROJECT_DIR$/src" />
<file path="$PROJECT_DIR$/test" />
</sourceRoots>
<excludeRoots>
<file path="$PROJECT_DIR$/Libraries" />

View File

@ -1,106 +1,59 @@
cmake_minimum_required(VERSION 3.12)
project(zeus)
cmake_minimum_required(VERSION 3.12 FATAL_ERROR)
set (CMAKE_CXX_STANDARD 14)
set (PROJECT_NAME "Zeus")
set(CMAKE_CXX_STANDARD 14)
project (${PROJECT_NAME})
include_directories(lib/glew/include/GL)
include_directories(lib/glfw_linux/include)
include_directories(lib/glm)
include_directories(lib/stb_image)
include_directories(lib/cute)
include_directories(lib/sol)
include_directories(lib/asio-1.12.2/include)
include_directories(lib/gzip-hpp-master/include)
#Include all of the library headers
#This should be refactored in the future to use a GLOB with standardized folders
find_package(OpenGL REQUIRED)
find_package(glfw3 REQUIRED)
include_directories (
lib/glew/include/GL
lib/glfw_linux/include
lib/glm
lib/stb_image
lib/cute
lib/sol
lib/asio-1.12.2/include
lib/gzip-hpp-master/include
lib/catch
)
link_directories(lib/glew/lib)
#Include all of the dynamic libraries
add_executable(zeus
zeus/Main.cpp
zeus/client/engine/graphics/Mesh.cpp
zeus/client/engine/graphics/Mesh.h
zeus/generic/helpers/PerlinNoise.cpp
zeus/generic/helpers/PerlinNoise.h
zeus/client/engine/Entity.cpp
zeus/client/engine/Entity.h
zeus/client/engine/graphics/Shader.cpp
zeus/client/engine/graphics/Shader.h
zeus/client/engine/Window.cpp
zeus/client/engine/Window.h
zeus/client/engine/Camera.cpp
zeus/client/engine/Camera.h
zeus/client/engine/graphics/Texture.cpp
zeus/client/engine/graphics/Texture.h
zeus/client/graphics/mesh/MeshGenerator.cpp
zeus/client/graphics/mesh/MeshGenerator.h
zeus/client/engine/Timer.cpp
zeus/client/engine/Timer.h
zeus/generic/blocks/BlockAtlas.cpp
zeus/generic/blocks/BlockAtlas.h
zeus/generic/blocks/BlockDef.cpp
zeus/generic/blocks/BlockDef.h
zeus/generic/blocks/MeshPart.cpp
zeus/generic/blocks/MeshPart.h
zeus/generic/blocks/MeshMod.h
zeus/client/graphics/mesh/Vertex.cpp
zeus/client/graphics/mesh/Vertex.h
zeus/generic/blocks/BlockModel.cpp
zeus/generic/blocks/BlockModel.h
zeus/generic/blocks/TextureAtlas.cpp
zeus/generic/blocks/TextureAtlas.h
zeus/client/gameworld/World.cpp
zeus/client/gameworld/World.h
zeus/generic/blocks/BlockChunk.cpp
zeus/generic/blocks/BlockChunk.h
zeus/generic/helpers/ArrayTrans3D.h
zeus/client/graphics/mesh/MeshChunk.cpp
zeus/client/graphics/mesh/MeshChunk.h
zeus/client/scene/GameScene.cpp
zeus/client/scene/GameScene.h
zeus/client/engine/graphics/Renderer.cpp
zeus/client/engine/graphics/Renderer.h
zeus/client/lua/LuaParser.cpp
zeus/client/lua/LuaParser.h
zeus/client/lua/l_register_block.cpp
zeus/client/lua/l_register_block.h
zeus/client/engine/graphics/TextBuilder.cpp
zeus/client/engine/graphics/TextBuilder.h
zeus/client/engine/graphics/TextBuilder.cpp
zeus/client/engine/graphics/HudText.cpp
zeus/client/engine/graphics/HudText.h
zeus/client/graphics/gui/DebugGui.cpp
zeus/client/graphics/gui/DebugGui.h
zeus/client/gameworld/Player.cpp
zeus/client/gameworld/Player.h
zeus/client/engine/Ray.cpp
zeus/client/engine/Ray.h
zeus/client/lua/l_register_blockmodel.cpp
zeus/client/lua/l_register_blockmodel.h
zeus/client/lua/LuaApi.cpp
zeus/client/lua/LuaApi.h
zeus/client/Client.cpp
zeus/client/Client.h
zeus/client/engine/scene/SceneManager.cpp
zeus/client/engine/scene/SceneManager.h
zeus/client/engine/scene/Scene.h
zeus/client/ClientState.h
zeus/client/scene/MenuScene.cpp
zeus/client/scene/MenuScene.h
zeus/server/Server.cpp
zeus/server/Server.h
zeus/server/network/ServerClient.cpp
zeus/server/network/ServerClient.h
zeus/generic/network/Packet.cpp
zeus/generic/network/Packet.h
zeus/server/ServerPlayer.cpp
zeus/server/ServerPlayer.h
zeus/client/network/ServerConnection.cpp
zeus/client/network/ServerConnection.h
zeus/client/gameworld/WorldThreadDefs.cpp
zeus/client/gameworld/WorldThreadDefs.h
zeus/server/network/ConnMan.cpp
zeus/server/network/ConnMan.h zeus/generic/gen/MapGen.cpp zeus/generic/gen/MapGen.h)
set (ZEUS_LIBRARIES
${OPENGL_gl_LIBRARY} #opengl
glfw #glfw
libGLEW.so #glew
pthread #std::thread
lua #sol2
dl z #gzip
enet #enet
)
target_link_libraries(zeus ${OPENGL_gl_LIBRARY} glfw libGLEW.so pthread lua dl z)
#Include 'Packages', I don't understand how this works
find_package (OpenGL REQUIRED)
find_package (glfw3 REQUIRED)
link_directories (lib/glew/lib)
#Configure Main Executable
add_subdirectory(src)
set(MAIN_EXEC_NAME "ZeusApp")
add_executable(${MAIN_EXEC_NAME} src/Main.cpp)
target_link_libraries(${MAIN_EXEC_NAME} zeusCore)
target_link_libraries(${MAIN_EXEC_NAME} ${ZEUS_LIBRARIES})
#Configure Test Executable
add_subdirectory(test)
set(TEST_EXEC_NAME "ZeusTest")
add_executable(${TEST_EXEC_NAME} test/Main.cpp)
target_link_libraries(${TEST_EXEC_NAME} zeusCore)
target_link_libraries(${TEST_EXEC_NAME} zeusTest)
target_link_libraries(${TEST_EXEC_NAME} ${ZEUS_LIBRARIES})

View File

@ -11,4 +11,4 @@ void main() {
vec2 texCoord = fragTex;
fragColor = texture(tex, texCoord) * color;
// fragColor = color;
}
}

View File

@ -15,4 +15,4 @@ void main() {
color = vec4(1, 1, 1, 1);
fragTex = tex;
}
}

View File

@ -1,3 +1,4 @@
#version 330
in vec4 color;
@ -12,4 +13,4 @@ void main() {
vec4 color = texture(tex, texCoord) * color;
if (color.a > 0.8) fragColor = color;
else discard;
}
}

View File

@ -1,3 +1,4 @@
#version 330
layout (location = 0) in vec3 pos;
@ -21,4 +22,4 @@ void main() {
color = myColor;
fragTex = tex;
}
}

View File

Before

Width:  |  Height:  |  Size: 133 B

After

Width:  |  Height:  |  Size: 133 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 746 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 789 B

View File

Before

Width:  |  Height:  |  Size: 607 B

After

Width:  |  Height:  |  Size: 607 B

View File

Before

Width:  |  Height:  |  Size: 858 B

After

Width:  |  Height:  |  Size: 858 B

View File

Before

Width:  |  Height:  |  Size: 841 B

After

Width:  |  Height:  |  Size: 841 B

View File

Before

Width:  |  Height:  |  Size: 672 B

After

Width:  |  Height:  |  Size: 672 B

View File

Before

Width:  |  Height:  |  Size: 857 B

After

Width:  |  Height:  |  Size: 857 B

View File

Before

Width:  |  Height:  |  Size: 690 B

After

Width:  |  Height:  |  Size: 690 B

View File

Before

Width:  |  Height:  |  Size: 931 B

After

Width:  |  Height:  |  Size: 931 B

View File

Before

Width:  |  Height:  |  Size: 884 B

After

Width:  |  Height:  |  Size: 884 B

View File

Before

Width:  |  Height:  |  Size: 857 B

After

Width:  |  Height:  |  Size: 857 B

View File

Before

Width:  |  Height:  |  Size: 674 B

After

Width:  |  Height:  |  Size: 674 B

View File

Before

Width:  |  Height:  |  Size: 620 B

After

Width:  |  Height:  |  Size: 620 B

View File

Before

Width:  |  Height:  |  Size: 812 B

After

Width:  |  Height:  |  Size: 812 B

View File

Before

Width:  |  Height:  |  Size: 739 B

After

Width:  |  Height:  |  Size: 739 B

View File

Before

Width:  |  Height:  |  Size: 739 B

After

Width:  |  Height:  |  Size: 739 B

View File

Before

Width:  |  Height:  |  Size: 740 B

After

Width:  |  Height:  |  Size: 740 B

View File

Before

Width:  |  Height:  |  Size: 746 B

After

Width:  |  Height:  |  Size: 746 B

View File

Before

Width:  |  Height:  |  Size: 792 B

After

Width:  |  Height:  |  Size: 792 B

View File

Before

Width:  |  Height:  |  Size: 700 B

After

Width:  |  Height:  |  Size: 700 B

View File

Before

Width:  |  Height:  |  Size: 664 B

After

Width:  |  Height:  |  Size: 664 B

View File

Before

Width:  |  Height:  |  Size: 631 B

After

Width:  |  Height:  |  Size: 631 B

View File

Before

Width:  |  Height:  |  Size: 813 B

After

Width:  |  Height:  |  Size: 813 B

View File

Before

Width:  |  Height:  |  Size: 706 B

After

Width:  |  Height:  |  Size: 706 B

View File

Before

Width:  |  Height:  |  Size: 648 B

After

Width:  |  Height:  |  Size: 648 B

View File

Before

Width:  |  Height:  |  Size: 532 B

After

Width:  |  Height:  |  Size: 532 B

View File

Before

Width:  |  Height:  |  Size: 670 B

After

Width:  |  Height:  |  Size: 670 B

View File

Before

Width:  |  Height:  |  Size: 715 B

After

Width:  |  Height:  |  Size: 715 B

View File

Before

Width:  |  Height:  |  Size: 724 B

After

Width:  |  Height:  |  Size: 724 B

View File

Before

Width:  |  Height:  |  Size: 848 B

After

Width:  |  Height:  |  Size: 848 B

View File

Before

Width:  |  Height:  |  Size: 400 B

After

Width:  |  Height:  |  Size: 400 B

View File

Before

Width:  |  Height:  |  Size: 545 B

After

Width:  |  Height:  |  Size: 545 B

View File

Before

Width:  |  Height:  |  Size: 712 B

After

Width:  |  Height:  |  Size: 712 B

View File

Before

Width:  |  Height:  |  Size: 612 B

After

Width:  |  Height:  |  Size: 612 B

View File

Before

Width:  |  Height:  |  Size: 797 B

After

Width:  |  Height:  |  Size: 797 B

View File

Before

Width:  |  Height:  |  Size: 760 B

After

Width:  |  Height:  |  Size: 760 B

View File

Before

Width:  |  Height:  |  Size: 804 B

After

Width:  |  Height:  |  Size: 804 B

View File

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

Before

Width:  |  Height:  |  Size: 774 B

After

Width:  |  Height:  |  Size: 774 B

View File

Before

Width:  |  Height:  |  Size: 742 B

After

Width:  |  Height:  |  Size: 742 B

View File

Before

Width:  |  Height:  |  Size: 638 B

After

Width:  |  Height:  |  Size: 638 B

View File

Before

Width:  |  Height:  |  Size: 718 B

After

Width:  |  Height:  |  Size: 718 B

View File

Before

Width:  |  Height:  |  Size: 523 B

After

Width:  |  Height:  |  Size: 523 B

View File

Before

Width:  |  Height:  |  Size: 766 B

After

Width:  |  Height:  |  Size: 766 B

View File

Before

Width:  |  Height:  |  Size: 655 B

After

Width:  |  Height:  |  Size: 655 B

View File

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

Before

Width:  |  Height:  |  Size: 684 B

After

Width:  |  Height:  |  Size: 684 B

View File

Before

Width:  |  Height:  |  Size: 818 B

After

Width:  |  Height:  |  Size: 818 B

View File

Before

Width:  |  Height:  |  Size: 750 B

After

Width:  |  Height:  |  Size: 750 B

View File

Before

Width:  |  Height:  |  Size: 666 B

After

Width:  |  Height:  |  Size: 666 B

View File

Before

Width:  |  Height:  |  Size: 767 B

After

Width:  |  Height:  |  Size: 767 B

View File

Before

Width:  |  Height:  |  Size: 553 B

After

Width:  |  Height:  |  Size: 553 B

View File

Before

Width:  |  Height:  |  Size: 745 B

After

Width:  |  Height:  |  Size: 745 B

View File

Before

Width:  |  Height:  |  Size: 771 B

After

Width:  |  Height:  |  Size: 771 B

View File

Before

Width:  |  Height:  |  Size: 753 B

After

Width:  |  Height:  |  Size: 753 B

View File

Before

Width:  |  Height:  |  Size: 740 B

After

Width:  |  Height:  |  Size: 740 B

View File

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Before

Width:  |  Height:  |  Size: 612 B

After

Width:  |  Height:  |  Size: 612 B

View File

Before

Width:  |  Height:  |  Size: 796 B

After

Width:  |  Height:  |  Size: 796 B

View File

Before

Width:  |  Height:  |  Size: 630 B

After

Width:  |  Height:  |  Size: 630 B

View File

Before

Width:  |  Height:  |  Size: 657 B

After

Width:  |  Height:  |  Size: 657 B

View File

Before

Width:  |  Height:  |  Size: 659 B

After

Width:  |  Height:  |  Size: 659 B

View File

Before

Width:  |  Height:  |  Size: 773 B

After

Width:  |  Height:  |  Size: 773 B

View File

Before

Width:  |  Height:  |  Size: 748 B

After

Width:  |  Height:  |  Size: 748 B

View File

Before

Width:  |  Height:  |  Size: 721 B

After

Width:  |  Height:  |  Size: 721 B

View File

Before

Width:  |  Height:  |  Size: 754 B

After

Width:  |  Height:  |  Size: 754 B

View File

Before

Width:  |  Height:  |  Size: 852 B

After

Width:  |  Height:  |  Size: 852 B

View File

Before

Width:  |  Height:  |  Size: 758 B

After

Width:  |  Height:  |  Size: 758 B

View File

Before

Width:  |  Height:  |  Size: 617 B

After

Width:  |  Height:  |  Size: 617 B

View File

Before

Width:  |  Height:  |  Size: 716 B

After

Width:  |  Height:  |  Size: 716 B

View File

Before

Width:  |  Height:  |  Size: 737 B

After

Width:  |  Height:  |  Size: 737 B

View File

Before

Width:  |  Height:  |  Size: 347 B

After

Width:  |  Height:  |  Size: 347 B

View File

Before

Width:  |  Height:  |  Size: 377 B

After

Width:  |  Height:  |  Size: 377 B

View File

Before

Width:  |  Height:  |  Size: 447 B

After

Width:  |  Height:  |  Size: 447 B

View File

Before

Width:  |  Height:  |  Size: 450 B

After

Width:  |  Height:  |  Size: 450 B

View File

Before

Width:  |  Height:  |  Size: 522 B

After

Width:  |  Height:  |  Size: 522 B

View File

Before

Width:  |  Height:  |  Size: 294 B

After

Width:  |  Height:  |  Size: 294 B

View File

Before

Width:  |  Height:  |  Size: 370 B

After

Width:  |  Height:  |  Size: 370 B

View File

Before

Width:  |  Height:  |  Size: 453 B

After

Width:  |  Height:  |  Size: 453 B

View File

Before

Width:  |  Height:  |  Size: 284 B

After

Width:  |  Height:  |  Size: 284 B

View File

Before

Width:  |  Height:  |  Size: 324 B

After

Width:  |  Height:  |  Size: 324 B

View File

Before

Width:  |  Height:  |  Size: 323 B

After

Width:  |  Height:  |  Size: 323 B

View File

Before

Width:  |  Height:  |  Size: 334 B

After

Width:  |  Height:  |  Size: 334 B

View File

Before

Width:  |  Height:  |  Size: 522 B

After

Width:  |  Height:  |  Size: 522 B

View File

Before

Width:  |  Height:  |  Size: 644 B

After

Width:  |  Height:  |  Size: 644 B

View File

Before

Width:  |  Height:  |  Size: 726 B

After

Width:  |  Height:  |  Size: 726 B

View File

Before

Width:  |  Height:  |  Size: 193 B

After

Width:  |  Height:  |  Size: 193 B

View File

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

Before

Width:  |  Height:  |  Size: 206 B

After

Width:  |  Height:  |  Size: 206 B

92
src/CMakeLists.txt Normal file
View File

@ -0,0 +1,92 @@
file (GLOB_RECURSE ZEUS_SRC_FILES "*.cpp")
list(FILTER ZEUS_SRC_FILES EXCLUDE REGEX "Main.cpp")
add_library (zeusCore ${ZEUS_SRC_FILES})
#set(ZEUS_SRC_FILES
# client/engine/graphics/Mesh.cpp
# client/engine/graphics/Mesh.h
# generic/helpers/PerlinNoise.cpp
# generic/helpers/PerlinNoise.h
# client/engine/Entity.cpp
# client/engine/Entity.h
# client/engine/graphics/Shader.cpp
# client/engine/graphics/Shader.h
# client/engine/Window.cpp
# client/engine/Window.h
# client/engine/Camera.cpp
# client/engine/Camera.h
# client/engine/graphics/Texture.cpp
# client/engine/graphics/Texture.h
# client/graphics/mesh/MeshGenerator.cpp
# client/graphics/mesh/MeshGenerator.h
# client/engine/Timer.cpp
# client/engine/Timer.h
# generic/blocks/BlockAtlas.cpp
# generic/blocks/BlockAtlas.h
# generic/blocks/BlockDef.cpp
# generic/blocks/BlockDef.h
# generic/blocks/MeshPart.cpp
# generic/blocks/MeshPart.h
# generic/blocks/MeshMod.h
# client/graphics/mesh/Vertex.cpp
# client/graphics/mesh/Vertex.h
# generic/blocks/BlockModel.cpp
# generic/blocks/BlockModel.h
# generic/blocks/TextureAtlas.cpp
# generic/blocks/TextureAtlas.h
# client/gameworld/World.cpp
# client/gameworld/World.h
# generic/blocks/BlockChunk.cpp
# generic/blocks/BlockChunk.h
# generic/helpers/ArrayTrans3D.h
# client/graphics/mesh/MeshChunk.cpp
# client/graphics/mesh/MeshChunk.h
# client/scene/GameScene.cpp
# client/scene/GameScene.h
# client/engine/graphics/Renderer.cpp
# client/engine/graphics/Renderer.h
# client/lua/LuaParser.cpp
# client/lua/LuaParser.h
# client/lua/l_register_block.cpp
# client/lua/l_register_block.h
# client/engine/graphics/TextBuilder.cpp
# client/engine/graphics/TextBuilder.h
# client/engine/graphics/TextBuilder.cpp
# client/engine/graphics/HudText.cpp
# client/engine/graphics/HudText.h
# client/graphics/gui/DebugGui.cpp
# client/graphics/gui/DebugGui.h
# client/gameworld/Player.cpp
# client/gameworld/Player.h
# client/engine/Ray.cpp
# client/engine/Ray.h
# client/lua/l_register_blockmodel.cpp
# client/lua/l_register_blockmodel.h
# client/lua/LuaApi.cpp
# client/lua/LuaApi.h
# client/Client.cpp
# client/Client.h
# client/engine/scene/SceneManager.cpp
# client/engine/scene/SceneManager.h
# client/engine/scene/Scene.h
# client/ClientState.h
# client/scene/MenuScene.cpp
# client/scene/MenuScene.h
# server/Server.cpp
# server/Server.h
# server/network/ServerClient.cpp
# server/network/ServerClient.h
# generic/network/Packet.cpp
# generic/network/Packet.h
# server/ServerPlayer.cpp
# server/ServerPlayer.h
# client/network/ServerConnection.cpp
# client/network/ServerConnection.h
# client/gameworld/WorldThreadDefs.cpp
# client/gameworld/WorldThreadDefs.h
# server/network/ConnMan.cpp
# server/network/ConnMan.h
# generic/gen/MapGen.cpp
# generic/gen/MapGen.h
#)

Some files were not shown because too many files have changed in this diff Show More