Skip to content
Lasse Numminen edited this page Oct 4, 2016 · 12 revisions

Zaphat wiki

Info

Zaphat will be a full-featured game engine and library programmable with C#. The project is currently at it's very early stages.

Goal

The goal of this project is to create an open source game engine for anyone to use for free. Target OpenGL version at this point is 3.3, but I might add some newer features in future. Anyway, I am not designing it to support multiple different renderers (i.e. OpenGL, OpenGL ES, DirectX all in one engine).

Design principles

  • The programmer can decide how it's used and extend if needed
  • Can be used as a full-featured engine
  • Any part of the engine can be used as a library

Features

This is a list of the intended features of the engine. There can and most likely will be changes during the development. Italics text features have been done, and bold text features are partially done.

  • Assets
    • Mesh loading with Assimp.NET
    • Texture loading with some library
    • Shader loading, maybe with some library or roll my own stuff
    • Audio loading with some library
    • Asset management
    • Asset packages for releasing
  • Rendering
    • General rendering related features
      • Buffers (vbo, ebo, ubo, pbo, fbo, etc)
      • Shaders
      • Instancing
      • Skeletal animation
      • Animation blending
      • Render targets
      • Multiple cameras
      • Different scene managers
        • Simple hierarchy (like Unity)
        • Quad-/Octree spatial partitioning
    • Forward 3D rendering pipeline
    • Deferred 3D rendering pipeline
    • 2D rendering pipeline
    • UI rendering pipeline
  • Computing
    • GPGPU Features
  • Audio
  • Input
  • Scripting
    • C# scripting
    • Run-time compilation and debug support
  • Editor
    • This is a huge project itself, features will be listed whenever planning goes that far

Roadmap

The next things to implement would be:

  1. Vertex buffer objects and index buffer objects and such
  2. Shader support
  3. Support for multiple cameras

History

This project started at Assembly Summer 2014 as a project called Hatzap. The name was randomly generated by some random name generator from the internet. Since then, I have restarted the project under it's current name, Zaphat.

Clone this wiki locally