Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sschuberth/gale
A lightweight and self-consistent object oriented wrapper around OpenGL and its extensions.
https://github.com/sschuberth/gale
c-plus-plus demoscene library opengl three-d
Last synced: 1 day ago
JSON representation
A lightweight and self-consistent object oriented wrapper around OpenGL and its extensions.
- Host: GitHub
- URL: https://github.com/sschuberth/gale
- Owner: sschuberth
- License: mit
- Created: 2014-07-22T12:34:51.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2017-01-05T09:43:31.000Z (almost 8 years ago)
- Last Synced: 2024-11-04T21:24:25.774Z (about 2 months ago)
- Topics: c-plus-plus, demoscene, library, opengl, three-d
- Language: C++
- Homepage: https://sschuberth.github.io/gale/
- Size: 9.03 MB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![Build status](https://ci.appveyor.com/api/projects/status/jxoll6s40w0gind4/branch/master?svg=true)](https://ci.appveyor.com/project/sschuberth/gale/branch/master)
# Introduction
The "Graphics Abstraction Layer & Engine" (GALE) is an object oriented wrapper around OpenGL and its extensions. It is designed to be modern, lightweight and self-consistent (there is no CRT dependency). Typical targets are small graphical applications. You can probably think of it as something similar to (but far less extensive than) the great Wild Magic and G3D Innovation Engine libraries, with a bit of GLEW and GLM, however with a focus on very compact programs.
The current version of the C++ library is GALE 2, a complete rewrite of the abandoned GALE 1 which was previously hosted in SVN at SourceForge. GALE 2 has all new OpenGL wrappers and vertex-vertex mesh classes with subdivision support. It makes heavy use of (meta-)templates for more generic code, better performance, as well as smaller code size, and also comes with minimal CRT replacement routines.
Not all of the GALE 1 functionality is available in GALE 2 yet (e.g. images and billboards), but on the other hand GALE 2 already provides a lot of functionality not available in GALE 1, like Frame Buffer Object wrappers and interpolator classes.For building GALE 2, please refer to the prerequisites.
# Screenshots
## [demo_camera](https://ci.appveyor.com/api/projects/sschuberth/gale/artifacts/gale2/bin/Debug/demo_camera.exe):
![demo_camera](gale2/demo/camera/screenshot.jpg)
## [demo_color](https://ci.appveyor.com/api/projects/sschuberth/gale/artifacts/gale2/bin/Debug/demo_color.exe):
![demo_color](gale2/demo/color/screenshot.jpg)
## [demo_fbo](https://ci.appveyor.com/api/projects/sschuberth/gale/artifacts/gale2/bin/Debug/demo_fbo.exe):
![demo_fbo](gale2/demo/fbo/screenshot.jpg)
## [demo_heartbeat](https://ci.appveyor.com/api/projects/sschuberth/gale/artifacts/gale2/bin/Debug/demo_heartbeat.exe):
![demo_heartbeat](gale2/demo/heartbeat/screenshot.jpg)
## [demo_interpolator](https://ci.appveyor.com/api/projects/sschuberth/gale/artifacts/gale2/bin/Debug/demo_interpolator.exe):
![demo_interpolator](gale2/demo/interpolator/screenshot.jpg)
## [demo_mesh](https://ci.appveyor.com/api/projects/sschuberth/gale/artifacts/gale2/bin/Debug/demo_mesh.exe):
![demo_mesh](gale2/demo/mesh/screenshot.jpg)
## [demo_quaternion](https://ci.appveyor.com/api/projects/sschuberth/gale/artifacts/gale2/bin/Debug/demo_quaternion.exe):
![demo_quaternion](gale2/demo/quaternion/screenshot.jpg)
## [demo_shader](https://ci.appveyor.com/api/projects/sschuberth/gale/artifacts/gale2/bin/Debug/demo_shader.exe):
![demo_shader](gale2/demo/shader/screenshot.jpg)
## [demo_texture](https://ci.appveyor.com/api/projects/sschuberth/gale/artifacts/gale2/bin/Debug/demo_texture.exe):
![demo_texture](gale2/demo/texture/screenshot.jpg)
# TODO
* Implement demo_distfield.
* Leverage [Read The Docs](https://readthedocs.org/) (via [Breathe](https://breathe.readthedocs.org/)).