ORX

Last updated
ORX
Developer(s) orx-project.org
Stable release
1.14 [1] / June 12, 2023;17 months ago (2023-06-12)
Repository github.com/orx/orx
Written in C, C++
Platform Cross-platform
Type Game engine
License zlib license
Website orx-project.org

Orx is an open-source, portable, lightweight,[ clarification needed ] plug-in-based, data-driven and easy to use 2D-oriented game engine written in C.

Contents

It runs on Windows (MinGW and Visual Studio versions), Linux, MacOS, iOS and Android.

General information

Orx provides a complete game creation framework including a 3D scene graph, hardware accelerated 2D rendering, animation, input, sound, physics and much more.

Its main goals are to allow fast game prototyping and creation. [2]

Orx is published under Zlib license.


History:

ORX's root go back to July 2002, reusing some code wrote over the past previous years by Romain Killian. He wanted to try a few new approaches (like an animation graph that you can now see in many big engines but ORX is one of the first that proposed it in a game engine in late 2003). Then he picked up the pace again in 2007, still trying making things differently (that's when the config system was designed).

In 2009, ORX version 1.0rc0 was released. This version of ORX added support for Mac OS X (x86) as well as the support for Win32 and Linux (x86). Generic input system like keyboard, mouse and joystick input and fragment shader support were introduced.

ORX version 1.2 was released in 2010. It came with bugs fixes and optimizations. The major update was the support for iOS and Unicode.

ORX version 1.3rc0 was introduced in 2011. It came out with a bunch of new features like joint support, variable width fonts, OpenGL 2.0 and others. Previous issues and bugs were also resolved. This was the first time when android support was also added to the engine.

ORX version 1.4cr0 was introduced in 2012. Some new features were added to ORX in this update like Interactive console, commands, textured mesh rendering, geometry rendering and previously known issues were fixed.

ORX version 1.11 has been released.in May 2020 with Support changes for MinGW-w64, including new support for 64bit, OSX/Retina and Windows high DPI display, Control over polled physical peripherals, Text animations and more.

ORX version 1.12 has been released in May 2021, with some Major speed & scalability improvements: from 65k to 16M concurrent objects in memory, a complete rewrite of the orxBANK module, Support for joysticks on Android-Native, a simpler Android build pipeline, Nuklear support for new projects and more.

ORX version 1.13 has been released in March 2022, with 70+ updates or new features, including a new SoundSystem plugin based on MiniAudio (OGG, WAV & MP3 files), Support for: config-driven filters for both sounds and buses, multiple sound listeners, sound panning, sound spatialization, Support for the QOI image format, Native arm64 support for MacOS 11/XCode 12.x, etc...

ORX version 1.14 has been released in June 2023, with 50+ updates or new features, including a revamp of Android integration using AGDK (GameActivity, Swappy, Paddleboat). The list change of this version is available here.

ORX version 1.15 has been released in August 2024, the list change of this version is available here.

The complete list of changes logged since version 1.0 can be found here.

Features

Despite being written in C, Orx has an object oriented design with a plugin architecture. This allows its kernel to be cross-platform and delegates hardware- and OS-dependent tasks to plugins. Most of these plugins are based on other open-source libraries, such as GLFW, SDL and Box2D (LiquidFun fork).

Build files are provided for GCC makefiles, Visual Studio (2017, 2019 & 2022), Codelite, Code::Blocks and Xcode.

Orx contains most of the common game engine features
It also provides more unusual features [3]
The current list of WIP features that will be added in the future

See also

Related Research Articles

Autodesk 3ds Max, formerly 3D Studio and 3D Studio Max, is a professional 3D computer graphics program for making 3D animations, models, games and images. It is developed and produced by Autodesk Media and Entertainment. It has modeling capabilities and a flexible plugin architecture and must be used on the Microsoft Windows platform. It is frequently used by video game developers, many TV commercial studios, and architectural visualization studios. It is also used for movie effects and movie pre-visualization. 3ds Max features shaders, dynamic simulation, particle systems, radiosity, normal map creation and rendering, global illumination, a customizable user interface, and its own scripting language.

Irrlicht is an open-source game engine written in C++. It is cross-platform, officially running on Windows, macOS, Linux and Windows CE and due to its open nature ports to other systems are available, including FreeBSD, Xbox, PlayStation Portable, Symbian, iPhone, AmigaOS 4, Sailfish OS via a Qt/QML wrapper, and Google Native Client.

GameMaker is a series of cross-platform game engines created by Mark Overmars in 1999 and developed by YoYo Games since 2007. The latest iteration of GameMaker was released in 2022.

