Giter Site home page Giter Site logo

voxelite's Introduction

Voxelite was a student project for professor Dachsbacher's Graphics & Game Development course at the Karlsruhe Institute of Technology (Computer Science M.Sc.). It consists of a proposal document, 4 sets of presentation slides, 8k lines of source code written over 3 months and was awarded the maximum grade.

Goals

  • Implement contemporary graphics techniques
    • Volumetric light scattering as post-process
    • Cascaded shadow mapping (+PCSS)
    • Physically-based rendering
    • Screen-space reflections
    • Ambient occlusion
    • Normal mapping
    • Transparency-compatible bloom
  • Create an efficient OpenGL deferred voxel renderer
    • Asynchronous chunk meshing
    • Nine total culling methods
    • Texture atlas generation
    • Asynchronous transparency sorting
    • Mixed RGB flood-fill voxel lighting
  • Generate procedural terrain
    • Parallel noise-based chunk generator
    • Spline tree for maximum configuration
    • Multiple biomes and structures
    • Practically unlimited world size

If you're thinking of a Minecraft clone - yes, pretty much that. We even stole the textures!
We're no artists, but hopefully made up for that in technical enhancements ;-)

Non-goals

  • Add gameplay elements beyond block placement
  • Create a well-documented, impeccable codebase
  • Cross-platform compatibility (Windows only)

Dependencies

Type Solution
Native bindings LWJGL
OpenGL abstraction BeaconGL
User Interface ImGui
3D Noise OpenSimplex2
Logging Log4j
Data Structures FastUtil
Testing JUnit / JMH
Other Gson / Jansi

Thanks

  • Prof. Dr.-Ing. Carsten Dachsbacher
  • Killian Herveau, M.Sc
  • Reiner Dolp, M.Sc
  • Baldur Karlsson (renderdoc)

voxelite's People

Contributors

itsflare avatar lukasxu avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.