Final Platform Layer

Table of Contents

Introduction to FPL

What is FPL?

Final Platform Layer is a Single-Header-File cross-platform C development library designed to abstract the underlying platform to a very simple and easy to use api - providing low level access to:

The main focus is game/media/simulation development, so the default settings will create a window, setup a OpenGL rendering context and initialize audio playback on any platform.

Final Platform Layer is released under the MIT License. This license allows you to use FPL freely in any software.

What is a single-header-file Library and why is FPL based on that?

A single header file library (as the name implies) is a development library designed to be one file only.
Such a file contains the header (API) and the body (Implementation) in one file but separated and controlled by compiler conditions.
Due to the nature of a single-header-file library all the source's comes with it - so it is most likely licensed by a public domain license.
In addition, such libraries mostly do not require any dependencies at all, to making it more friendly to the user.
This makes it easy to use the library however you want (with source, Static-linked, As a DLL, Private use only).

So, why then is FPL based on that?

Because normal libraries typically have a lot of disadvantages:

Which platforms are supported by FPL?

Right now FPL supports just a couple of x86/x64 platforms, but some are already in progress and more are planned:

For more details see the page: Platform Status

Which compilers are supported by FPL?

FPL should compile on any C99 complaint compiler, such as MSVC 2015+, GCC, Clang, etc.

What can FPL do?

Read below a detailed feature overview of FPL:

How do i get started with FPL?

For more details see the pages: Getting started / Categories / Examples.