<span class="mw-page-title-main">OpenSceneGraph</span>

OpenSceneGraph is an open-source 3D graphics application programming interface, used by application developers in fields such as visual simulation, computer games, virtual reality, scientific visualization and modeling.

Windows Presentation Foundation (WPF) is a free and open-source user interface framework for Windows-based desktop applications. WPF applications are based in .NET, and are primarily developed using C# and XAML.

<i>Tux Paint</i> Graphics software

Tux Paint is a free and open source raster graphics editor geared towards young children. The project was started in 2002 by Bill Kendrick who continues to maintain and improve it, with help from numerous volunteers. Tux Paint is seen by many as a free software alternative to Kid Pix, a similar proprietary educational software product.

<span class="mw-page-title-main">Quartz Composer</span> Node-based visual programming language

Quartz Composer is a node graph system provided as part of the Xcode development environment in macOS for processing and rendering graphical data. It is capable of making sophisticated animations for keynote or presentations and creating animated screensavers.

Wintermute Engine (WME) is a set of software tools and a runtime interpreter primarily designed for creating and running graphical adventure games.

<span class="mw-page-title-main">C4 Engine</span> Proprietary computer game engine developed by Terathon Software

The C4 Engine is a proprietary computer game engine developed by Terathon Software that is used to create 3D games and other types of interactive virtual simulations for PlayStation 5, PlayStation 4, PlayStation 3, Windows, Mac OS X, Linux, and iOS.

iClone is a real-time 3D animation and rendering software program. Real-time playback is enabled by using a 3D videogame engine for instant on-screen rendering.

<span class="mw-page-title-main">Hollywood (programming language)</span> Programming language

Hollywood is a commercially distributed programming language developed by Andreas Falkenhahn which mainly focuses on the creation of multimedia-oriented applications. Hollywood is available for AmigaOS, MorphOS, WarpOS, AROS, Windows, macOS, Linux, Android, and iOS. Hollywood has an inbuilt cross compiler that can automatically save executables for all platforms supported by the software. The generated executables are completely stand-alone and do not have any external dependencies, so they can also be started from a USB flash drive. An optional add-on also allows users to compile projects into APK files.

<span class="mw-page-title-main">Simple and Fast Multimedia Library</span> Graphics and Multimedia Library written in C++

Simple and Fast Multimedia Library (SFML) is a cross-platform software development library designed to provide a simple application programming interface (API) to various multimedia components in computers. It is written in C++ with bindings available for Ada, C, Crystal, D, Euphoria, Go, Java, Julia, .NET, Nim, OCaml, Python, Ruby, and Rust. Experimental mobile ports were made available for Android and iOS with the release of SFML 2.2.

<span class="mw-page-title-main">Godot (game engine)</span> Cross-platform, open-source game engine

Godot is a cross-platform, free and open-source game engine released under the permissive MIT license. It was initially developed in Buenos Aires by Argentine software developers Juan Linietsky and Ariel Manzur for several companies in Latin America prior to its public release in 2014. The development environment runs on many platforms, and can export to several more. It is designed to create both 2D and 3D games targeting PC, mobile, and web platforms and can also be used to develop non-game software, including editors.

Felgo is a cross-platform development tool, based on the Qt framework. It can be used to create mobile apps or games. Felgo apps and games are supported on iOS, Android, Windows Phone, embedded devices and desktop devices. Felgo developers use QML, JavaScript and C++ to create mobile apps and games.

<span class="mw-page-title-main">Phaser (game framework)</span> Cross-platform JavaScript video game framework

Phaser is a 2D game framework used for making HTML5 games for desktop and mobile. It is free software developed by Photon Storm.

LÖVE is a free, open-source, cross-platform framework released under the zlib license for developing video games. The framework is written in C++ and uses Lua as its scripting language and is still maintained by its original developers. The framework is cross-platform supporting the platforms Microsoft Windows, macOS, Linux, Android, and iOS.

raylib Game programming library

Raylib is a cross-platform open-source software development library. The library was made to create graphical applications and games.

References

  1. "Download page - GitHub". orx-project.org. Retrieved 12 June 2023.
  2. "How to Learn Orx". Nov 27, 2013.
  3. "ORX News".
  4. "A custom ZIP archive support".

[1] [2] [3] [4]

  1. "Getting started with the Orx open gaming engine". May 9, 2017.
  2. "How to write a 2D UFO game using ORX". February 27, 2018.
  3. "Orx–Data Driven 2D Game Engine". May 14, 2018.
  4. "Orx Data-Driven C/C++ Game Framework". April 30, 2022.