Go from zero to hero in one day with Unity 5 plus hybrid rendering

Share on linkedin
Share on twitter
Share on facebook
Share on reddit
Share on digg
Share on email

The focus of this posting is to show Unity artists how easy it can be to add true reflections and shadows to their content using our hybrid rendering techniques. The PowerVR OverDrive game runs live, rendering with a PowerVR ray tracing GPU installed in a Linux-powered computer.

Using an Xbox 360 controller, you drive around in a monster truck, smash into stuff and enjoy the pretty reflections. Oh and there are gnomes subtly and not so subtly added in! Warning: the game can be somewhat addictive. Before you get too excited, I need to mention that the technology used here is a prototype intended as a proof of concept. You cannot (yet) acquire this game in the Unity asset store.

The engineers at Imagination Technologies need in the field demonstrations like this game to test and tune the ray tracing components of the new PowerVR Wizard hardware. This latest GPU is very much a critical requirement for rendering PowerVR OverDrive in real time.

The rest of this posting will describe the steps in creating this game but first let’s define some terms. A GPU (graphic processing unit) is specialized hardware which processes and displays an image. The new GR6500 ray tracing GPU combines one of Imagination’s mobile PowerVR GPUs with additional hardware specifically built for ray tracing. Ray tracing refers to mathematically tracing the influence of light in a world made of 3D geometry.

This game uses a hybrid rendering pipeline. Hybrid rendering in this context separates the ray tracing calculations needed for reflections, refractions and shadows from the primary display of the objects. The idea behind hybrid rendering is to take advantage of the extreme performance capabilities of the standard and new components of this GPU. The standard parts are blazing fast at displaying 3D geometry while the new parts are specifically optimized for ray tracing. Because they are integrated into a single ray tracing GPU, this makes it easy to start with rasterized graphics in the usual way then add on great ray traced effects. It’s an incredibly quick and easy way to get dynamic reflections, shadows, etc into your game.

PowerVR Ray Tracing - Hybrid rendering in Unity 5 (3)

I started designing this game in Maya doing the dynamics with the built-in Bullet physics engine. The monster truck was a royalty-free 3dsMax 3D model acquired from this website. I imported the truck into Maya and made minor modifications to the original truck model to conform to Unity’s preference of double sided geometry. I then modelled the obstacle course and dynamic objects of the game set. The game environment was purposely designed to produce complex reflections which are difficult if not impossible with screen based reflection tricks. Since the PowerVR ray tracing hardware provides ample memory I could keep all my models at high detail.

Next I exported all the geometry from Maya to FBX files which Unity handily imported with all the organizational hierarchy intact. Luckily, Unity 5 comes with a very capable car demonstration game. This car game includes a midsized drivable vehicle with scripts that enabled full on physical dynamics. It also included an obstacle course of static and dynamic objects.

This meant I had everything I needed to create my game.

I replaced the car with my monster truck and the course geometry with my new obstacles. For the truck this did require some sensitive tweaking of the wheel colliders and dynamics settings. Again luckily, the internet provided lots of help from more experienced Unity artists. In a matter of hours my new game was ready for the addition of ray traced effects..

PowerVR Ray Tracing - Hybrid rendering in Unity 5 (4)

Imagination Technologies has produced a prototype hybrid rendering plugin kit for Unity. This kit runs with the Unity 5 editor and provides a clickable pulldown to build game bundles for Linux. The kit comes with a suite of surface materials especially meant for reflective surfaces. The PowerVR OverDrive game only uses one of those materials called hybridclearcoat. The attributes of this material are loosely based on those in the Unity standard material so Unity artists will feel at home with the naming conventions. Included are inputs to control surface color, highlight color, ambient intensity, bump mapping and reflection attenuation. The plugin currently only allows for one light which is this case was a directional light. There are camera scripts that engage the Unity Hybrid ray tracing pipeline that also provide controls for image post processing for tone mapping and glow effects. This post processing makes sure the final image is nicely exposed and produces an atmospheric haze that enhances the look. Finally the plugin game kit provides a direct interface to build the player game bundle for Linux. Within an hour I had the Unity project ready. I transferred the Linux game bundle to our PowerVR GR6500 system and started playing PowerVR OverDrive in all its reflective glory.

