Skip to content

GinOwO/GameEngine

Repository files navigation

GameEng

LICENSE Language GitHub csize Build Linux

Building from source

  1. Dependencies
  • CMake
  • pkg-config
  • Mesa OpenGL development files
  • Wayland development files
  • Wayland protocols
  • Google Test development files
  • XKB common library development files
  • XRandR development files
  • Xinerama development files
  • XCursor development files
  • XInput development files

On Ubuntu, you can install the following packages:

sudo apt-get install \
	cmake pkg-config \
	libgl1-mesa-dev \
	libwayland-dev wayland-protocols \
	libgtest-dev libxkbcommon-dev \
	libxrandr-dev libxinerama-dev \
	libxcursor-dev libxi-dev

On Fedora, you can install the following packages:

sudo dnf install \
	cmake pkgconfig \
	mesa-libGL-devel \
	wayland-devel wayland-protocols \
	gtest-devel libxkbcommon-devel \
	libXrandr-devel libXinerama-devel \
	libXcursor-devel libXi-devel \
	bullet bullet-devel \
	assimp assimp-devel \
	openexr openexr-devel \
	imath imath-devel

On Arch-based systems, you can install the following packages:

yay -S \
	cmake pkg-config \
	mesa libwayland libwayland-protocols \
	gtest xkbcommon libxrandr \
	libxinerama libxcursor libxi
  1. Clone the repository
git clone https://github.com/GinOwO/Game-Engine.git
cd GameEngine
  1. Create a build directory and configure CMake
mkdir -p build
cmake -B build -S .
  1. Get submodules and build GLFW
git submodule update --init --recursive
cd include/glfw
cmake -B build
cmake --build build
sudo cmake --install build
cd ../../
  1. Build the project
cmake --build <Repository directory>/GameEngine/build --config Debug --target all --

Note: Copy the absolute path to the build folder and replace "/GameEngine/build"

  1. Run the project from the build directory
./build/GameEngine

Tests

Git pre-push hooks can be enabled by running the following command:

./.githooks/init-hooks.sh

To run the tests, you can use the following command:

cd build/tests
ctest --rerun-failed --output-on-failure --verbose

Contributing

Style guidelines are enforced using clang-format. To format the code, you can run the following command:

clang-format -i -style=file $(find . -name "*.cpp" -o -name "*.h")

A modified version of the LKML coding style is used in this project.

License

This project is licensed under the GPL-2.0 License - see the LICENSE file for details

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published