rezcraft 0.1.0

Minecraft like game written in rust using wgpu, supporting both native and wasm
docs.rs failed to build rezcraft-0.1.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: rezcraft-0.2.0

Rezcraft

  • Voxel engine written in rust using wgpu
  • Supports both native targets and wasm

Screenshots

Sunlight Lighting UI

Features

  • Parallelised world and mesh generation
  • Efficient meshes using greedy meshing
  • Easily add custom textures and blocks, modify blocktypes at runtime
  • Colored lighting system, sunlight
  • Configurable through in-app settings
  • Transparency (native only)
  • Savegame system (native only)

How to

Installation

  • Run the web version without installing anything
  • Precompiled binaries can be found under releases
    • Download a binary for your system and resource.zip
    • Extract both archives in the same directory, so rezcraft (or rezcraft.exe on windows) and the resouce directory are in the same directory
    • Your directory should look like this:
├── resource
│   ├── block
│   │   └── ...
│   ├── icon.png
│   ├── shader
│   │   └── ...
│   └── texture
│       └── ...
└── rezcraft (rezcraft.exe on windows)

Directory

Adding custom textures and blocks

Textures

  • Add a .png image to ./resource/texture/, it will be loaded after programm restart
  • All texture must be square and all textures must have the same resolution

Blocks

  • Add a .yaml block describing file to ./resource/block/, use one of the exisitng files as a tempalte
  • Blocks and their textures, light souces, and properties such as transparency and solidness can also be edited at runtime (Edit block menu while paused)

Controls

Key Action
Mouse motion Rotate camera
W / ArrowUp Move forward
S / ArrowDown Move back
A / ArrowLeft Move left
D / ArrowRight Move right
Space / K Move up
LShift / J Move down
X / MouseRight Delete block
C / MouseLeft Place block
V / MouseMiddle Pick block
M Reload chunk at players position
F5 Save
F9 Load
F11 Toggle fullscreen
F12 Reload settings from config file
Tab Pause / Resume
Escape Exit

Build and run locally

  • To build for native, use cargo normally (cargo build --release) or use the run_native.sh script
  • To build to wasm, use the run_wasm.sh script

Links

Possible plans for future updates

  • Improved worldgen
  • Editable controls
  • Physics, improved collision detection
  • Optionally bake assets into the binary
  • Fancy shader effects
  • Multiplayer