As we count off the last couple of days before the PS4 Pro launches, here’s our final and second part of our deep dive into the PS4 Pro’s technical functionality and architecture. This time we are going to discuss the console’s alternate way of rendering upscaled 4K resolution, new ID buffer, work scheduler and multiple wavefront improvements on CU level.
Once again, these improvements were revealed by the console’s architect Mark Cerny in an in-depth interview with EuroGamer’s Digital Foundry so we are going to tackle all of them at an in-depth level through this article.
While the checkerboard rendering approach we’ve seen in titles like Horizon: Zero Dawn, Days Gone, and others appears to be the way in which many launch titles for the Pro will resolve 4K, it isn’t an ideal solution for every game: for one, checkerboard upscaling introduces a noticeable softness to the image. This is, to an extent, unavoidable. At the end of the day, upscaling is upscaling, and you are losing pixel data compared to native 4K.
Checkerboard upscaling also suffers from a fringing artefact that’s particularly noticeable when the camera moves quickly in fast-paced games. It is a definite step up from 1080p, and would make it worthwhile for Pro owners to plug their systems into a 4K display. However, checkerboard rendering takes quite a bit of time to implement, and because this has to be done on a per-game basis, there’s no guarantee that many developers will put in the time to add checkerboard 4K to their existing games: after all, Pro upgrades for current games are to be outed as free patches.
Interestingly, Cerny mentioned another possibility: Geometry upscaling. With the frame buffer dissociated from the depth and ID buffers, the idea to couple a 1080p framebuffer with a depth buffer resolving at a higher resolution, meaning 4K geometry coverage. What this’d entail for image quality is exceptional anti-aliasing without the kind of performance hit that supersampling (a la checkerboard rendering) would entail. Reading between the lines, this seems to do more or less what good ol’ MSAA does, namely, supersample the depth buffer, giving you smooth, jaggie-free geometry.
New ID Buffer:
While we were initially of the opinion that the PS4 Pro made use of off-the-shelf AMD parts, it’s become evident that hardware-level optimizations make the PS4 Pro’s GPU less straightforward than the underclocked RX 480 we thought of it as. Aliasing has always been the bane of console visuals: there’s just never quite enough rendering overhead to take care of jaggies once everything else figures. Cheap, post-process techniques like FXAA offered a modicum of coverage but tended to blur the final image.
With the PS4 Pro, the inclusion of an ID buffer at a hardware level is yet another way in which Sony is targeting aliasing on their new platform. Anti-aliasing smooths over diagonal and curved edges, so getting information about object boundaries is key–of course, this can be a challenge conventionally because objects (and therefore their coordinates) are constantly moving in-game. This is why temporal anti-aliasing implementations like TXAA–which attempt to eliminate jaggies on moving objects–tend to be costly, performance-wise.
Work Scheduler And Multiple Wavefront Improvements On CU Level:
The ID buffer allows developers to keep track of triangle and object boundaries from frame to frame. At high resolutions like 4K, aliasing isn’t that big a deal to start off with. The ID could allow developers to cheaply deploy temporal AA in native and upscaled 4K games, for the best possible image quality. We’d touched earlier on how the PS4 Pro’s GPU can concurrently handle two FP16 operations, thanks to better support of 16 bit half-float variables. The flip side to this is that because FP16 variables now take up half the register space that they otherwise would, more wavefronts–bundles of threads–can run at a given time, per CU. Assuming developers make use of half-float variables, the performance implications are palpable. Because of the fine balancing of limited resources taking place here, a more efficient work schedule has been integrated.
All in all, the PS4 Pro is shaping up to be a much more interesting beast than we initially assumed. There definitely are constraints here: Firstly, the fact that “it’s a PS4,” means that software will have to designed to run on the original PS4. As a matter of fact, Cerny’s gone on to suggest that he expects that PS4 Pro support will only take a fraction of a percent of total development time. This means that core assets like textures and models will be made with the PS4–and not the Pro–in mind.
Ultimately, what this means is that the Pro functions more or less like a new GPU on PC–allowing you to run the same games at higher resolutions, and with greater visual fidelity. While core assets may remain unchanged, games running on highly scaleable engines will showcase longer draw distances, higher res shadows, and better particle effects. The Pro’s hardware limitations are another thing to consider: at the end of the day, its weak Jaguar-based CPU makes PS4 compatibility more of a necessity than an option: while it may be able to display prettier graphics, the Pro isn’t much faster than the original PS4 at CPU-intensive tasks like physics and AI, meaning that the complexity and depth of games will not be fundamentally altered, even if they were hypothetically developed as Pro exclusives.
Moreover, hardware optimizations aside, there’s only so much that an RX 480-caliber piece of graphics hardware can do–that too, at 4K. The focus that Cerny seems to give to anti-aliasing seems to be a tacit recognition of this: the PS4 Pro isn’t quite capable of hitting a native 4K in AAA games. However, it does offer enough GPU headroom to give you much better image quality with higher resolutions than before. The focus on temporal AA, and the inclusion of an ID buffer mean that, while we’re still a ways from true 4K gaming on console, the future’s cleaner, sharper, and (relatively) jaggie-free.