Skip to content
 
 

Latest commit

 

History

475 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gunslinger GitHub Discord GitHub top language

Gunslinger is an stb-style, header-only c99 framework for multimedia applications.

Features

  • Header-only: drag-drop into any project without any additional compiling required.
  • All externals included in the framework itself.
  • Simple API inspired by sokol headers.
  • Provides core framework for quickly developing multimedia applications: Platform, Graphics, Audio layers.
  • Provides custom utilities for math and generic data structures.
  • Optional helper utilties are provided, such as OpenGL 2.0-style immediate-mode rendering, asset management system, and a data reflection utility.
  • Supports a growing list of platforms: Windows, OSX, Linux, Android, and HTML5 currently with plans to add UWP, RPI, IOS.
  • Graphics pipeline follows an explicit rendering framework, making it easier to write for modern backends, such as Vulkan/DX12/Metal.
  • All core layers can be fully swapped out with custom user implementations.
  • Large collection of examples for quickly getting started.
  • Official framework used for all Game Engineering YouTube videos.

Documentation

Basic Example

A simple c99 'Hello World' example using gunslinger:

#define GS_IMPL
#include <gs.h>

gs_app_desc_t gs_main(int32_t argc, char** argv)
{
   return (gs_app_desc_t){0};
}

Roadmap

  • Support Android/iOS/RPI/UWP backends
  • Support Vulkan/Metal/DX12 backends
  • Add support for more texture sampler types: 1D, 3D, Cube Maps, Arrays
  • Material Asset utils
  • Language Ports: (Python, JS, Rust, C#)
  • Add platform-independent threading utils to framework
  • MRT
  • Job System Util
  • Write more docs for github
  • Hot-reload util
  • Remove all externals from core framework
  • Add more texture formats (including compressed)

About

C99, header-only framework for games and multimedia applications

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages