Table of Contents

Tutorials Listed By Subject

This section contains all tutorials indexed by subject for orx, an opensource, portable, lightweight, data-driven & 2D-oriented game engine.

Contributions are very welcome.

Audio

Sound & Music Sound Recording Sound Buses Audio Filters Audio filters, miniaudio & audio extensions Video Sound Spatialization

Android

Working with Android (new users start here!) Android Studio, NDK, and Orx library Compiling Orx Library & Demo Project Android Demo as a template project Using SWIG to talk to Java on Android Android Packaging Scripts for continued deployments

Animation

New Animation System Walkthrough Basic Animation Animation and Clearing Targets Animation Inheritance with Prefixes Text Animation Realistic Walk Movement Creating Particle Explosions Addin for The Gimp to Extract Guides for Configuration Mouse over effect for buttons Creating an Insect Object (Animation) Animation Synchronization Zero Length Frames See more Animation Examples

C++

Localization Stand Alone Application Using orxObjects in Classes with an EventHandler An Introduction to orx/Scroll Compiling hidapi in a game

Cameras

Viewport and Camera Cameras and Frustums orxScroll, Cameras and Viewports See more Camera Examples

Clocks

Clock

Code::Blocks

Getting Code::Blocks for Windows Building the Orx Library with Code::Blocks on Mac OS X Building the Orx Library with Code::Blocks on Linux

Codelite

Getting Codelite for Windows Building the Orx Library with Codelite on Mac OS X Building the Orx library on Linux with Codelite Setting up Codelite on Linux Stand Alone Application Codelite & Environment Variables Video

Color / Colour

orxCOLOR and how to colour an object Converting a percentage to a color Web Color Literals A natural-looking glowing ball effect See more Color Examples

Compositing

Compositing (2D lighting with offscreen rendering) Viewport Render to Texture

Console

Guide to the Orx Console and Commands The Bounce Demo Custom Console Colors

Command Module

Command Module Syntax Command and Timeline Notes

Config

Encrypting Config Files Saving information to a config file Changing the Default Config File Changing the Default Config File for orx/Scroll Retrieving and Updating Config Values Stepped Random Values Local-only Config Overriding Video See more Config Examples

Controls

Interaction, Control and Physics Realistic Walk Movement Creating Particle Explosions

Display

Multiple Monitors Custom Mouse Cursors Application Icons Borderless Window Mode See more Display Examples

Downloads

Getting Started with Orx

Engine

Embedding parts of Orx in other engines Orx Extensions Extending Orx with Plugins and Bundling

Events

Realistic Walk Movement Using orxObjects in Classes with an EventHandler Creating Particle Explosions

Fonts

Fun with Text and Shaders orxFontGen Font tool for unicode, including Chinese See more Font Examples

FX

FX Sparks with Spawners and FX Creating an Insect Object (Speed FX) See more FX Examples

Game Writing Guides

Learning Orx with Asteroids Beginner's Guide - Platform Game Beginner's Guide - 2D UFO Game Beginner's Guide - UFO Game Video Version

iPad / iOS / iPhone

Using compressed textures on the iPad Porting a game to the iPad

Input

8 Way Joystick / Gamepad Control Analog Joystick / Gamepad Control Analog Stick Threshold Overriding a Controller Mapping Remapping Controller Inputs Testing Key, Joystick and Mouse Inputs Interaction, Control and Physics Realistic Walk Movement Creating Particle Explosions Mouse over effect for buttons Notes on input Keyboard Inputs Mouse Grab Compiling hidapi in a game Input Triggers See more Input Examples

Joints

Creating an Insect Object (Revolute Joint) Weld Joint on parent/child Objects with Bodies Z-order of Objects with Joints

Level Mapping

Semi-dynamic Objects and Level Mapping Using the Tiled to ORX Converter Hexagon Grid Tutorial Creating Maps in ScrollEd Pathfinding

Linux

Setting up a Development Environment on Linux Linux Setup (brief overview) Building the Orx library on Linux with Codelite Codelite in Linux Building the Orx Library with Code::Blocks on Linux

Localisation

Localization Localization and Multiple Languages

Mac OS X

Setting up a Development Environment for Mac OS X Cloning and building the Orx library on Mac OS X Building the Orx Library with Xcode on Mac OS X Building the Orx Library with Codelite on Mac OS X Building the Orx Library with Code::Blocks on Mac OS X Setting up a game project on Mac OS X

