It is an undisputed fact that the game engine middleware market is now a crowded one, what with such undisputed leaders as Unity and Unreal, makes it difficult for newcomers to gain traction quickly. The success of these game engines, however, has not hampered the enthusiasm to create competitors. Still, it takes time to win developers’ trust, build a community, populate an asset marketplace, craft enticing tutorials and publish useful documentation.
A new product must generally offer all the benefits of its competitors and also offer its users something more, something that will make their game engine stand out. Can the soon-to-be-released Xenko game engine take on such a challenge?
Let’s find out.
Engine Overview
The Xenko engine is being developed by Silicon Studio, a Japanese technology company which has several well-known products in 2D and 3D computer graphics including Advanced Optical Effects Middleware, known as YEBIS and Realtime Rendering Engine, Mizuchi.
Xenko first appeared in early beta in late 2014 and later went open-source on GitHub. In April 2015, the company presented a new scene editor as well as support for physically based rendering (PBR) materials.
Xenko’s latest beta version, 1.8β, was released this summer with improvements such as forward clustered rendering (also known as Forward+ rendering), support for the new explicit graphics API – Vulkan, and DirectX12, Linux support, audio improvements, multi-threading support, a new UI Editor and support for nested prefabs.
At the moment, Silicon Studio has full control over the product as they do not depend on any commercial or proprietary 3rd party solutions and has developed everything in-house for Xenko. However, they have established several partnerships to accelerate the development process to help bring the finished product to market faster. For instance, the company has been collaborating with N-iX, a European game dev studio, on graphical assets, documentation and engine testing. The engine is still in development and we can expect more upgrades in the near future. The next release version is likely to feature scene entity streaming, and major improvements for VR.
Since Xenko is just getting off the ground, there are currently only a few showcases developed with it including this runner game. Other works include the currently-under-development Starbreach demo game, the Ocean7 Surf Maps app, technical demos found on the Xenko Youtube page as well as some projects in progress from the earliest engine adopters.
Benefits and Downsides
As this is a young product, there is still a lot of work to be done. Let’s start with the benefits.
The first undeniable plus is the access to their source code tree, which is available on GitHub.There is a small ‘but’ as it is currently released under the GPL license. However, we can hope for a more permissive license after their official release. It’s also worth noting that Xenko is one of the few game engines written in C#.
Secondly, Xenko is a 2D and 3D cross-platform engine. Currently, it supports Windows Desktop & Universal, Linux, Android, iOS and XBoxOne (via UWP). Silicon Studio also plans to add support for PS4 and macOS in future versions.
As for it’s graphical capabilities, one can achieve a really nice level of realism thanks to Xenko’s Physically Based Rendering. This technology allows you to create extremely photorealistic and natural-looking experiences by organically controlling how light behaves when it bounces off different surfaces. In fact, lighting and shadows affect how you see everything in a game, so good PBR makes the experience really special.
As Xenko is still in beta, the available documentation and resources might intimidate those who have just started learning how to make games. So first of all, the company needs to address the documentation issue, which definitely needs improvement. It is especially critical for such a young product with a small but growing community (of a few hundred users) and very few tutorials. A person starting development with any engine will have many issues and questions so there should be a reasonable enough number of resources available.
Concerning the available assets, there’s still a lot of work ahead to make Xenko more attractive for beginners. Its major competitors are famous for their huge asset stores, making it possible for developers to create simple games even without much coding. Overall, the engine feels good as the code and the tools work quite well. Some more user testing would improve its usability, however. After a bit of polishing and stabilizing its API, Xenko is definitely worth a try.
Prospects on the Market
So you ask, “Why would I use Xenko at all when there are such great options as Unity and Unreal which can offer similar features?” Well, this engine has an ace up its sleeve.
Virtual reality is taking the tech world by storm. Popular engines are trying to meet the increasing needs of all the innovations, and new engines see opportunity and maybe even a competitive advantage in this. New engines have flexibility inherently to introduce new techniques, and implement solutions that can bring new and improved quality experiences to VR development.
Forward clustered rendering is probably the best feature Xenko has to offer in this regard, in addition to being fully multi-threaded, supporting next generation graphics APIs and having a remarkably flexible rendering pipeline. Forward clustered rendering is highly compatible with VR and this is what makes it stand out from the crowd. It is similar to forward rendering which is much better than deferred rendering when it comes to working with transparent objects. Whereas forward clustered rendering is also perfect for lighting as it allows for creating a 3D texture where you set the light in the whole scene and then this lighting is projected onto all the objects. So the whole process is optimized and much faster. This enables developers to create high-performance experiences with sharper and more detailed images.
This feature is especially critical for virtual reality solutions. If you, for example, start turning your head very quickly in a headset and the app is not fast enough, you will experience motion sickness. Forward clustered rendering can help you achieve better performance and eliminate this negative effect.
Suffice to say that Unreal has only started building it into their engine while Unity doesn’t have it at all.
Well-established game engines have good, settled rendering pipelines that have been upgraded and improved upon for years. Changing something as crucial as the engine’s rendering pipeline is generally difficult. Xenko is a brand-new engine so they have a chance to adapt quickly to the rapidly changing graphics and video game development world. It’s much easier for them to introduce new technical advancements such as this new type of rendering pipeline. If they continue on in this way, they have a strong chance to win a decent place in the game development market. So we are going to keep an eye on them. You should also feel free to follow the updates on their website, try it out and join the discussion.