Chris Wallis

Chris Wallis

@chriskwallis.bsky.social

Rendering Engineer at The Coalition. Opinions are my own

750 Followers 144 Following 19 Posts Joined Oct 2024
1 year ago

Oh yeah I've seen this but completely forgot about it, yeah this is such a great video for people outside of rendering 😁

1 0 0 0
1 year ago
Video thumbnail

Added the ability to watch the rays in my path tracer bounce around as an animation. I'm excited about this more from an education POV, I think it helps explain how path tracing works far more easily than I could describe in words

110 23 2 0
1 year ago
Video thumbnail

Iterating on my ray visualizer. Added arrow caps to see ray directionality and UI to tune the ray thickness. I removed the cap on visualizer ray count in the bathroom scene and it gets a little crazy.

Green = first bounce
Yellow = all other bounces
Blue = Next event estimation shadow rays

9 0 0 0
1 year ago
Video thumbnail

First prototype of visualizing rays. Fairly simple implementaton: store rays in UAV, then do ray-cylinder intersections in a CS.

First bounce is green, second yellow, red for the rest. Shows how dumb my tracer is with very little importance sampling, but it's fun watching the web of rays!

42 4 0 0
1 year ago

In this case I'd probably rather have it take perspective into account. For something like wire frame though that makes more sense

1 0 0 0
1 year ago

Didn't know that was a thing, thanks!

2 0 1 0
1 year ago

True I could do that, I was thinking just generating cylinders on the fly but that sounds more fun

2 0 1 0
1 year ago

So if I want to visualize the rays I'm firing for a path tracer, how do folks draw the lines for rays?

The obvious answer is rasterize the lines, but then you need a raster path that lines up directly with the path traced results

Is it crazy to raytrace against the lines in a composition pass?

6 1 2 0
1 year ago
YouTube
Rendering Tiny Glades With Entirely Too Much Ray Marching YouTube video by Graphics Programming Conference

Here's a recording of my Tiny Glade presentation from the Graphics Programming Conference 2024:

www.youtube.com/watch?v=jusW...

It's an any% speedrun of our GPU-driven rendering, shadows, global illumination, water, and DoF, involving a few weird tricks.

455 108 15 9
1 year ago

By cache I suppose you're caching the DXIL with some hash to avoid calling the compiler if you don't need to?

0 0 2 0
1 year ago

Hrmm sounds interesting, might have to try this and write a part 2 to my blog post 😁

1 0 1 0
1 year ago

Oh nice, will take a look at that, sounds like a good approach!

1 0 0 0
1 year ago

Ah hah yeah maybe that's good enough for me too

0 0 0 0
1 year ago

Would love to do something similar, how do you handle includes?

0 0 2 0
1 year ago
Post image

Quick and dirty post on implementing hot shader reload with DXC: wallisc.github.io/rendering/20...

46 9 2 0
1 year ago

Hmm probably! I'd love to think of a way where it could autodetect based on whether files have been modified. I think the tough part is handling the chain of includes but maybe there's some helpers in DXC that make extracting that easy. Brute force recompiling would definitely be less of a headache

1 0 3 0
1 year ago
Video thumbnail

Put this off for too long, added hot reload of shaders. Super useful for debugging, using it here to shut off albedo to see indirect lighting in isolation and then preview UVs. Fairly easy to support since everything is done through a single shader and takes less than a second to recompile.

27 1 1 0
1 year ago
Video thumbnail

Support for subsurface material editing! I treat glass and subsurface the same. Glass is just subsurface scattering with 0 scattering events.

15 0 0 0
1 year ago
Video thumbnail

I've avoided making my path tracer an editor for simplicity sake but recently realized how much easier debugging would be with some limited functionality. So here we go, first prototype of material editing

26 2 0 0
1 year ago
Post image Post image Post image

Hey, I'm Chris! I'm a rendering engineer working on the Gears of War series. Sometimes I post about it, but usually I just talk about my GPU path tracer or ShaderToy

Blog of my random graphics stuff here: wallisc.github.io

19 1 0 0