Voxel engine written in Rust (backup/mirror)
Find a file
2023-05-21 12:08:29 +02:00
.cargo update workflow/cargo config 2023-05-16 23:33:17 +02:00
.github/workflows Oops, checkout already skips tag creation... 2023-05-19 03:51:32 +02:00
.readme fix builds with nightly, update readme 2023-05-16 13:42:55 +02:00
.vscode disable lint 2023-03-08 01:47:46 +01:00
assets/blocks improve worldgen 2023-02-18 00:37:17 +01:00
kubi use libcubi as lib name 2023-05-21 12:08:29 +02:00
kubi-logging initial android support (fails on textures) 2023-05-21 03:14:04 +02:00
kubi-server fix warnings 2023-05-21 02:16:34 +02:00
kubi-shared Big refactor + Early wip position sync /connect events in multiplayer 2023-05-19 07:02:20 +02:00
.gitignore add generate_visualizer_data feature 2023-03-09 00:56:46 +01:00
Cargo.lock add ndk to deps, disable srgb by default 2023-05-21 12:03:41 +02:00
Cargo.toml player position sync, refactor some stuff 2023-05-20 02:32:32 +02:00
README.md Add android build instructions 2023-05-21 06:53:47 +02:00
Server.toml Finish upgrading server to uflow 2023-03-09 03:30:37 +01:00

Kubi

Voxel engine written in Rust

features

  • multithreaded procedural world generation
  • procedural structures
  • multithreaded mesh generation
  • cubic chunks (32x32x32)
  • low-level OpenGL renderer, targetting OpenGL ES 3.0
  • frustum culling
  • work-in-progress multiplayer support
  • block placement system
  • partial gamepad input support
  • (experimental) android support

download

Latest nightly release

building

build/run

cargo build --bin kubi
cargo run --bin kubi

build with nightly features

cargo +nightly build --bin kubi -r --features nightly

build for android

prerequisites: Android SDK, NDK, platform-tools, latest JDK

cargo install cargo-apk  
cargo target add aarch64-linux-android  
cargo apk build -p kubi
cargo apk run -p kubi

mutiplayer

to join a multiplayer server, just pass the ip address as an argument

cargo run -p kubi -- 127.0.0.1:1234

server configuration

[server]
address = "0.0.0.0:12345"     # ip address to bind to
max_clients = 32              # max amount of connected clients
timeout_ms = 10000            # client timeout in ms

[world]
seed = 0xfeb_face_dead_cafe   # worldgen seed to use

[query]
name = "Kubi Server"          # server name
~ uwu