Tuesday, October 22, 2013

Le Brigade nouveau est arrivé!

Time for an update on Brigade 3 and what we've been working on: until now, we have mostly shown scenes with limited materials, i.e. either perfectly diffuse or perfectly specular surfaces. The reason we didn't show any glossy (blurry) reflections so far, is because these generate a lot of extra noise and fireflies (overbright pixels) and because the glossy material from Brigade 2 was far from perfect. Over the past months, we have reworked the material system from Brigade and replaced it with the one from OctaneRender, which contains an extraordinary fast converging and high quality glossy material. The sky system was also replaced with a custom physical sky where sky and sun color vary with the sun position.And there's a bunch of brand new custom post effects, tone mapping filters and real camera effects like fish eye lens distortion (without the need for image warping).

We've had a lot of trouble finding a good way to present the face melting awesomeness that is Brigade 3 in video form and we've tried both youtube and Vimeo at different upload resolutions and samplecounts (samples per pixel). Suffice to say that both sites have ultra shitty video compression, turning all our videos in a blocky mess (although Vimeo is still much better than YT). We also decided to go nuts on glossy materials and fresnel on every surface in this scene, which makes everything look much a lot more realistic (in particular fresnel, which causes surfaces to look more or less reflective depending on the viewing angle), but the downside of this extra realism is a lot of extra noise.

So feast your eyes on the first videos of Brigade 3 (1280x720 render resolution):

Vimeo video (less video compression artefacts): https://vimeo.com/77192334

Youtube vids: http://www.youtube.com/watch?v=aKqxonOrl4Q


Another one using an Xbox controller:

The scene in the video is the very reason why I started this blog five years ago and is depicted in one of my very first blog posts from 2008 (see http://raytracey.blogspot.co.nz/2008/08/ruby-demo.html). The scene was created by Big Lazy Robot to be used in a real-time tech demo for ATI's Radeon HD 4870 GPU. Back then, the scene used baked lightmaps rendered with V-Ray for the diffuse lighting and an approximate real-time ray tracing technique for all reflective surfaces like cars and building windows. Today, more than five years later, we can render the same scene noise free using brute force path tracing on the GPU in less than half a second and we can navigate through the entire scene at 30 fps with a bit of noise (mostly apparent in shadowy areas). When I started this blog my dream was to be able to render that specific scene fully in real-time in photoreal quality and I'm really glad I've come very close to that goal. 

UPDATE: Screenshot bonanza! No less than 32 screenshots, each of them rendered for 0.5 - 1 second. The problem with Brigade 3 is that it's so much fun mucking around with the lighting, the time of day, depth of field and field of view with lens distortion. Moreover, everything looks so photoreal that it's extremely hard to stop playing and taking screenshots. It feels like you're holding a camcorder.


We plan to show more videos of Brigade 3 soon, so stay tuned... 

Update: I've uploaded the direct feed version of the second video to MEGA (a New Zealand based cloud storage service, completely anonymous, fast, no registration required and free, just excellent :). You can grab the file here: brigade3_purely_random_osumness (it's 2.40 GB)

Update 2: The direct feed version of the first video can be downloade here: brigade3_launch_vid_HD.avi (2.90 GB). This video has a higher samplecount per pixel per frame (and thus less noise and lower framerate).

Tuesday, August 13, 2013

Real-time path tracing: 4968 daftly dancing dudes on Stanford Bunny

Another real-time path traced test of Brigade with HDR environment lighting, featuring the Stanford bunny and the dancing dude from one of the previous posts. Jeroen van Schijndel (Brigade's lead dev), had the outrageous idea to create an animated instance for every triangle of the Stanford bunny, resulting in 4968 instances. Each jolly dancer contains over 60k triangles, totalling over 300 million dynamic triangles in real-time. 

720p video: http://www.youtube.com/watch?v=huvbQuQnlq8


Some screenshots below, notice the real-time color bleeding, reflections, soft shadows and soft realistic lighting from the HDR environment.


Soft shadows coming only from the HDR environment (no additional lights used):

Wednesday, August 7, 2013

Carmack's "Physics of Light and Rendering" talk at QuakeCon 2013 (with Brigade cameo!)

For the first time at QuakeCon, John Carmack showed off his talents as a lecturer as he gave a one hour talk on the Physics of Light and Rendering, which covered everything from rasterization to ray tracing and also path tracing. As the pioneer and godfather of 3D first person shooter games and the creator of the most popular 3D game engine of all time (the Quake 3 engine which is still being used in heavily modified form in all of the Call of Duty games) Carmack is still regarded as the highest authority on real-time game graphics, which makes this lecture on physically based rendering (a rendering method which until recently was strictly reserved for the academic research community and for offline production rendering) both surprising and remarkable. And when he divulges his view on the future of game graphics, you can be sure his ideas will be copied by every other game developer.

The recorded talk can be seen here: http://www.youtube.com/watch?v=P6UKhR0T6cs


Some interesting tidbits:

- while Carmack believed that voxels were the way forward to do efficient ray tracing in the past (see Jon Olick's SVO research for id Software at Siggraph 2008), but today he thinks ray tracing triangles is the most efficient way and all ray tracing will be against triangles, because most content creation tools are built around triangle meshes

- Carmack thinks that path tracing will be the way forward for all kinds of rendering, offline and real-time and the whole industry is moving towards it, because it's easier and much more accurate to create immersive lifelike graphics for movies and games with accurate global illumination, shadows and reflections

- Brigade gets briefly mentioned at around 1:04:00. Did a quick transcript of the Brigade fragment:
"[...] It does seem likely that the path forward is lots and lots of rays, physically accurate material definitions and approaches that are approximations of the sampling of path tracing. We can do, there are some neat demos going around today, like the Brigade path tracing demo which is real-time and it's doing simple path tracing from a parallel outdoor light and it's noisy and fizzly as it comes in, but you can stop and watch it come in more crisply. And eventually this is going to be the way things go, this is going to be the way we're gonna be rendering, but we still have maybe a couple of magnitudes before it's really competitive. I think one more order of magnitude in performance and you'll start seeing it used for some real things, but still, you have to have a good reason to step away from rasterization. But probably when we get two orders of magnitude, then you start seeing it as one of the more general tools. And the reason that it's winning in the offline world, even though it's still slower, people still care about how long their renderings take even if you're making a feature film or tv commercial, it matters for your iteration time. But the sense is that you get more out of this being understandable. [...]"
- Carmack is pushing the artists at id Software to adopt a more physically accurate material rendering system

While I don't fully agree that we need another magnitude of performance (Brigade can path trace outdoor scenes in real-time today with very little noise), it is great to see that path tracing is acknowledged by Carmack as the eventual future not only for offline rendering, but also for real-time game graphics. The future of GPU path tracers like Octane/Brigade has never been brighter.