Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

320 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ℹ️ This repository is an experimental fork of flecs-engine with work-in-progress Windows support. Windows builds currently require Visual Studio C++ build tools, CMake, Ninja, and network access during configure so CMake can fetch dependencies and the prebuilt wgpu-native archive. The Windows launcher scripts use vswhere to enter the MSVC developer environment automatically.

Flecs engine

A fast, portable, low footprint, opinionated (but hackable), flecs native game engine.

Usage

Build & run the engine:

cmake -S . -B build/debug
cmake --build build/debug
./build/debug/flecs

On Windows:

run.bat
run-release.bat

Or use VS Code with CMake Tools.

Why should I use this?

You should probably not use this, unless:

  • you want to quickly prototype ideas
  • you want to build an engine but not start from 0
  • you're OK with the limitations of the engine

Features

Geometry

  • Primitive shapes:
    • Quad
    • Box
    • Triangle
    • TrianglePrism
    • RightTriangle
    • RightTrianglePrism
  • Primitive meshes (parameterized mesh cache):
    • Cone
    • Cylinder
    • Sphere
    • IcoSphere
    • HemiSphere
    • NGon
  • Meshes
  • Instanced rendering

Assets

  • glTF loader
  • PNG loader
  • DDS loader
  • HDR / EXR loader (for HDRI)

Materials

  • Metallic
  • Roughness
  • Cubemap based reflections
  • Emissive
  • Transmissive (rough/smooth objects)
  • PBR textures
  • Per-instance materials
  • Shared materials

Lighting

  • Directional light
  • Point lights
  • Spot lights
  • Clustered light rendering
  • Cascading shadow maps
  • Image based lighting

Atmosphere

  • Dynamic atmosphere
  • Dynamic atmosphere IBL
  • Distance fog
  • Height based fog
  • Sun disk
  • Moon disk (w/phases)
  • Starfield
  • Time of day system

Effects

  • Bloom
  • SSAO
  • Screen space sun shafts
  • Auto exposure
  • Tony McMapFace tone mapping

Misc

  • Input handling
  • Camera controller
  • Movement systems
  • Tracy profiling
  • Image-based rendering regression testing
  • MSAA
  • GPU frustum culling
  • Hi-Z occlusion culling
  • Render to image

Dependencies

  • cglm
  • cgltf
  • glfw
  • stb_image
  • tinyexr
  • tracy

Assets used

Screenshots

A Beautiful Game Bistro Damaged Helmet Iridescent Dish Kenney City Time Of Day Clouds

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages