
Alex Evans at Umbra Ignite 2015: Learning From Failure
About this video
Media Molecule's Alex Evans recounts the journey, including the failures, of finding the Dreams engine, based on his Siggraph 2015 talk. It covers the signed-distance-field and splat-based rendering approach and the artistic goals behind it.
Why it appears in the archive
HN calls it an inspirational must-see on SDF rendering and a favorite tech talk for graphics programmers.
AI-generated summary and labels from the source dataset; verify important details against the video. Source & credits.
From the Hacker News discussion
(dev behind sculptgl, but I didn't make the HN story) Nice project! sculptgl is based on polygons (tris/quads only, and using webgl for rendering). As for the other project it was just as a quick and dirty experiments :). [LINK] [LINK] On Unity there is Clayxel and more recently Mudbun, both based on implicit surfaces. And obviously, the Dreams presentation which is an inspirational must see [VIDEO]
Read original comment ↗Hg ( [LINK] ) is a great resource. I'm not a fan of the non-commercial license. The intro on the top of the site has a lot of great links to resources outside of iq, including the pouet.net thread on Raymarching, John Hart's original sphere tracing paper, and enhanced sphere tracing, as well as the author's original talk from NVScene 2015 ( [LINK] ). Definitely check out all of these resources. If you're more interested in signed distance fields outside of the shadertoy\demo scene use cases there are a lot of interesting resources out there written by people using them in more complex contexts. Alex Evans (Media Molecule) Dreams talk is awesome. You can see the talk here ( [VIDEO] ) and read the slides here ( [LINK] ). [LINK] covers how to generate meshes. With modern hardware with ballot\shuffle there are probably more efficient ways to do this in a compute shader now, but the talk is still good. Epic games siggraph presentation ( [LINK] ) is a good explanation of how UE4 uses signed distance fields for ambient occlusion and shadows. Q-Games presentation ( [LINK] ) on how the now defunct Game Tomorrow Children uses signed distance fields for dynamic world space reflections. Voxel Quest ( [LINK] ), a "failed" kickstarter project, has some good write ups of how he's built the engine over the years as well as source code. Unbound.io gave a talk at GTC 2017 ( [LINK] ) that goes into some detail on their signed distance field VR sculpting app. There are of course more resources t
Read original comment ↗Alex Evan's talk on developing the renderer for Dreams: He's given several versions of this talk (including the Advancements in Real-time Rendering course at Siggraph), but here's one available online: [VIDEO]
Read original comment ↗There's so much misunderstanding and wrong terminology surrounding voxels. Voxels are a way to store world data in memory, basically 3d bitmaps. They won't give you infinite details, just the opposite - they can only give you single '3d resolution'. To actually get infinite details, you have to switch underlining world representation from static data (meshes, voxels) to mathematical (perlin noise, fractals). Here you make an important trade-off - mathematical representation is harder to make changes to, because each modification would increase complexity of math formula used to describe the world. You can see lot of deformations in voxel demos but they are global transformations (scale, shear). Minecraft uses hybrid approach. Inital world is described by math (called world generation) but it's then serialized (sampled) as data with specific voxel size, that you can easily manipulate. Edit: another, IMO far more impressive approach is Media Molecules' upcoming Dreams software that uses constructive solid geometry and sparse distance fields to describe and manipulate 3d geometry. Here's a detailed tech talk: [VIDEO]
Read original comment ↗Another way to do blobby geometry are signed distance fields (SDFs). You define different geometry solids by specifying function which returns for any point in space how far that point is from the surface of the solid. [1] If they are defined this way, it is easy to smoothly interpolate between two or more solids. When rendering to screen, similar techniques have to be used to convert to screen geometry in realtime. The latest technical marvel that uses this tech is Media Molecules Dreams. With SDFs they made rich modelling tools (constructive solid geometry) that produce geometry for physics and painting-style renderer, all running on PS4. The Learning From Failure talk [2] was quite inspiring on lengths they went to achieve their artistic goals. [1] [LINK] [2] [VIDEO]
Read original comment ↗I was actually looking for some resources on this but couldn't find much. Do you have any pointers? I saw Alex Evan's excellent talk from 5 years ago [1], which sparked my interest. [1] [VIDEO]
Read original comment ↗The Dreams team made a nice talk at SIGGRAPH 2015, if you want to check it out: * Slides (good notes): [LINK] * video: [VIDEO]
Read original comment ↗Does anyone have an impression of how it compares to Alex Evan's SDF engine[0] used in Dreams? Is it primarily a space compression? I've been looking out for anything outside of media molecule that can come close to it's detail-representation and performance A big part of the secret sauce there seems to be what he called a Compute Shader of Doom used to optimize the brush strokes into the SDF - I'd love to know that shader works! [0] [VIDEO]
Read original comment ↗