Friday, April 23, 2010

Comparing path tracing image quality

After seeing the amazing videos of the "Brigade" engine", the realtime pathtracer developed by Jacco Bikker, I was wondering what would be the ideal parameters (resolution, framerate and samples/pixel) for a pathtraced game with today's hardware. I decided to do some simple experiments by comparing the image quality of a path traced scene in samples/pixel. I found two youtube videos of reasonable quality showing some moderately complex scenes rendered in Octane render and took some screensgrabs. The lighting and materials are very simple and the video and jpeg compression do not allow a good comparison, but anyway here's a rough idea:

Video 1: Porsche Carrera rendered with Octane

2 samples/pixel


6 samples/pixel


12 samples/pixel


24 samples/pixel


36 samples/pixel


1 sample/pixel


8 samples/pixel


16 samples/pixel


24 samples/pixel


40 samples/pixel


1 sample/pixel


8 samples/pixel


16 samples/pixel


32 samples/pixel


64 samples/pixel


96 samples/pixel



Video 2: Chalet/Hotel rendered with Octane

1 sample/pixel


8 samples/pixel


16 samples/pixel


32 samples/pixel



As these pictures show, the noise clears very fast at the beginning, but the image converging slows down rather quickly, following a saturation curve


8 samples/pixels is too noisy to see fine details, at 16 samples/pixels details start to appear and 32 samples/pixel gives sufficient quality for a game imo (compared to the horribly lowres shadow maps and normal maps in some of today's AAA games, like Modern Warfare 2). Unfortunately, the youtube video and subsequent jpeg compression makes the difference between 64 and 96 samples/pixel indiscernible. More than 100 samples/pixel would be ideal, but for now 32 will do. Hopefully the Fermi GPU (or multiple) will get us there soon.



UPDATE: I made a shitload of screengrabs (way too much) from this video (HD footage of the Brigade engine)


1 spp



4 spp


8 spp


17 spp


24 spp


33 spp


64 spp


129 spp


199 spp


301 spp


401 spp


500 spp


600 spp


6 spp


8 spp


15 spp


31 spp


48 spp


66 spp


94 spp


127 spp


200 spp


301 spp


402 spp

No comments: