Will Usher

@willgfx
336 Followers
165 Following
134 Posts
Our paper on elevation-aware flood extent mapping brings topologically guided segmentation to the web for crowdsourced labeling. ML flood mapping models trained on these maps w/ our correction framework get similar quality as those w/ solely expert labels! PDF: https://www.willusher.io/publications/flood-annotation-pvis25/
Will Usher

Our new paper, Approximate Puzzlepiece Compositing, applies OIT to data-parallel rendering to efficiently render overlapping, jigsaw puzzle-like data distributions, without repartitioning or expensive compositing. It'll presented at Pacific Vis 2025, check it out: https://www.willusher.io/publications/apc-pvis25/ !
Will Usher

Excited to share some excellent recent work with Landon Dyken and Sidharth Kumar: https://www.willusher.io/publications/prog-iso-ml-tvcg24/, we extend our progressive raycasting pipeline with an ML image completion step to stop raycasting early and complete the image with ML! It can still even run in your browser by deploying the model on ONNX's #WebGPU backend!
Will Usher

I wrote about using CMake, VSCode and wasm-tools to build/ship/debug a C++ #Wasm module that integrates into a larger frontend app: https://www.willusher.io/blog/build-ship-debug-wasm/ Set breakpoints, inspect variables, and reconstruct stack traces from prod! Tell me about cool stuff you're doing with Wasm!

The repo demo code is on Github: https://github.com/Twinklebear/build-ship-dbg-wasm , and also integrated in my #WebGPU #Wasm started template: https://github.com/Twinklebear/webgpu-cpp-wasm

Will Usher

Finally got back to my "0 to #glTF with #WebGPU" series, this post looks at adding basic material and texture support to get nicer looking renderings (and more interesting workloads to try and batch up later): https://www.willusher.io/graphics/2024/04/28/0-to-gltf-basic-materials code: https://github.com/Twinklebear/webgpu-0-to-gltf
From 0 to glTF with WebGPU: Basic Materials and Textures

I just published a blog about implementing marching cubes in #WebGPU and benchmarking it against a native #Vulkan implementation: https://www.willusher.io/graphics/2024/04/22/webgpu-marching-cubes , as a spoiler, the WebGPU version performs on par with the native Vulkan one!

Try out the WebGPU version yourself: https://www.willusher.io/webgpu-marching-cubes/ and the Vulkan one if you're interested: https://github.com/Twinklebear/vulkan-marching-cubes , I'd be curious to see what perf results people get!

GPU Compute in the Browser at the Speed of Native: WebGPU Marching Cubes

I started playing around with tinyusdz to start on a basic #WebGPU C++/ #WebAssembly #USDZ renderer: https://www.willusher.io/webgpu-cpp-usdz/ . You can load in USDZ files to try it, but it just does very simple geometry rendering for now. Code is here: https://github.com/Twinklebear/webgpu-cpp-usdz
WebGPU C++/Wasm USDZ Renderer

I wrote a basic #WebGPU C++/#WebAssembly #glTF renderer demo/sample, try it out https://www.willusher.io/webgpu-cpp-gltf/ ! It's written in C++ and uses Emscripten to compile to #Wasm to run in the browser. Code is on Github: https://github.com/Twinklebear/webgpu-cpp-gltf
WebGPU C++/Wasm glTF Renderer

Just put up the pre-print of our LDAV '23 paper on speculative, progressive implicit isosurface raycasting: https://www.willusher.io/publications/wgpu-prog-iso ! We can interactively render isosurfaces of volumes up to 2k^3 entirely in the browser on the GPU using #WebGPU ! Try out the live demo: https://www.willusher.io/webgpu-prog-iso/ and grab the code: https://github.com/Twinklebear/webgpu-prog-iso . Or take a look at the demo video: https://youtu.be/j8LsGMFEUQU
Speculative Progressive Raycasting for Memory Constrained Isosurface Visualization of Massive Volumes

I needed a quick way to make a slideshow w/ transitions from a bunch of images so I put together a script w/ ffmpeg-python that does scaling/padding/cross-fading to generate slideshows like this video. Check it out: https://github.com/Twinklebear/ffmpeg-slideshow-py
GitHub - Twinklebear/ffmpeg-slideshow-py: Easily make a slideshow with crossfade image transitions using FFMPEG

Easily make a slideshow with crossfade image transitions using FFMPEG - GitHub - Twinklebear/ffmpeg-slideshow-py: Easily make a slideshow with crossfade image transitions using FFMPEG

GitHub