Music

Sound & Music Sound Recording Sound Buses

Objects

Basic Object Object Transformation Semi-dynamic Objects and Level Mapping Objects in Classes with EventHandlers The Binding of Objects Object Traversing Notes on Rotation A natural-looking glowing ball effect Creating an Insect Object Creating an Object made of many Parts Passing items from one Object to another Object Lifetime Relative Object Positioning and Scaling Teleporting on Screen Edges Literals for Objects Command Hooks for Object Events Aged Objects See more Object Examples

Orx Code (General)

orxSTRINGs, strings and chars orxCOLOR and how to colour an object Lists, HashTables and Trees

Orx (Setting up)

Cloning Orx from Github Using Premake to create a Build Project to compile ORX from scratch Compiling Orx with mingw32/gmake Download a pre-built Orx for your environment The Bounce Demo Getting & setting up Orx Video

Orx/Scroll (C++ Abstraction layer for Orx)

An Introduction to Orx/Scroll The Binding of Objects Creating an orx/Scroll project using 'init' Creating Maps in ScrollEd Colliding ScrollObjects with Orx Objects Access Scroll class from ScrollObject ScrollObject to ScrollObject Communication Changing the Default Config File for orx/Scroll Moving a ScrollObject along a curve orxScroll, Cameras and Viewports ProgressBars in orxScroll Pathfinding See more orx/Scroll Examples

Physics

Basic Physics and Collisions Physics Raycasting Interaction, Control and Physics Using the Inkscape SVG to ORX Converter Creating an Object made of many Parts Creating an Insect Object (Animation) Weld Joint on parent/child Objects with Bodies Applying a force at a position point See more Physics Examples

Premake (deprecated)

Using Premake to create a Build Project to compile ORX from scratch

Projects

Creating your own project using 'init' The 'init' command & available extensions Video Creating an orx/Scroll project using 'init' How to use Premake to create a build configuration for your own project in any IDE/OS XCode 3 Tutorial Working with Android Native Tutorial (deprecated) Using the Android Demo as a template for your own projects Using orxhub (deprecated)

Publishing

Preparing for a release under Windows Preparing for a release under MacOSX Console-less Applications Android Packaging Scripts for continued deployments Common Release Checklist

Scrolling

Scrolling

Resources

Zip Archive Resources Resources over HTTP Resource Reloading See more Resource Examples

Scenes

Data-Driven Scene Transitions

Shaders

Getting started with Shaders in Orx Shaders in Screen Space Spawner & Shader Shader & Lighting Shader coordinates tutorial Hexagon Grid Tutorial Hexagon Grid Tutorial (Axial/Cubial Coordinates) A natural-looking glowing ball effect Fun with Text and Shaders Maps in a Shader See more Shader Examples

Sound

Sound & Music Sound Recording Sound Buses Audio Filters Audio filters, miniaudio & audio extensions Video Sound Spatialization

Spawners

Spawner & Shader Creating Particle Explosions Spawning Bullets Sparks with Spawners and FX Futurama Appearance Effect Spawners using Relative Position and Scale See more Spawner Examples

Sprites

Using the darkFunction to ORX Converter Addin for The Gimp to Extract Guides for Configuration

System

The Clipboard Drag and Drop Commandline Parameters

Text

Text Boundaries Fun with Text and Shaders orxFontGen Text Background See more Text Examples

Textures

Using compressed textures on the iPad

Timelines / Tracks

Timelines / Tracks Command and Timeline Notes See more Track and Command Examples

Tools

The Orx Profiler orxFontGen Using the Inkscape SVG to ORX Converter Using the TMX to ORX Converter Using the darkFunction to ORX Converter Using SWIG to talk to Java on Android Logging all Structures to a Tree

UI / User Interface

Using ImGui with Orx Using Nuklear with Orx Nuklear Font Management Notes on Nuklear with Orx File Dialogs and Messageboxes Mouser over effect for buttons

Viewports

Viewport & Camera Heads Up Display (HUD) using Viewport + Groups Teleporting on Screen Edges Viewport Render to Texture

Visual Studio

Building the Orx library with Visual Studio Stand Alone Application

Windows

Compiling Orx with mingw32/gmake Building the Orx library with Visual Studio

XCode

Xcode4 Scroll, Console-less, Resources Building the Orx Library with Xcode on Mac OS X