Cutting Edge

Ray Tracing

Evolving Visual Expressions for Game Creators

Dec 2, 2020

Technology capable of enhancing the creative process

The Vision of Sony Interactive Entertainment (SIE) is to provide customers with the "The Best Place to Play." Consisting of 14 studios worldwide, SIE collaborates with game creators to provide engaging content that can be enjoyed by a wide range of customers. One of the technologies used to enhance this content is ray tracing. The PlayStation®5, which was released in November 2020, will be equipped with a custom GPU from AMD that supports ray tracing. We talked to SIE’s Shin Watanabe to find out why ray tracing has the potential to enhance the creative process.

Profile

  • Shin Watanabe

    Platform Software Design Div.
    Hardware Engineering & Operation
    Sony Interactive Entertainment

Simplicity expands various possibilities

──What is ray tracing?

Many people may associate the term "ray tracing" with rendering technology used in computer graphics. However, ray tracing has several meanings depending on the context. It is possible to discuss ray tracing in a broad sense and in a narrow sense. In a broad sense, ray tracing is a simple yet versatile technology that determines intersections between rays and objects. This is the ray tracing that we are researching and developing. In a narrow sense, it refers to the rendering of computer graphics by simulating the process of light going from a light source to our eyes. This type of ray tracing refers to various rendering methods, including a method that traces the path of light reflection from the eye back to the light source and a method based on probability and statistics that has been actively used in film production in recent years.

──So, the ray tracing referred to in gaming is ray tracing in the narrow sense?

That is right. When discussing the PlayStation®5, we are generally talking about ray tracing in the narrow sense. To be more specific, the ray tracing used in recent CG animated films is called "Monte Carlo Ray Tracing." Movies are generally shown as 24 frames per second, but in order to make a single frame, you need a large number of computers connected in parallel to process all the data. In my perspective, doing this for video games is—at least in the next few years—not practical. A different technique called "rasterization" is used for video game graphics. At present, we are partially incorporating Monte Carlo Ray Tracing techniques to improve rasterization for video games.

──In recent years, we are hearing the term "ray tracing" more and more often. What do you think is the reason for this?

This is because ray tracing technology is expected to solve problems related to rendering in video games. The problem with the rendering process lies in the complexity of the programs. From a user’s point of view, today’s CG animation may seem quite realistic, but there are very complex programs running behind the scenes. And even though it looks real, it is not necessary 100% indistinguishable from reality. Under the current rasterization-only framework, we have to make complex programs even more complex to get closer to 100% graphical accuracy. For example, a separate program is required to draw a character’s shadow or their reflection in the water. Game creators also need to repeatedly make fine adjustments due to compatibility issues that arise from running these programs together. The rendering process is currently extremely burdensome for creators, so if we could replace it with ray tracing and simplify it, creators could spend more time focusing on the more creative aspects of game design. In other words, ray tracing is a technology that has the potential to enhance the creative process.

Maximizing hardware performance with software

──What is necessary to replace the conventional rendering process?

It will first be necessary to speed up ray tracing. Computing simple ray-object intersections can be calculated with the brute force method, but this grows increasingly time consuming as the number of objects increase. One method of speeding up ray tracing is using a spatial data structure that divides a region into cells. A data structure reduces calculating time since it only runs calculations for objects in the regions that the ray passes through. One typical data structure is a Bounding Volume Hierarchy (BVH). In BVHs, objects are subdivided into a hierarchy of disjoint sets, allowing for efficient and therefore faster calculations. BVHs also come in different types, and the way one is built can make a huge difference in performance. There is no point in using powerful hardware accelerating ray tracing if you are using a low-quality data structure. In other words, using ray tracing in games will depend not only on hardware performance but also on software efficiency. To bring out hardware performance, we are overseeing the creation of algorithms and data structures to accelerate ray tracing and developing libraries to provide to creators.

(Left) An example of a BVH’s hierarchy of disjoint sets / (Right) A visualization of the number of intersections within a BVH set (the larger the white part, the higher the number of intersections).

──What is important to you in your research and development?

In our everyday development, we are focused on quantitative indicators to improve performance. We measure the performance of hardware such as the GPU, under a variety of conditions to understand the data. We have been able to quantify our strengths and weaknesses, and this gives us a sense of progress during our development. We also value communication with game creators. As a platform provider, we would like game creators to be able to maximize their powers of expression. When creators integrate our library into their games, they may find errors or issues that we did not anticipate. Therefore, we strive to quickly respond to feedback from studios and are constantly making improvements to our library.

Collaborating with game creators for more fun and surprises

──Finally, what does the future hold for you?

The innate strength of ray tracing is that it gives us an accurate understanding of the surrounding world. Outside of graphics, there are also other applications, such as acoustics simulation. We may discover completely new sounds by reverberating sound waves or wrapping them around from behind. We expect that it could also be applied to pathfinding for NPCs. Ray tracing still holds numerous possibilities beyond our imaginations. If you only look at it from a graphics perspective, you might think that it is already well-developed and cannot be taken any further. However, I believe that there are still many issues to be addressed. In particular, as a platform developer, I recognize how important it is to do research and development on our hardware. Our goal at SIE is to provide "The Best Place to Play," which offers new experiences and diverse communication. In this way, we can create a new field where users and developers can connect with each other. And through the provision of our platforms, we will create environments in which creators can unleash their creativity and innovation and deliver it to the world. In order to provide users with even more fun and surprises, we will continue taking on new challenges while listening to feedback from creators.

Related article