arrowbullet
 
 
 

Introduction

The ÔÇô Engine (pronounced “OH-so Engine”) is a brand-new game engine under development here at Arqadium Corporation, under the leadership of software engineer Alexander Nicholi. As an observer of the video game industry, we have noticed several shortcomings in existing solutions offered to the public for game development, and are taking a shot at building a product that is a cut above the competition through a nice, sensible user experience and a measurably superior performance edge from a modern, scratch-built approach to engineering.

About the name

The name ÔÇô came about from a happy accident that our team decided to roll with very early on in the engine’s development – thank Microsoft Windows and its complicated Unicode support for corrupting an En dash into the accented letters ‘ÔÇô’. We have tried to reproduce this error many times, and have failed ever since then! But as a brand, it’s enough – with the right amount of love and care, it will become an odd yet unmistakable household name in the game industry.

What makes ÔÇô unique

We choose to do things a bit differently than other engine development teams with ÔÇô, and here we’ll go over what some of the most important differences are.

Vulkan First

Since 2015, the Vulkan API has had plenty of room to stabilise and gain platform support. Indeed it has, and with that in mind we have decided to use Vulkan 1.0 with ÔÇô, not only for 2D and 3D rendering, but also for other tasks like physics emulation that stands to benefit greatly from running in parallel. Vulkan provides for this better than anything else, so it was an obvious choice for an engine like ÔÇô. For mobile platforms where Vulkan may not be available, ÔÇô will fall back to an OpenGL ES 2 renderer. ÔÇô will check for that though, so users with capable phones will get the best their device is capable of.

Supercharged 2D with OAMs

In the heyday of 2D games, with consoles like the Super Nintendo and the Game Boy Advance, there were built-in tools for graphics manipulation often called ‘Object Attribute Memory’, or OAM for short. With ÔÇô, we have expanded that concept to provide powerful, extensible tools for 2D graphics manipulation. OAMs enable you to do millisecond-precise animations frame-by-frame, piece together big superblocks out of smaller blocks and sprites to create your overworld, and control all of them along with a built-in, skinnable UI by scripting. It’s truly the perfect toolset for 2D game design.

A JavaScript subset for scripting

One of ÔÇô’s strengths is its accomodations for designers, and its scripting paradigm does well to fulfill that. While some might just call them ‘programmers’, there is a significant difference between a designer and an engineer, and that difference is well-accounted for in ÔÇô. Scripting is straightforward, functional, and performant as it takes after JavaScript to a great extent. Like web browsers do, ÔÇô uses an asynchronous event loop to execute the code you tell it to without slashing frame times.

A state-of-the-art 3D renderer, physics engine and more

If you think OAMs are powerful, you’ll love the tools we’re making likewise for 3D. ÔÇô makes a premium offering for rendering 3D game graphics with Yellows, and provides a GPU-parallelised physics engine called Sapphire. There are some more ‘optional’ modules as well, such as Lapis for network state management, and other products in the works that we’re sure everyone will love.

Trilingual Game Engine

Beneath scripting, the core of ÔÇô is made from a healthy blend of three general-purpose programming languages, each providing different levels of complexity and ease of use to developers. We’ve put them together in a way that allows us to take advantage of each language’s strengths while minimising their weaknesses at the same time – take a look:

Implementation

  • Common ABI for all
  • Promotes DOD/KISS via ABI
  • Unbeatably fast
  • More feature-rich than C
  • Also incredibly fast
  • Very well-known and mature
  • Massive productivity gains
  • Still fast enough for video games
  • Can talk to C/C++ for performance-critical tasks

Interface

  • All interfaces can talk through the C ABI
  • Are trivial to write compared to implementations
  • Pick and choose your desired languages
  • Porting interfaces is trivial too
 

Want more, huh?

You can browse the ÔÇô Engine’s GitHub repository by clicking here. If you want to see our other works, check out our company’s GitHub through the button at the bottom of the page. Thanks for stopping by!