You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
3 years ago | |
---|---|---|
deps | 3 years ago | |
resource | 3 years ago | |
src | 3 years ago | |
.gitattributes | 3 years ago | |
.gitignore | 3 years ago | |
.gitlab-ci.yml | 3 years ago | |
CMakeLists.txt | 3 years ago | |
Doxyfile | 3 years ago | |
LICENSE | 3 years ago | |
README.md | 3 years ago | |
TODO.md | 3 years ago |
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
- FasNoise2
- Love and insomnia
Run it
Get a release compatible with your system window library or build it
Prerequisites
- OpenGL or Vulkan driver
- OpenSSL 1.1+
Usage
./univerxel
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)
- Doxygen, graphviz: generate documentation
Installation
- Clone the project repo
git lfs clone --recursive https://framagit.org/univerxel/univerxel.git
- Create build folder and move
mkdir build && cd build
- Setup CMake
cmake <options> ..
CMake options: -DKEY=VAL
Key | Usage | Default |
---|---|---|
CMAKE_BUILD_TYPE | Level of optimization | Release |
PROFILING | Tracy profiling | 0 |
LOG_DEBUG | Debug logs | 0 |
LOG_TRACE | Trace logs | 0 |
IPO | Link time optimisation | 1 |
LD_GOLD | Use gold linker | 1 |
CCACHE | Use code cache | 1 |
NATIVE | Optimize for native CPU | 0 |
RENDER_VK | Include Vulkan renderer | 1 |
- Compile
cmake --build . --parallel --target <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
PACK=<name> ./compile.sh # Build texture pack dds
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