Can a solo indie developer use ray tracing in their game?
Zeng Xiancheng on why the realistic lighting technique is not solely the realm of AAA developers
The visual fidelity of video games has increased so dramatically in the past ten years that it's becoming harder for the industry to make significant leaps forward. The next major milestone is ray tracing.
This technique centres around simulating the physical behaviour of light in real-time, rather than artificially estimating it through other means. One glance at videos and comparison screenshots shows how striking the effect can be, but how difficult is it to achieve?
There are plenty of AAA games vying to be the poster child for ray tracing, from Cyberpunk 2077 to Watch Dogs: Legion. But even the Doom Eternal developers at Id Software have put the tech on the backburner until they can fully get to grips with it.
So it's interesting to discover that a lone developer in China, making a game in his spare time, has been able to implement this technology.
Zeng Xiancheng, presenting himself as the one-person studio FYQD has just launched first-person shooter Bright Memory into Steam Early Access. Players battle a mixture of terrorists and fantasy creatures with guns, swords and supernatural abilities, all in environments illuminated by ray tracing.
Speaking to GamesIndustry.biz, Zeng says he was motivated by Nvidia's launch of its RTX graphics cards towards the end of 2018.
"I thought this technology would attract more players' attention to Bright Memory," he said. "Because RTX is usually only supported by AAA titles. Very few indie games support RTX, that's why I believe this technology is a good opportunity to show your personal technical capabilities."
Zeng relied heavily on the RTX features built into Unreal Engine 4 (UE4). However, as the project progressed he found the support for RTX in UE4 was "not good enough", lowering the framerate of his fast-paced game. He reached out to Nvidia during post-optimisation and the team helped him add the company's Deep Learning Super Sampling technology to smooth things out.
As a result, Zeng claims Bright Memory looks 30% better with ray tracing turned on. He notes he did not use the full features of RTX as it would have affected the performance, but had he done so, he believes it would "bring about 50% graphic improvement."
"I also hope ray tracing can become a selling point, especially for indie games," he said. "I think it's very worth doing."
"Ray tracing should be able to replace the traditional rasterization process in the next ten years"
Zeng notes that the technology "only requires you to flip a few switches" in Unreal "without requiring too much programming skill" to activate it but notes that developers may still have problems using it, since it can require professional artists to help achieve the full effect. Fortunately, he spent five years making scenes with rendering technology Vray, so already has some familiarity with the concept of ray tracing.
"In Bright Memory, I added a lot of off-screen reflective objects," he explained. "I use lots of the RT-Reflection technology, considering that players may not know what RT-Global illumination or RT-Ambient Occlusion are. So I arranged a lot of outside reflective objects in the visual screen in scenes.
"For example, in a cave in Bright Memory, I added a flame effect at a higher location. Usually when players pass by something like this they don't look up to see the flames, but after turning on the ray tracing effect, the reflection of the fires will appear immediately in the water on the ground, where the screen space reflection cannot be done."
Again, Zeng says the notion that ray tracing is a technology beyond the capacity of indie developers -- even one-person ventures like his -- is a "big misunderstanding," providing someone on the team has experience with other rendering software and techniques.
"The effect of ray tracing on small teams is mainly in the picture effect and performance," he explains. "The picture effect requires a great artist to design how to reflect ray tracing, and the performance problem requires programmers to work with artists to optimise together.
"My suggestion is to add ray tracing in some of the scenes, instead of ray tracing technology throughout the full game, which can greatly reduce the production cost."
He also notes that, while Nvidia has launched its RTX cards and Epic Games is supporting the technology within its engine, ray tracing is still a relatively new concept in games development and needs to mature a little before it can be adopted more widely. But he expects it to be a big selling point for Xbox Series X and PlayStation 5.
"Through the improvement of hardware, ray tracing should be able to replace the traditional rasterization production process in the next ten years, and we can get better graphics quality," he says.
"Of course, the next generation consoles have been slated to support ray tracing. But at present, ray tracing is still an immature technology. It not only causes potential performance issues, but many game artists need to have real image rendering experience to be able to make it work. So we can only see that it is a new technology for now, but in a short time it can be widely used in games."