Brendan Duncan's Avatar

Brendan Duncan

@brendanduncan

Staff Graphics Engineer at Unity, WebGPU and WebGL. https://github.com/brendan-duncan

49
Followers
41
Following
32
Posts
18.11.2023
Joined
Posts Following

Latest posts by Brendan Duncan @brendanduncan

Post image

I loved this movie.

02.03.2026 04:57 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

I love the progression of the concert, with each song building in performance complexity.

02.03.2026 04:28 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

Happy Valentines Day

14.02.2026 17:42 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Post image Post image

We connected King’s Quest creator Roberta Williams to comedy writer @mikedrucker.bsky.social, who may be her biggest fan, for a conversation about the series’ legacy and a generation’s connection to it.

The full article has been moved from behind the paywall! gameinformer.com/feature/2026...

01.01.2026 17:00 πŸ‘ 300 πŸ” 77 πŸ’¬ 4 πŸ“Œ 8

Yeah I was interested in adding that Range view, too, haven't gotten to it yet.

31.12.2025 18:34 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Awesome, always happy to have people contribute!

What method are you using to display the uint values? Constant division? Min/Max normalization?

31.12.2025 03:04 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Post image Post image Post image Post image

I did a project with #Cesium to support #Unity Web. That just shipped this morning (cesium.com/blog/2025/12...)! To test it I've been making a #WebGPU flight sim game. Lots of fun being able to fly across the entire world, from a web page! And it's running at 144 FPS on my computer, in a browser!

03.12.2025 14:58 πŸ‘ 15 πŸ” 4 πŸ’¬ 1 πŸ“Œ 0

But it ended so nicely, revealing the Borderland mystery! I thought it was done. I'm excited about this, but I hope they don't stretch it too far.

04.09.2025 15:11 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Gamma Girls - Charades
Gamma Girls - Charades YouTube video by Gamma Girls

youtu.be/QuW-VI6tzNE

04.09.2025 02:18 πŸ‘ 1 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0

What's more fun is having a web engine that can run on desktop or mobile, and info about the hardware is limited/non-existent.

In general, we recommend Forward(+) for targeting the web. But of course people can do whatever they want, if it works it works.

25.08.2025 21:02 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

In the HypeHype case it seems Sebastian made some renderer decisions based on the typical type of content made for their engine. Relatively fixed post processing effects and geometry heavy levels, where depth pre-pass would have been needed anyways. I can see deferred being the better choice there.

25.08.2025 00:00 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

It could be that a lot of engines are aiming for "good enough" performance, and not necessarily "good" performance.

23.08.2025 19:26 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Preview
a man and a woman are sitting at a desk in a lab with a refrigerator in the background ALT: a man and a woman are sitting at a desk in a lab with a refrigerator in the background
26.06.2025 21:56 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Lucky!

25.04.2025 20:35 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Stratton Studios | Project Prismatic

It was 4 years ago that I started a little side project to add #WebGPU to #Unity. It started with a single triangle, with a hard-coded shader and no buffers. And now we have Project Prismatic from Stratton Studios! I'm really proud of how far we've come for web gaming! play.projectprismatic.com

14.03.2025 23:26 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

To add to what Brandon said, another potential win for WebGPU is the ability to create render pipeline objects at load time. With WebGL shaders often don't get compiled until the first draw call. Creating render pipeline objects up front can reduce runtime stalls, which is really important for XR.

04.03.2025 18:56 πŸ‘ 4 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

I believe @toji.dev has been working on WebXR + WebGPU, github.com/immersive-we..., and I believe you can try it out with an experimental flag in chrome://flags, webxr-webgpu-binding. Not a solution for a published project, but at least it's being worked on.

21.02.2025 16:17 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Video thumbnail

Making more progress on my #WebGPU #WGSL debugger project. Starting to integrate it into my WebGPU Inspector tool. Lots more to do, but I'm having fun working on it.

09.02.2025 06:51 πŸ‘ 4 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

It’s a cpu interpreter.

07.02.2025 02:33 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

I do know the code isn't correct WGSL, int should be i32, and the value of bar should have been converted to an int. Like I said, unpolished and incomplete.

07.02.2025 00:26 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Video thumbnail

I've been going down this side project road of wanting to make a #WGSL shader debugger to integrate into my #WebGPU Inspector tool (chromewebstore.google.com/detail/webgp...).

I'm making some progress! The "first triangle" of unpolished, incomplete WGSL debugging! The rest should be easy, right?

07.02.2025 00:03 πŸ‘ 7 πŸ” 2 πŸ’¬ 2 πŸ“Œ 0

There are no mistakes, just happy accidents πŸ™‚

05.02.2025 17:26 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

let shd = `
@group(0) @binding(0) var<storage, read_write> b: array<f32>;
@compute @workgroup_size(1)
fn foo(@builtin(global_invocation_id) id: vec3<u32>) {
b[id.x] = b[id.x] * 2.0;
}`;
let b = [1, 2, 6];
let bg = {0: {0: b}};
WgslExec(shd).dispatch("foo", 3, bg);
expect(b, [2, 4, 12]);

29.01.2025 05:25 πŸ‘ 3 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Working on a WebGPU project I wanted a shader debugger like PIX. A while back I wrote a WGSL parser (github.com/brendan-dunc...). Could I use that to implement a debugger? It wouldn't be native, and PIX is already kind of an option, but the idea was stuck in my head. I started down that rabbit hole.

29.01.2025 05:25 πŸ‘ 4 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0

The blog post is finally done. Give it read if you want to find out more about Real-Time Ocean Rendering in games! Let me know what you think πŸ˜„
gikster.dev/posts/Ocean-...

26.01.2025 13:57 πŸ‘ 64 πŸ” 14 πŸ’¬ 0 πŸ“Œ 0

My watch tells me "yay! you stood up! congratulations, you did it!"

Apparently it has low expectations of me.

24.01.2025 19:31 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

That sounds like my fun day today! Only in my fun day it crashes for both Vulkan and GLES and the device is a low end android with a European centric GPU that I can only access via a remote device farm, so I don’t even get the pleasure of holding it wrong!

24.01.2025 00:33 πŸ‘ 3 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Tips for WebXR in Unity - January 2025 Edition
Tips for WebXR in Unity - January 2025 Edition YouTube video by Oren De-Panther

Made a quick video with tips for WebXR Export in Unity.
www.youtube.com/watch?v=UG9i...
For those in game jams that have some questions

24.01.2025 00:22 πŸ‘ 2 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Video thumbnail

TinyBVH has been updated to 1.2.5 on main. New:
TLAS/BLAS construction and traversal, for single and double precision BVHs, and including a brand new GPU demo: See the attached real-time footage, captured at 1280x720 on an NVIDIA 2070 laptop GPU.
#RTXoff
github.com/jbikker/tiny...

16.01.2025 13:26 πŸ‘ 50 πŸ” 9 πŸ’¬ 3 πŸ“Œ 0
Preview
WebGPU Sponza Demo WebGPU Tech Demo Showcasing Various Rendering Techniques

Very cool WebGPU demo showing a variety of rendering techniques.

And, even better, the author wrote a whole article about it!

georgi-nikolov.com/blog/webgpu-...

08.01.2025 23:14 πŸ‘ 75 πŸ” 17 πŸ’¬ 2 πŸ“Œ 1