Skip to content
0:00 / 0:00

#signeddistancefunctions#raymarching#demoscene

NVScene 2015 Session: How to Create Content with Signed Distance Functions (Johann Korndörfer)

NVScene

985 subscribers • 1 video on Hallway

YouTube
  • Recommended by 3 people: 3 on Hacker News.
  • Presented by Johann Kornd%%rfer

Advanced. Deep dive for people who know the field.

35K views11 years ago3 recommendations

Graphics and audioRenderingCreative coding

Johann Kornd%%rfer explains how to model complex 3D scenes procedurally using signed distance functions and raymarching techniques.

Good Signed Distance Functions define geometry by providing a semantic description that is very close to the essence of what the shape actually is - but that is almost completely lost when working with polygons or voxels, who solve the problem by throwing big amounts of data at it. Think vector graphics vs. pixels. As a result, SDFs can describe objects in an elegant way that makes variation, animation and last-minute changes trivial. Since building good SDFs is not straightforward, this talk will focus on patterns that help with the modelling process by making it more structured, such as two different families of operators, debugging views, and assorted best practices that have helped us build last year's "the timeless" and other 64k and 4k intros. A very short introduction will show what a Signed Distance Function is (spoiler: a piece of code), what properties it should have and how it is commonly rendered. We will then probably spend most of the time live-coding SDFs and looking at creating geometry using this technique. Recorded live at NVScene 2015. Web: nv.scene.org/ Twitter: twitter.com/nvscene Facebook: facebook.com/nvscene

Why it's here

3 people recommend this

What people say. Recommended as an excellent, foundational talk on using signed distance functions and raymarching to build procedural content for demoscene intros.

westoncbon Hacker News • Recommends

On “How a 64k intro is made”

…er is one of the main reasons to use raymarching/distance functions: building procedural content this way is faaar easier than trying to knit triangle meshes together. Additionally, if anyone wants to go a little further on the subject of building up sophisticated content by raymarching distance functions, this is an excellent talk on the subject: link to this video…

Impossibleon Hacker News • Recommends

On “Making WebGL Dance: How, Where, and What to Draw (2013)”

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 to this video ). 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 ( link ) and read…

teamhappyon Hacker News • Recommends

On “Planet Shadertoy”

Here's a presentation from one of the mercury guys explaining how to do that kind of thing: link to this video Also, elevated from RGBA should probably be mentioned since iq ( link ) is the guy behind Shadertoy. (Also because it's pretty.) link