erjohnson / astera

C99 Cross Platform 2D Game Library

Home Page:https://tek256.com/astera

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


astera
a cross platform game library
Made by Devon with love.

Setup | Examples | Discord | Support

About

Astera is a game library focused on performance, portability, and maintainability. Astera aims to rely on as few dependencies as possible.

Latest Release: 0.01

Target Platforms

Here are the target platforms for this library:

- Windows
- Linux
- Mac OSX (versions supporting OpenGL 3.3+)
- BSD

NOTE: I'm always open to adding more target platforms!

Libraries Used

GLFW, OpenAL-Soft, GLAD, STB Image & Vorbis, nanovg, and ZIP.

Building

Astera and it's dependencies are built using CMake. You can run your own CMake command or try using one of the automated build scripts (they're located in the tools/ folder).

Usage build_unix.sh && build_win.bat [-hrcxqq]
-h  Show this info
-r  Build release (optimizations, -O2)
-c  Build clean (remove previous build generated by this script)
-x  Don't build examples
-q  Quiet output
-qq Silence all output
Windows Only:
-m  Force use MinGW (gcc/g++)
-l  Force use LLVM (clang/clang++)

Example script usage (generate a release candidate):

./build_unix.sh -r

Example CMake usage:

cmake -Bbuilld -S. -DASTERA_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=Release # Generate the build files
cmake --build build # Build the build files

For more information see the relevant wiki page or the docs/Build Guide.rst file.

Changelog

June 18, 2020 - [0.01 RELEASE]
- New context based engine usage
  - System prefix + `_ctx` for audio, render, input, and ui systems
- Lots of bug fixes 
- Lots of code hardening 
- Pedantic fixes
- Basic Game, Audio, Input, and UI Examples created

May 8, 2020
- Static building
- Working on examples
- Refactored UI to context based usage (non-global) 

For older changes see docs/changelog-archive.txt

Special Thanks

Isabella Muerte for being a patient friend and helping create the build system.
Sharlock93 for helping diagnose issues.
Dan Bechard for helping test on Windows & discuss ideas with.

About

C99 Cross Platform 2D Game Library

https://tek256.com/astera

License:MIT License


Languages

Language:C 94.5%Language:Objective-C 2.5%Language:CMake 2.5%Language:C++ 0.5%Language:Shell 0.1%Language:Batchfile 0.0%