A presentation given by Polyphony Digital landscape design engineers at the 2023 Game Developers Conference has detailed the custom skybox simulator “Skysim” developed for Gran Turismo 7.
Although there isn’t a video of the presentation yet, a copy of the slideshow has been uploaded to the GDCVault site, an educational resource which hosts materials from GDC events.
The talk, presented by graphic engineer and Scapes artist Kentaro Suzuki and landscape technical artist Kenichiro Yasutomi comes in at 268 slides long, but covers some quite fascinating ground.
In essence the presentation deals with the challenges Polyphony Digital faced when it decided to make dynamic weather and time conditions for Gran Turismo 7 — in 2019 — having used static conditions in GT Sport.
That meant creating dynamic skyboxes and, in part through its experiences in developing Scapes — static scene photographs with 3D lighting data, allowing players to place a vehicle in the shot and have it seem natural — PD realized that no existing dynamic sky solutions fully reflected the real thing.
Naturally this lead to the team deciding to create its own, and it involved digging into some pretty serious science, including the phenomenon of light scattering.
Light scattering is, as the name suggests, how light rays are refracted, reflected, and absorbed by particles between their source (the Sun, in this case) and the observer. Particles can include larger fragments like dust, salt, and soot, or even the molecules of nitrogen and oxygen (among others) that make up the air itself.
Particles of different sizes scatter light in different ways, with two different models that account for it. Rayleigh Scattering deals with smaller particles well below the wavelength of visible light itself, while Mie Scattering covers aerosols and larger particles. Skysim takes account of both aspects.
Using atmospheric data from the National Oceanic and Atmospheric Administration (NOAA) AERONET observation system — which measures sunlight scattering due to aerosols at locations around the world — PD was able to generate realistic conditions according to the geographical location of each circuit.
Combining the data with sun elevation according to time of day, PD was able to fully render accurate lighting conditions at any given time — although the computational requirements were “incredible” and required any spare PC capacity in the studio.
Handily Scapes also came into play here. The results of the render could be directly compared to real-world imagery as captured during the Scapes creation process — validating the authenticity of the simulated skybox.
That leads to the final stage: interpolation. With each “offline” render producing the skybox at any given time, the in-game dynamic simulation needed to both transition from one render to the next and produce intermediate stages, which it does by aggregating the skyboxes either side. According to the presentation, this is achieved at no less than the rate of one frame every 9.19ms.
There’s a lot more besides in the presentation, including how PD simulates clouds within the skybox, and although a lot of it is pretty technical it does give an appreciation for how far the team reaches for realism.