Stunning 2D Lighting with Glint
Go to file
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
.github Added Logos 2025-05-18 12:26:46 -05:00
.idea Adds initial project setup and README 2025-06-02 13:15:09 -05:00
src Modernizes root object removal 2025-06-02 13:00:36 -05:00
.gitignore Initial commit 2025-05-18 17:24:00 +00:00
CMakeLists.txt Modernizes root object removal 2025-06-02 13:00:36 -05:00
LICENSE Initial commit 2025-05-18 17:24:00 +00:00
main.cpp Improves asset loading and shader management 2025-05-22 09:25:29 -05:00
README.md Adds initial project setup and README 2025-06-02 13:15:09 -05:00

Onyx Engine

Onyx Banner

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.


# 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