May B. 7f8e249a18 | ||
---|---|---|
.vscode | ||
deps | ||
resource | ||
src | ||
.gitattributes | ||
.gitignore | ||
.gitlab-ci.yml | ||
CMakeLists.txt | ||
Doxyfile | ||
LICENSE | ||
README.md | ||
TODO.md | ||
univerxel.icns | ||
univerxel.ico | ||
univerxel.png | ||
univerxel.rc |
README.md
Univerxel
Work in progress galaxy down to atom (mostly centimeter) online voxel game
Table of Contents
About The Project
Experimental project using OpenGL and Vulkan.
Built With
- C++
- OpenGL
- Vulkan
- ImGui
- PicoQUIC
- FasNoiseSIMD
- Love and insomnia
Run it
Get a release compatible with your system window library and processor capabilities, or build it
Prerequisites
- OpenGL or Vulkan driver
- OpenSSL 1.1+
Usage
./univerxel
Edit config.toml
Profit !
Build
To get a local copy up and running, follow these simple steps.
Prerequisites
- C++17
- CMake 3.11
- System window headers (xorg-dev)
- OpenGL, Vulkan and OpenSSL headers
Optionally
- Python: utility scripts
- Tracy v0.7: profiling
- glslc: build vk shaders
- Imagemagick: build textures (convert jpg to png)
- Compressonator: build textures (compress dds)
Installation
- Clone the project repo
git lfs clone --recursive https://framagit.org/univerxel/univerxel.git
- Create build folder and move
mkdir build && cd build
- Build CMake
cmake <options> ..
CMake options: -DKEY=VAL
Key | Usage | Default |
---|---|---|
SIMD_LEVEL | SIMD processor acceleration (sse2, sse4.1, avx2, avx512f) | avx2 |
USE_FMA | Fast math | 1 |
CMAKE_BUILD_TYPE | Level of optimization | Release |
PROFILING | Tracy profiling | 0 |
LOG_DEBUG | Debug logs | 0 |
LOG_TRACE | Trace logs | 0 |
NATIVE | Optimize for native CPU | 0 |
- Build Make
make -j<process count> <target>
Target | Description |
---|---|
univerxel | All in one |
univerxel-server | Standalone server |
univerxel-client | Light client |
docs | Doxygen documentation |
Additionally
- Recompile Vulkan shaders
cd resource/shaders-src
./compile.sh # Use glslc
GLSL="glslValidator -V" ./compile.sh # Other glslang compiler
- Rebuild textures
cd resource/textures-src
./compile.sh # Build all texture dds
./merge.py <args> # Combine grey images to RGB
Windows
- Setup Visual Studio 2017+ with C++
- Clone picotls and picoquic in a separate directory
- Set
%OPENSSL64DIR%
and checkWindowsPort.md
andReadme.md
note from respective library - Compile then with MsBuild
- Copy picoquic.lib, picotls-openssl.lib and picotls-fusion.lib to build/libs
- Build univerxel with cmake
-A x64
and MsBuild
RoadMap
See Features
License
Distributed under the MIT License. See LICENSE for more information.
Contact
Shu - /me - me@wadza.fr