nngn
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages Concepts
src Directory Reference

Main source directory (C++20, Lua).

More...

Directory dependency graph for src:
src

Directories

 audio
 
 collision
 Collision detection and resolution for various collider object types.
 
 compute
 Compute back ends.
 
 font
 Utilities for fonts, text, and text boxes.
 
 glsl
 
 graphics
 Graphics back ends.
 
 input
 Terminal/keyboard/mouse input.
 
 lson
 
 lua
 Lua library and scripts.
 
 math
 Abstract mathematical utilities.
 
 os
 Platform configuration, operating system utilities.
 
 render
 High-level rendering module.
 
 timing
 Clocks, timers, profiling.
 
 utils
 

Files

 const.h
 
 debug.h
 
 entity.cpp
 
 entity.h
 
 lua_entity.cpp
 
 main.cpp
 

Detailed Description

Main source directory (C++20, Lua).

Only a minimal amount of core source lives directly under this directory. Most code is placed under modules in each subdirectory (see the documentation of each of them for details). Dependencies between modules are kept to a minimum and with few exceptional cases the dependency graph is a DAG.

Configuration

All configuration is done using command-line arguments, and all command-line argument processing is done using Lua. Each argument is processed similarly to how the standalone Lua interpreter processes the LUA_INIT* variables: