Onyx-Engine/README.md
OusmBlueNinja 19d1b9df55 Adds initial project setup and README
Adds a basic README file with project information, features, and a project layout example.

Adds a dictionary configuration file to specify project-specific words.
2025-06-02 13:15:09 -05:00

58 lines
1.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Onyx Engine
![Onyx Banner](.github/Banner.png)
**Onyx** is a modern, modular, and fast C++ game engine built for real-time 2D applications.
---
## 🧩 Features
- 🔧 **Onyx Engine** The core runtime, managing rendering, layers, and systems.
- 🖥️ **Obsidian Editor** A standalone GUI editor powered by ImGui and Onyx for scene editing, live profiling, and asset management.
- 💡 **Glint Lighting Engine** A flexible and performant 2D dynamic lighting system.
## Project Layout
'uaid':
Unique asset ID: example: 12345678901234567890123456789012
it's 32 chars long and is unique for every loaded asset.
```yaml
# MyGame.onx
project:
name: MyGame
version: 1.0.0
description: A top-down RPG made in the Onyx Engine
author: <Author name>
assets:
- type: texture
uaid: <len 32 int>
path: res://assets/textures/player.png
uid: player_texture
- type: audio
uaid: <len 32 int>
path: res://assets/sounds/theme.ogg
uid: theme_music
scenes:
- id: main_menu
uaid: <len 32 int>
file: res://scenes/main_menu.yaml
- id: level1
uaid: <len 32 int>
file: res://scenes/level1.yaml
settings:
resolution: [1920, 1080]
fullscreen: false
vsync: true
language: en-US
```