-
Notifications
You must be signed in to change notification settings - Fork 1
API Reference
A complete, auto-generated reference to every symbol, file, and folder in the SparkEngine codebase — no third-party tool required. Everything on this page is produced by pure-shell scripts under docs/, consumes only source files in the repository, and renders natively on GitHub.
How to regenerate:
docs/update-all-docs.sh(or individually, e.g.docs/generate-symbol-index.sh generate).
| Page | Contents |
|---|---|
| Symbol Index | Every class, struct, enum, function, method, macro, and type alias — alphabetical, with file-and-line source links. |
| Function Index | Every free function and out-of-line method definition (headers + .cpp). |
| Class & Struct Index | Every declared class and struct in the codebase. |
| Enum Index | Every enum with its source location. |
| Macro & Alias Index | Every #define (excluding header guards) plus typedef/using aliases. |
| File Tree | Hierarchical listing of every source file with LOC and @brief. Includes a Mermaid module-dependency graph. |
| Class Hierarchy | Mermaid classDiagram per top-level module showing public inheritance. |
| Page | Contents |
|---|---|
| Entity Component System | ECS components and systems overview. |
| Architecture Overview | High-level engine architecture. |
| Codebase Statistics | LOC, file counts, subsystem metrics. |
| Engine Architecture Flowchart | ASCII/Mermaid flowcharts of subsystems. |
Running docs/generate-api-docs.sh generate also produces ~750 per-header Markdown pages under docs/api/ (one per .h/.hpp). These are not committed — regenerate locally whenever you want the deeper view. Each page lists classes, enums, free functions, macros, and type aliases in that header, each with a clickable source-line anchor.
The generator scans every .h, .hpp, and .cpp under:
SparkEngine/Source/SparkEditor/Source/SparkConsole/src/SparkShaderCompiler/src/SparkSDK/Tests/-
GameModules/*/Source/(all game modules auto-discovered)
ThirdParty/ and build directories are excluded.
For every source file:
-
Classes & structs — name, base class (when
: public X), surrounding@briefcomment, source line. - Enums — name, source line.
-
Functions & methods — free functions, static functions, and out-of-line method definitions (
Class::Method) in.cpp. Each gets a signature and a clickablefile:lineanchor. -
Macros — every
#define, excluding header guards. -
Type aliases — every
using X = …andtypedef … X;.
All symbols are also emitted to docs/api/.symbols.tsv for programmatic use.
The SparkEngine documentation pipeline is intentionally dependency-free: the generator scripts use only find, grep, awk, sed, sort, and wc — tools present on every developer machine and every CI runner. The legacy docs/Doxyfile.txt and docs/generate-docs.sh remain available for anyone who wants full HTML with GraphViz, but nothing on this page needs them.
Published from 936a8401bf15. Edit the canonical source in wiki/.
- Documentation
- Docs route
- Wiki index
- Guides
- Tutorials
- Samples
- Examples
- API Reference
- API route
- Reference
- Build Guide
- Dependencies
- FAQ
- Changelog
- Roadmap
- Contributing
- Code of Conduct
- Home
- FAQ
- Getting Started
- Quick-Start Tutorial
- Making Your First Game
- Making Your First Multiplayer Game
- Artist Workflow Guide
- Editor Walkthrough
- Migration Guide
- How SparkEngine Works
- Architecture Overview
- Engine Architecture Flowchart
- Creating a Game Module
- Game Modules (catalog)
- Entity Component System
- Rendering and Graphics
- Physics
- Cloth Simulation
- Audio
- Input System
- Camera System
- Scripting with AngelScript
- Visual Scripting
- AI and Navigation
- Animation
- 2D Systems
- Networking
- Dedicated Server
- Multiplayer Quick Start
- Area Server Architecture
- Scene Management
- Large World Support
- Collaborative Editing
- Coroutine System
- Event System
- Event Response System
- Job System
- UI System
- UI Layout Extensions
- Localization
- Dialogue System
- Destruction System
- Replay System
- Achievement System
- Loading System
- Mod System
- Content Delivery
- Tween System
- Memory Integrity
- Gameplay Systems
- Terrain and Procedural Generation
- Save System
- Persistence System
- Day Night Cycle and Weather
- Cinematic Sequencer
- Runtime Prefabs
- SparkEditor
- Editor Tutorials
- SparkConsole
- SparkDaemon
- Shader Pipeline
- Asset Pipeline
- Asset Validation
- Asset Migration
- Game Packaging
- Online Services
- DataTable System
- Loot and Crafting System
- CSG System
- Font System
- Timer Manager
- Movie Render Pipeline
- HLOD and World Partition
- Remote Debug System
- Selection Manager
- Asset Dependency Graph
- Editor Automation
- File Watcher
- Project Templates
- System Requirements
- VR Support
- Mobile Platform
- Accessibility
- Platform Input
- Cross-Compilation: Wine Testing
- RHI Abstraction Layer
- D3D11 Backend
- D3D12 Backend
- Vulkan Backend
- OpenGL Backend
- Metal Backend
- DXR Raytracing
- Hybrid Ray Tracing
- Upscaling (DLSS/FSR)
- Render Graph
- Shader Graph
- GPU Particles
- GPU-Driven Rendering
- Volumetric Fog
- Volumetric Clouds
- Global Illumination
- Virtual Texturing
- Water Rendering
- Clustered Lighting
- Material System
- Post-Processing
- Shadow System
- Particle System
- Decal System
- Sky and Atmosphere
- Foliage System
- Mesh Shaders
- Neural Rendering
- Configuration Reference
- Performance Tips
- Benchmark Framework
- Threading Model
- Memory Safety
- Memory Management Patterns
- Build System and CMake Modules
- Profiler and Debugging
- Performance Profiling Guide
- Telemetry System
- Golden Image Testing
- Utilities
- Testing
- Codebase Statistics
- Codebase Health
- Error Handling Patterns
- Hot Reload Overview
- Troubleshooting
- Contributing
- Workflow Patterns
- Build Optimizations
- CI Reproducible Builds
- GitHub API and PR Checks
- Git Rebase Conflicts
- Clang-Format
- Code Quality Violations
- AI Bloat Pattern
- MinGW + Wine Cross-Compilation
- Live Editor Testing
- Engine & Renderer Landscape
- DuetOS Portability Catalog
- Five-Engine Analysis
- Eleven-Engine Analysis
- ThorVG / Unity Graphics Analysis
- Advanced Techniques Catalog
- Third-Party Library Evaluation
- Engine Viability Evaluation
- Engine Feature Recommendations
- Project Recommendations
- Mac Compatibility Analysis
- Codebase Observations
- Codebase Bloat Audit
- Test Suite Audit
- Documentation Coverage Audit
- ThirdParty Dependencies Audit
- Load Test Baseline
- Gameplay Systems Status
- SparkGame Module Status
- Stub and Abandoned Features
- Memory Integrity System
- Memory Safety Evaluation
- Hardware Acceleration Systems
- Jolt Physics Integration
- GPU/CPU Separation Plan
- Daemon Services Architecture
- Reflection & Polymorphism Refactoring Plan
- SparkBuild In-Tree
- Wine No-JobSystem Breakthrough
- Wine Role and Fallback Tiers