MrFrenik / Gunslinger
Licence: bsd-3-clause
C99, header-only framework for games and multimedia applications
Stars: ✭ 246
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
Libuwsc
A Lightweight and fully asynchronous WebSocket client library based on libev
Stars: ✭ 237 (-3.66%)
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
Foster
a simple cross-platform game framework made in C# dotnet core
Stars: ✭ 221 (-10.16%)
Mutual labels: game-framework
Libaco
A blazing fast and lightweight C asymmetric coroutine library 💎 ⛅🚀⛅🌞
Stars: ✭ 2,918 (+1086.18%)
Mutual labels: lightweight
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
, andHTML5
currently with plans to addUWP
,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
- Getting Started
- Containers
- Examples
- Platform: WIP
- Audio: WIP
- Graphics: WIP
- Math: WIP
- Utils: WIP
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].