Home

Awesome

<div align="center"> <h1>Orka</h1> <a href="https://github.com/onox/orka/actions/workflows/build.yaml"><img src="https://github.com/onox/orka/actions/workflows/build.yaml/badge.svg" alt="Build status" /></a> <a href="https://github.com/onox/orka/actions/workflows/test.yml"><img src="https://github.com/onox/orka/actions/workflows/test.yml/badge.svg" alt="Test status" /></a> <a href="https://app.netlify.com/sites/orka-engine/deploys"><img src="https://img.shields.io/netlify/4fa61148-e68f-41e6-b7fa-1785eaf4bcb5?label=docs" alt="Docs status" /></a> <a href="https://github.com/onox/orka/blob/master/LICENSE"><img src="https://img.shields.io/github/license/onox/orka.svg?color=blue" alt="License" /></a> <a href="https://github.com/onox/orka/releases/latest"><img src="https://img.shields.io/github/release/onox/orka.svg" alt="GitHub release" /></a> <a href="https://gitter.im/ada-lang/Lobby"><img src="https://badges.gitter.im/gitterHQ/gitter.svg" alt="Gitter chat" /></a> </div> <br /> <br />

Orka is an OpenGL 4.6 rendering kernel written in Ada 2022. It provides the building blocks like a frame graph to render 3D graphics or to do general-purpose computing on the GPU. It also takes care of displaying a window and manage input devices like gamepads.

Additionally, Orka provides several bindings:

Documentation

The documentation can be viewed on the website.

Learning Ada

Ada is an imperative and object-oriented programming language focused on correctness, readability, and good software engineering practices for large scale systems and safety-critical and embedded real-time systems.

It has a strong static type system which allows you to create your own types that reflect the problem domain, with optional low-level control of your data. Packages provide modularity and information hiding. High-level concurrency primitives like protected objects allow safe communication between tasks and design-by-contract is supported through type invariants, predicates, and pre- and postconditions.

If you would like to learn Ada, then here are a few resources to get started:

Contributing

If you would like to fix a bug, add a feature, improve the documentation or have suggestions or advice about the architecture, APIs, or performance, then do not hesitate to open a new issue.

See the contributing guidelines for more information.

License

Most Orka crates are distributed under the terms of the Apache License 2.0 except for a few separate Alire crates: