MDietermann e034d10339 feat(world-gen): larger biomes, smooth height blending, capped mountains; centralize tunables in Configuration
Terrain feel: biome regions ~10x larger (Voronoi cell size 96->960); terrain height now eases across biome borders via a Voronoi distance blend (smooth, and ~25x cheaper than the old 169-sample box blur); mountains capped to ~2/3 world height and gentled (ridged amplitude/frequency lowered), snow line lowered to match.

Centralization: ~27 world-gen/render tuning constants (biome amplitudes & frequencies, climate-noise frequencies/octaves, biome-selection thresholds, blend width, cell size, filler depth, snow line, camera near plane, spawn offset, overlay scale) hoisted from scattered literals into a region-organized, fully-commented Configuration. Configuration is threaded into NoiseSource, the biomes, BiomeRegistry, BiomeMap (+Classify), TerrainSampler, WorldGenerator (+BlockAt filler depth), and Camera via Player. Defaults equal the prior values, so generation is unchanged; worldgen tests updated for the new constructor signatures.
2026-06-03 16:27:06 +02:00
2026-06-01 22:09:02 +02:00
2026-05-28 13:35:31 +00:00

VoxelEngine

A learning voxel engine written in C# (.NET 10) on top of OpenTK 4 / OpenGL 3.3.

Status

Early baseline. The current goal is rendering a single face-culled, textured 16×16×16 chunk that you can fly around with a free camera — the structural core the rest of the engine builds on.

Tech stack

  • .NET 10 / C#
  • OpenTK 4.9.4 — windowing, OpenGL bindings, and math
  • StbImageSharp — texture (PNG) loading

Build & run

Requires the .NET 10 SDK.

dotnet run --project VoxelEngine.csproj

Once the baseline is running: WASD to move, mouse to look, Esc to quit.

Project layout

Core/       game window + loop
Rendering/  shader, texture, camera, chunk renderer (OpenGL)
World/       block model, registry, chunk, mesher (no OpenGL)
Assets/     shaders + texture atlas

The World/ layer is intentionally free of any OpenGL dependency so the voxel logic can be unit-tested headless.

Roadmap

  • Baseline: window, fly-camera, one face-culled textured chunk
  • Procedural terrain (noise)
  • Multiple chunks + frustum culling
  • Player controller + AABB collision
  • Block break / place
  • Lighting
Description
No description provided
Readme 1.1 MiB
Languages
C# 97.9%
GLSL 2.1%