The third evolution of my Vision 3D game engine focuses on mobile game development. The engine has been significantly upgraded with modern rendering, physics, audio, gameplay, toolchain and testing technologies.
Vision 3.0 is based heavily on Vision 2.0, but adds significant structural improvements to aid mobile developers.
The first game released using this engine was Balls Away in Fall 2014. A second title, Project Flight, is now in development.
Engine Features
Vision 3.0 adds the following key features above those of Vision 2.0:
Expanded Graphics API Support
Vision now supports Direct3D 9.0c through 11.0, OpenGL 2.0 through 4.0, and OpenGL ES 1.0-3.0. The primary development target is now OpenGL ES 3.0, but graceful fallbacks are invoked based on hardware support.
Optimized for Battery Usage
The entire architecture has been rethought, tweaked, and optimized around battery usage. This means longer play times with less drain on the battery, and prevents devices from heating up during extended gaming sessions.
Multi-threaded Architecture
All modern devices are multi-processor, so Vision has been updated with an efficient task and delegation system that efficiently uses the available resources of the device.
New Rendering System
Vision now supports both forward and deferred rendering. The engine has also received lots of new effects and graphical improvements including cascaded shadow maps, object based motion blur, screen space ambient occlusion, real-time ray traced indirect illumination, improved particle effects (for heat, snow, dust and rain), heat transfer effects and image based lighting effects (like anamorphic glare and bloom).
Generational Feature Support
At any given time there are many different makes and models of devices in use with varying levels of performance. Vision 3.0 examines the features of the host device at run-time and gracefully adjusts graphical quality accordingly. This enables gamers on low end devices to experience the game with full gameplay and frame-rate, but simply with lowered graphical intensity.
Unified Input Model
Vision supports a broad range of devices and operating systems that support some combination of touch, mouse, keyboard, joystick, controller, and camera based input. Rather than force developers to cope with each of these models, Vision provides a powerful abstracted interface based on targets and switches.
Security
The Vision toolchain automatically secures game content using AES 256 bit encryption. Although this may not guarantee the protection of game assets from prying eyes, it may provide a suitable deterrent.
In-game Editor
Previous versions of the engine required developers to step out of the game experience in order to modify it. Vision 3 uses a unified game and editor architecture, which means that the editor is fully available from within the game. This feature has significantly lowered development time for our games.
Platforms
Vision 3.0 provides a platform abstracted interface to developers, so that they are free to focus on the craft of game creation, rather than the nuases of platform specifics. The Vision development pipeline enables developers to build their games on whichever platform is most convenient, and experience perfect and seamless translation to other supported platforms.