This disruptive technology is literally a game changer. It means that artists can dedicate much more of their time to content aesthetics rather than feeding the complex processes intended to trick the viewer into seeing true reflections.

PowerVR Ray Tracing - Hybrid rendering in Unity 5 (1)

The next few days were spent refining the game dynamics, surface properties and skybox environment image. Luckily several of the engineers on our team are avid gamers and offered great advice on enhancing the experience. Initially the game only worked through keyboard hot keys. After adding the hooks for an Xbox360 game controller playing was a lot more fun. Below is an image describing the button mappings.

PowerVR Ray Tracing - Hybrid rendering in Unity 5 (2)

The kit allows you to save snapshots during gameplay. I’ve included multiple screenshots in this article; in addition, you can find a live recording of the PowerVR OverDrive game on our YouTube channel.

If you are attending GDC 2016, you can learn more about the PowerVR graphics and ray tracing technologies by attending our idc16 event or visiting our booth.

Make sure you also follow us on Twitter (@ImaginationTech, @PowerVRInsider, @PowerVR_RT) to get the latest news and announcements from the PowerVR community.

Will Anielewicz

Will Anielewicz

Will has been playing with computers since 1967. After completing an Honors Computer Science degree at York University in 1974, he was a multi-discipline Masters candidate combining Fine Arts, Computer Science and Philosophy. The mandate was to create a computer graphics piano that could be used in live concert performances. In 1976 Will had one of the world's first exhibitions of computer graphic art, at a Toronto Canada art gallery. In 1982 Will was hired as the first employee of Alias Research the creator of Maya. Since then, Will has worked on 14 feature films (such as "Star Wars: The Phantom Menace") and several award-winning commercials.

3 thoughts on “Go from zero to hero in one day with Unity 5 plus hybrid rendering”

    • Hi Yusef, this version of Unity only works with the PowerVR Ray Tracing GPU which is not yet available to the general public. This article shows what will be possible in the future when ray tracing acceleration is part of every device’s GPU.

      Reply

Please leave a comment below

Comment policy: We love comments and appreciate the time that readers spend to share ideas and give feedback. However, all comments are manually moderated and those deemed to be spam or solely promotional will be deleted. We respect your privacy and will not publish your personal details.

Blog Contact

If you have any enquiries regarding any of our blog posts, please contact:

United Kingdom

[email protected]
Tel: +44 (0)1923 260 511

Search by Tag

Search by Author

Related blog articles

b series imgic technology hero banner

PowerVR SDK and Tools 21.1 Out Now – including ray tracing simulator

The sun is starting to come out, people are returning to society, and potentially most exciting; we at DevTech are releasing a new version of the PowerVR SDK and Tools. The PowerVR SDK contains not only our graphics development framework, but also a handful of example applications that show you not only how to implement certain techniques, but also make the most out of your PowerVR platforms. Between the modules that help you deploy cross-platform or libraries that let you focus on the actual code rather than boilerplate setup; our SDK has everything you need to hit the ground running with making a high-performance application. We’re starting with the SDK, rather than the tools this time, because this first talking point is a pretty big one, we think. 

Read More »
ray tracing Detail Lighting

Imagination collects 5G Cloud Gaming Industry Alliance award for ray tracing

Imagination pioneered hardware-based ray tracing technology several years ago with a focus on an ideal blend of performance, quality power efficiency and the IP is available for licensing. Its efforts have been recognised by the 5G Cloud Gaming Industry Alliance (5GCGA), a new cross-industry collective that aims to develop the 5G cloud game industry worldwide.

Read More »
android background

The Android Invasion: Imagination GPU IP buddies up with Google-powered devices

Google Android continues to have the lion share of the mobile market, powering around 75% of all smartphones and tablets, making it the most used operating system in the world. Imagination’s PowerVR architecture-based IP and the Android OS are bedfellows, with a host of devices based on Android coming to market all the time. Here we list a few that have appeared in Q4 2020.

Read More »

Connect

Sign up to receive the latest news and product updates from Imagination straight to your inbox.