All Projects → MrFrenik → Gunslinger

MrFrenik / Gunslinger

Licence: bsd-3-clause
C99, header-only framework for games and multimedia applications

Programming Languages

c
50402 projects - #5 most used programming language
c99
33 projects

Projects that are alternatives of or similar to Gunslinger

Enduro2d
Yet another 2d game engine of dreams (work in progress)
Stars: ✭ 82 (-66.67%)
Mutual labels:  game-framework, lightweight
Quick Picture Viewer
🖼️ Lightweight, versatile desktop image viewer for Windows. The best replacement for the default Windows photo viewer.
Stars: ✭ 237 (-3.66%)
Mutual labels:  lightweight
Exchangis
Exchangis is a lightweight,highly extensible data exchange platform that supports data transmission between structured and unstructured heterogeneous data sources
Stars: ✭ 212 (-13.82%)
Mutual labels:  lightweight
Snackbar
A tiny browser library for showing a brief message at the bottom of the screen (1kB gzipped).
Stars: ✭ 224 (-8.94%)
Mutual labels:  lightweight
Lfd A Light And Fast Detector
LFD is a big update upon LFFD. Generally, LFD is a multi-class object detector characterized by lightweight, low inference latency and superior precision. It is for real-world appilcations.
Stars: ✭ 210 (-14.63%)
Mutual labels:  lightweight
Imdn
Lightweight Image Super-Resolution with Information Multi-distillation Network (ACM MM 2019, Winner Award of ICCVW AIM 2019 Constrained SR Track1&Track2)
Stars: ✭ 229 (-6.91%)
Mutual labels:  lightweight
Jsontreeviewer
json formatter/viewer/pretty-printer (with jsonTree javascript-library)
Stars: ✭ 211 (-14.23%)
Mutual labels:  lightweight
Strife
a simple 2d game framework
Stars: ✭ 246 (+0%)
Mutual labels:  game-framework
Libuwsc
A Lightweight and fully asynchronous WebSocket client library based on libev
Stars: ✭ 237 (-3.66%)
Mutual labels:  lightweight
Flexml
🚀基于Litho的Android高性能动态业务容器。
Stars: ✭ 225 (-8.54%)
Mutual labels:  lightweight
Textosaurus
Cross-platform text editor based on Qt and Scintilla.
Stars: ✭ 224 (-8.94%)
Mutual labels:  lightweight
Dietpi
Lightweight justice for your single-board computer!
Stars: ✭ 2,871 (+1067.07%)
Mutual labels:  lightweight
V Emoji Picker
🌟 A Lightweight and customizable package of Emoji Picker in Vue using emojis natives (unicode).
Stars: ✭ 231 (-6.1%)
Mutual labels:  lightweight
Htmr
Simple and lightweight (< 2kB) HTML string to React element conversion library
Stars: ✭ 214 (-13.01%)
Mutual labels:  lightweight
Task Easy
A simple, customizable, and lightweight priority queue for promises.
Stars: ✭ 244 (-0.81%)
Mutual labels:  lightweight
Blah
A small 2d c++ game framework
Stars: ✭ 212 (-13.82%)
Mutual labels:  game-framework
Foster
a simple cross-platform game framework made in C# dotnet core
Stars: ✭ 221 (-10.16%)
Mutual labels:  game-framework
Mu
A tweet-sized PHP micro-router
Stars: ✭ 229 (-6.91%)
Mutual labels:  lightweight
Vpp
Modern C++ vulkan utility library.
Stars: ✭ 245 (-0.41%)
Mutual labels:  lightweight
Libaco
A blazing fast and lightweight C asymmetric coroutine library 💎 ⛅🚀⛅🌞
Stars: ✭ 2,918 (+1086.18%)
Mutual labels:  lightweight

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, and HTML5 currently with plans to add UWP, Android, 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)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].