Skip to content

lofi-enjoyer/Valkyrie

Repository files navigation

Valkyrie ⛅

OpenGL & Java 11 Voxel Engine

Table of contents
  1. About the project
  2. Features
  3. System requirements
  4. Building
  5. License

About the project 📝

Valkyrie is a project with the objective of putting together a basic Hytale-like game engine, to be used as a foundation for a bigger game.

2022-02-21 15-52-14 (5)

Render distance of 8 chunks (16 Minecraft chunks / ~256 meters) using around 500MB of memory, though the engine is capable of view distances up to 1 kilometer with a memory usage of about 4GB

Features ⚙

  • Greedy Meshing
  • Chunk-based world loading
  • Procedurally generated environment using Perlin Noise
  • Dynamic data loading with YAML, allowing to add new blocks and textures easily
  • Multithreaded mesh building and world generation
  • Font rendering
  • Frustum culling
  • Skybox
  • Fog effect

System requirements 🎮

Important

Native Windows 10/11 ARM builds are not available yet.

Minimum system requirements
CPU 64-bit (x86_64 or arm64-v8a) architecture
GPU Any with OpenGL 4.6+ support
RAM 2 GB (at least 1 GB free)
Storage 1 GB free on HDD
OS Windows 8.1+, macOS or Linux
Java 11+ (JDK or JRE)

Building 🚀

Warning

Prerequisites: Java Development Kit 11 or newer and Maven

  1. Clone the repository and access the directory
git clone https://github.com/lofi-enjoyer/Valkyrie
cd Valkyrie/
  1. Build the project with Maven
mvn package

License 📜

This project is under a GPL-3.0 license. Check LICENSE for more information.