4 RESULTS AND EVALUATION
The two SSAO techniques were implemented using
the Playstation 3’s SPU architecture.We also imple-
mented fullscreen and downsampled versions for both
approaches. We found that using 12 samples for the
volumetric obscurance method and 6 samples for the
falloff function method provided similar performance
and both produced a good quality image.
4.1 Visual Quality
Visually comparing the two implementations at both
fullscreen and downsampled resolution shows that all
versions are of a high quality. In the game Uncharted
2 (Hable, 2010), where SSAO was also implemented
on the SPUs, the two visual downfalls were a visible
cross pattern of occlusion, and halos around objects.
Neither of our implementations suffer from a cross
pattern, whilst halos have been significantly reduced.
The volumetric obscurance method gives defined
occlusion values with little noise, and appears to be
of a similar quality to that seen in Toy Story 3: The
Game (Ownby, 2010). However this method suf-
fers from creating occlusion values that are focused
around the edges of objects, not providing wide area
results as seen in the falloff function method.
The falloff function method provides the best re-
sults for wide area ambience, capturing a greater
sense of the overall geometry of the scene. As this
method uses the surface normals, it is also able to
highlight details from the normal maps of the objects’
surfaces. The falloff function method can however
suffer from objects causing self-occlusion (this is con-
sistent with the findings of (McGuire et al., 2011)),
and the image as a whole is more noisy than that seen
in the volumetric occlusion method.
4.2 Performance
In our implementation, both SSAO techniques can run
on as many SPUs as desired. Whilst performance ob-
viously improves with more SPUs, it is unlikely to be
possible to allocate all 6 SPUs to perform SSAO cal-
culations. Table 1 shows performance results, mea-
sured in total SPU time. In our fastest implementa-
tion (using the falloff function at a downsampled res-
olution), occlusion results were calculated in 46.8ms,
if all six SPUs are assigned to this task therefore, the
time it takes for this task to complete is 7.8ms.
Table 1: Performance figures showing total SPU time.
Volumetric Obsc. Falloff Fn.
Downsampled 55.2ms 46.8ms
Fullscreen 209ms 166ms
We also created a version using only the PPU, no
tiling was required (much like a GPU implementa-
tion) and we tested on a fullscreen resolution buffer.
This was significantly slower, increasing frame render
times by over 1500ms.
Whilst all four of the SPU implementation re-
sults allow for fully interactive frame rates in test lev-
els, the large increase in speed seen in the downsam-
pled methods make them much more desirable than
the fullscreen equivalent. Our fastest result remains
slower than GPU implementations however. Despite
this,our implementation has the advantage of not im-
pacting GPU performance, giving a trade-off between
2.3ms of GPU time and 7.8ms of CPU time.
5 CONCLUSIONS
We have successfully achieved high quality SSAO ef-
fects using the Playstation3’s SPUs, confirming that
this technique can be used as an alternative to GPU-
based implementations. Our techniques are currently
viable in an application that is hindered by GPU per-
formance, but not with CPU performance.
REFERENCES
Augonnet, C. (2006-2007). An introduction to IBM cell
processor.
Elad, M. (2002). Algorithms for noise removal and the bi-
lateral filter.
Engstad, P.-K. (2010). Introduction to SPU optimizations.
Naughty Dog.
Filion, D. and McNaughton, R. (2008). Starcraft 2 effects
and techniques. In Advances in Real-Time Rendering
in 3D Graphics and Games Course, SIGGRAPH.
Gschwind, M. (2006). The cell broadband engine: Exploit-
ing multiple levels of parallelism in a chip multipro-
cessor. Technical report, IBM Research Division.
Hable, J. (2010). Uncharted 2: HDR lighting. Game Devel-
opers Conference.
Hoberock, J. and Jia, Y. (2008). High-quality ambient oc-
clusion. In GPU Gems 3. Addison-Wesley.
Loos, B. J. and Sloan, P.-P. (2010). Volumetric obscurance.
McGuire, M., Osman, B., Bukowski, M., and Hennessy,
P. (2011). The alchemy screen-space ambient ob-
scurance algorithm. In High-Performance Graphics
2011.
Ownby, J.-P. (2010). Toy Story 3: The video game render-
ing techniques. In Advances in Real-Time Rendering
Course, SIGGRAPH.
Shanmugam, P. and Arikan, O. (2007). Hardware acceler-
ated ambient occlusion techniques on GPUs. In Pro-
ceedings of the 2007 Symposium on Interactive 3D
Graphics and Games, I3D ’07, pages 73–80. ACM.
GRAPP 2012 - International Conference on Computer Graphics Theory and Applications
298