Skip to content

Latest commit

 

History

History
62 lines (53 loc) · 1.9 KB

README.md

File metadata and controls

62 lines (53 loc) · 1.9 KB

lynxengine

Simple light-weight 3D capable game engine.

When running on a headless server it must be run using a virtual frame buffer so that GLFW can initialise correctly. This can be achieved using Xvfb.

Use of a program such as 'pngcheck -c [file]' is advised to ensure that all image assets pass CRC checks.

dependencies

  • GLFW3
  • GLM
  • GLAD (INCLUDED)
  • LODEPNG (INCLUDED)

progress

  • file loading & saving
  • configuration loading
  • thread safe debug logging
  • timer and fps cap handling
  • basic window creation & management
  • user input capture : mouse & keyboard
  • shared threaded resource handler
  • resource loading : sprites
  • resource loading : shaders
  • resource loading : meshes
  • resource loading : samples
  • resource creation : sprites
  • resource creation : render textures
  • basic sprite rendering
  • gui interaction
  • text rendering
  • basic mesh rendering
  • mesh texture application
  • mesh dynamic lighting
  • non-static light count handling
  • basic component-entity system
  • base components : transform
  • base components : camera
  • base components : mesh renderer
  • camera compositing
  • post-processing buffer switch
  • post-processing : light-key
  • post-processing : blur
  • post-processing : monochrome
  • post-processing : bloom
  • post-processing : colour-grading
  • basic cube collision detection
  • basic cube collision resolution
  • complex convex shape collision detection
  • complex convex shape collision resolution
  • sample playback
  • auditory world-space simulation
  • animation playback

bugs

> rotation is broken - replace vector rotation with quaternions > mesh renderer implementation is unoptimised - create renderqueue with automatic ordering > camera renders straight to default framebuffer - implement target framebuffers and basic compositing