ona/readme.md

43 lines
1.3 KiB
Markdown
Raw Normal View History

2023-02-18 04:34:40 +01:00
# Ona
## Table of Contents
1. [Overview](#overview)
1. [Goals](#goals)
1. [Technical Details](#technical-details)
1. [Requirements](#requirements)
1. [Building](#building)
## Overview
2023-02-20 14:41:33 +01:00
Ona is a straightforward game engine with the aim of staying reasonably lightweight through a modular architecture.
2023-02-18 04:34:40 +01:00
Ona is also the Catalan word for "wave".
## Goals
2023-04-19 01:34:06 +02:00
* Fully-featured two-dimensional raster and vector rendering capabilities.
2023-02-18 04:34:40 +01:00
2023-05-28 14:52:16 +02:00
* Support major computer gaming ecosystems; Namely Microsoft Windows, SteamOS, Unix-like systems, and the web.
2023-02-18 04:34:40 +01:00
2023-04-19 01:34:06 +02:00
* Minimize external dependencies.
2023-02-18 04:34:40 +01:00
2023-05-28 14:52:16 +02:00
* Provide utilities for handling rendering but otherwise leave the higher-level game logic and data structuring to the programmer.
2023-02-18 04:34:40 +01:00
2024-06-20 23:16:29 +02:00
* Enforce an architecture that makes logic non-interdependent logic trivially parallelizable.
2023-02-18 04:34:40 +01:00
## Technical Details
### Requirements
Ona currently depends the following third-party tools to build it:
2023-05-28 14:52:16 +02:00
* Platform support for SDL2 at version 2.0.20 or above.
2023-04-19 01:34:06 +02:00
* Zig compiler toolchain.
2023-02-18 04:34:40 +01:00
As the project evolves, dependencies on libraries external to the project codebase will be minimized or removed outright to meet the goals of the project as closely as possible.
### Building
2023-05-28 14:52:16 +02:00
Once all third-party tools and system-wide dependencies are satisfied, navigate to the root project folder and run `zig build` to build everything.