Added Logo

This commit is contained in:
2025-06-02 23:35:03 -04:00
parent 29f21d84d8
commit d3eba6560d
12 changed files with 255 additions and 44 deletions

View File

@@ -1,12 +1,21 @@
# fennec
*a free and open source game engine*
<br><br>
<div style="width: 100%;">
<img src="./logo/raster.png" alt="drawing" width="128px" style="display: block; margin-left: auto; margin-right: auto;"/>
<figcaption>
<h1 style="text-align: center; top:-1em;">fennec</h1>
<p style="text-align: center; top:-4em;">a free and open source game engine</p>
</figcaption>
</div>
<br><br>
## Table of Contents
1. [Introduction](#introduction)
2. [Building from Source](#building-from-source)
1. [Building from Terminal](#building-from-terminal)
2. [Building on Windows](#building-on-windows)
3. [Running the Test Suite](#running-the-test-suite)
1. [Introduction](#introduction)
2. [Building from Source](#building-from-source)
1. [Building from Terminal](#building-from-terminal)
2. [Building on Windows](#building-on-windows)
3. [Running the Test Suite](#running-the-test-suite)
<br>
@@ -17,14 +26,23 @@
fennec is designed to be a general purpose, educational game engine.
Interfacing with the API in C++ follows the [GNU Coding Standards](https://www.gnu.org/prep/standards/html_node/index.html).
Some main areas where the engine strays from the GNU standard includes the following:
- [Section 4.7, Standards for Graphical Interfaces](https://www.gnu.org/prep/standards/html_node/Graphical-Interfaces.html).
fennec provides an implementation for X11, however it does not use the GTK toolkit.
<br>
Some main areas where the engine strays from the GNU standard includes the following:
The C++ stdlib is reimplemented in the fennec engine.
There are a few reasons for this:
- [Section 4.7, Standards for Graphical Interfaces](https://www.gnu.org/prep/standards/html_node/Graphical-Interfaces.html).
fennec provides an implementation for X11, however it does not use the GTK toolkit.
1. Standardize implementations across compilers
2. Set proper naming conventions, i.e. `std::vector`->`fennec::dynarray`
3. Optimize compilation times, binary size, and performance.
4. Inject debugging information when necessary.
5. Expose functionality in a readable manner for those interested in learning the
intricacies of the implementation.
<br>
@@ -107,4 +125,9 @@ cmake -G "Visual Studio 17 2022" -A x64
## Running the Test Suite
`test.sh` provides profiles for building the test suite and executes them.
`test.sh` provides profiles for building the test suite and executes them.
By default, it runs in debug mode and the first failed test will throw an assertion.
Any tests that involve running as an application will spawn a subprocess with a window,
and give a short description of the behaviour in the terminal. It will then have you confirm
whether the information displayed is correct.