Block selection clears before new selection be drawn Added a call to LineBatch::flush() to ensure that all buffered data is correctly uploaded to the GPU and rendered. The missing flush() was causing rendering artifacts, such as flickering of block outlines, which has now been resolved by ensuring that all accumulated data is processed and rendered properly. Signed-off-by: Vyacheslav Ivanov <islavaivanov76@gmail.com>
Latest release
Controls
- Esc - pause
- Tab - open inventory
- W A S D - movement
- Space - jump
- Q - drop item
- LMB - remove block
- RMB - place block
- F - toggle flight mode
- N - noclip mode
- F1 - toggle interface
- F2 - save screenshot
- F3 - debug mode
- F5 - reload chunks
Build with CMake
git clone --recursive https://github.com/MihailRis/VoxelEngine-Cpp.git
cd VoxelEngine-Cpp
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
cmake --build .
Install libraries
Install EnTT
git clone https://github.com/skypjack/entt.git
cd entt/build
cmake -DCMAKE_BUILD_TYPE=Release ..
sudo make install
Debian-based distro:
sudo apt install libglfw3-dev libglfw3 libglew-dev libglm-dev libpng-dev libopenal-dev libluajit-5.1-dev libvorbis-dev
CMake missing LUA_INCLUDE_DIR and LUA_LIBRARIES fix:
sudo ln -s /usr/lib/x86_64-linux-gnu/libluajit-5.1.a /usr/lib/x86_64-linux-gnu/liblua5.1.a
sudo ln -s /usr/include/luajit-2.1 /usr/include/lua
RHEL-based distro:
sudo dnf install glfw-devel glfw glew-devel glm-devel libpng-devel libvorbis-devel openal-devel luajit-devel
Arch-based distro:
If you use X11
sudo pacman -S glfw-x11 glew glm libpng libvorbis openal luajit
If you use Wayland
sudo pacman -S glfw-wayland glew glm libpng libvorbis openal luajit
macOS:
brew install glfw3 glew glm libpng libvorbis lua luajit openal-soft skypjack/entt/entt
If homebrew for some reason could not install the necessary packages: lua luajit openal-soft, then download, install and compile them manually (Lua, LuaJIT and OpenAL).
Build using Docker
Step 0. Install docker on your system
See https://docs.docker.com/engine/install
Step 1. Build docker container
docker build -t voxel-engine .
Step 2. Build project using the docker container
docker run --rm -it -v$(pwd):/project voxel-engine bash -c "cmake -DCMAKE_BUILD_TYPE=Release -Bbuild && cmake --build build"
Step 3. Run project using the docker container
docker run --rm -it -v$(pwd):/project -v/tmp/.X11-unix:/tmp/.X11-unix -v${XAUTHORITY}:/home/user/.Xauthority:ro -eDISPLAY --network=host voxel-engine ./build/VoxelEngine
Build with CMake and vcpkg for Windows
git clone --recursive https://github.com/MihailRis/VoxelEngine-Cpp.git
cd VoxelEngine-Cpp
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DVOXELENGINE_BUILD_WINDOWS_VCPKG=ON ..
del CMakeCache.txt
rmdir /s /q CMakeFiles
cmake -DCMAKE_BUILD_TYPE=Release -DVOXELENGINE_BUILD_WINDOWS_VCPKG=ON ..
cmake --build . --config Release
note: you can use rm CMakeCache.txt and rm -rf CMakeFiles while using Git Bash
If you have issues during the vcpkg integration, try navigate to vcpkg\downloads and extract PowerShell-[version]-win-x86 to vcpkg\downloads\tools as powershell-core-[version]-windows. Then rerun cmake -DCMAKE_BUILD_TYPE=Release -DVOXELENGINE_BUILD_WINDOWS_VCPKG=ON ..
Description
VoxelCore v0.31.12
Latest
Languages
C++
84.1%
Lua
10%
C
4.2%
GLSL
1.2%
CMake
0.3%