This commit is contained in:
Jack Andersen 2016-03-24 16:20:18 -10:00
commit 374685b48a

View File

@ -7,9 +7,9 @@
### Boo ### Boo
**Boo** is a cross-platform windowing and event manager similar to **Boo** is a cross-platform windowing and event manager similar to
SDL and SFML, with additional 3D rendering functionality. SDL or SFML, with additional 3D rendering functionality.
The exclusive focus of Boo is 2D/3D rendering using polygon-rasterization The primary focus of Boo is 2D/3D rendering using polygon-rasterization
APIs like OpenGL or Direct3D. It exposes a unified command-queue API for APIs like OpenGL or Direct3D. It exposes a unified command-queue API for
calling the underlying graphics API. calling the underlying graphics API.
@ -17,15 +17,25 @@ The only per-platform responsibility of the client code is providing the
shaders' source. Drawing, resource-management and state-switching are shaders' source. Drawing, resource-management and state-switching are
performed using the unified API; these may be written once for all platforms. performed using the unified API; these may be written once for all platforms.
Boo also features a unified audio API for mixing voices and performing variable
sample-rate-conversion. All audio computation occurs on the CPU, 'pumped'
by the client each frame-iteration.
Client code is entered via the `appMain` method supplied in a callback object. Client code is entered via the `appMain` method supplied in a callback object.
This code executes on a dedicated thread with graphics command context available. This code executes on a dedicated thread with graphics command context available.
The API may be used to synchronize loops on the client thread with the display The API may be used to synchronize loops on the client thread with the display
refresh-rate. refresh-rate.
#### Supported Backends #### Supported Graphics Backends
* OpenGL 3.3+ * OpenGL 3.3+
* Direct3D 11/12 * Direct3D 11/12
* Metal 1.1 (OS X 10.11 only for now, iOS coming soon) * Metal 1.1 (OS X 10.11 only for now, iOS coming soon)
* **[Coming soon]** OpenGL ES 3.0 * **[Coming soon]** OpenGL ES 3.0
* **[Coming soon]** Vulkan * **[Coming soon]** Vulkan
#### Supported Audio Backends
* **[Windows]** WASAPI
* **[OS X]** Audio Queue Services
* **[Linux]** ALSA