Settings

Theme

An Introduction to ASCII Ray Marching

ch-st.de

119 points by c-st 5 years ago · 9 comments

Reader

pdkl95 5 years ago

I ported it to aalib. Instead of a 7 character linear ramp, the aalib version renders to a larger framebuffer, dithers it down to the closes matching characters.

https://gist.github.com/pdkl95/094cc065ab0215e121da29a63e6c1...

        ajWm##Xs,
      aWWWWBm##S2s,
     jQQWQWWmm#XXov,
    _QQQQWWBBm#ZX2n(
    ]QQQWWWBmm#XXovl
    4WWWWWmmm#XX2ovi`
    ]mBBmmmm#XXXonl|
     ###m##ZZXSonI|`
     -XZZZXXXonvI|~
       "Xo2onvvi+`
         -"^^~~
tobr 5 years ago

Very cool, great visual explanations of how raymarching works.

PSA, Germans writing in English: upside down quotes look as out of place as Spanish question marks! They read like two strange misplaced commas to the rest of us.

samus 5 years ago

The first paragraphs contain the most concise explanation of the differences between rasterization and ray tracing I ever encountered!

podiki 5 years ago

Very cool! Reminds me of the old days of ASCII art, I think I last saw it mostly on warez readmes (some really impressive ones)

Edit: I love the combo of ray marching and fonts too [0], as previously seen on HN [1]

[0] https://www.rykap.com/2020/09/23/distance-fields/

[1] https://news.ycombinator.com/item?id=24569542

smcameron 5 years ago

Reminds me of two other things:

* https://www.a1k0n.net/2011/07/20/donut-math.html * https://www.iquilezles.org/www/articles/distfunctions/distfu...

wcarss 5 years ago

Great post! This motivated more learning for me about ray-tracing and ray-marching than I've ever bothered with, despite over a decade of vague interest.

If anyone wants a copy, I ported the diffuse shader code to python 2 and 3 here: https://gist.github.com/wcarss/a6ff897fb9c50ac34875dbd5d8599...

philzook 5 years ago

I love it. It's brilliant to side step the whole issue of how to get access to pixels on your screen or in a png, which in some instances is an awful afternoon of frustration. It's almost always easy to get printing going.

nickdothutton 5 years ago

Nice work. Reminds me of some of the work of Pete Cooke of Tau Ceti and Academy fame on 8-bit platforms.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection