[HN Gopher] Procedural 3D mesh generation in a 64kB intro
       ___________________________________________________________________
        
       Procedural 3D mesh generation in a 64kB intro
        
       Author : nbaksalyar
       Score  : 224 points
       Date   : 2023-03-28 02:22 UTC (20 hours ago)
        
 (HTM) web link (www.ctrl-alt-test.fr)
 (TXT) w3m dump (www.ctrl-alt-test.fr)
        
       | snthpy wrote:
       | Is there a link to the demo on YouTube?
        
         | msk-lywenn wrote:
         | There are several links to the cited demos. On the right of the
         | pouet page, you can find youtube links.
         | 
         | eg. https://www.pouet.net/prod.php?which=69654
         | https://www.pouet.net/prod.php?which=55737
        
         | Cockbrand wrote:
         | Yes, it's embedded in the linked first part of the article
         | series: http://www.ctrl-alt-test.fr/?p=463
        
         | bloqs wrote:
         | https://youtu.be/27PN1SsXbjM
        
       | 77pt77 wrote:
       | Always impressed by projects of this kind.
       | 
       | One of the most impressive to me is kkrieger
       | 
       | https://en.wikipedia.org/wiki/.kkrieger
        
         | romwell wrote:
         | The tooling they wrote to make this kind of thing is absolutely
         | insane too.
        
           | bmitc wrote:
           | Do you have any interesting links regarding that?
        
             | codetrotter wrote:
             | werkzeug3 source code https://github.com/farbrausch/fr_publ
             | ic/tree/master/werkkzeu...
             | 
             | Source release announcement can be seen on an old copy of
             | their main page https://web.archive.org/web/20210126032752/
             | http://farbrausch...
             | 
             | > Excerpt from the README:
             | 
             | > This is it. Pretty much a history of Farbrausch tools
             | 2001-2011. We've been meaning to release all this for ages,
             | in various forms, and always ended up not doing it because
             | "we'd just have to clean it up a bit first...".
             | 
             | > No more. This is _not_ cleaned up. This is the raw deal,
             | some from old hard drives, some fresh from various SVN
             | repositories. This is code written for a bunch of different
             | versions of Visual Studio. Some of it is really tricky to
             | compile, some really easy. There 's some nice clean stuff
             | there, other parts are just a complete mess.
             | 
             | > All of this is released either under a BSD license or put
             | in the public domain (stated per project). Not that you're
             | likely to want to use most of this code, but if you want
             | to, we see no reason to keep you.
             | 
             | And they also point out:
             | 
             | > There's still some stuff missing (most prominently
             | Werkkzeug 4) but we'll add this in the near future.
             | 
             | Here are some screenshots of werkzeug4 from some 2010
             | blogposts of theirs:
             | 
             | https://web.archive.org/web/20160327151958/http://farbrausc
             | h...
             | 
             | https://web.archive.org/web/20140815053110/http://www.farbr
             | a...
             | 
             | https://web.archive.org/web/20140815053104/http://www.farbr
             | a...
             | 
             | https://web.archive.org/web/20140815053104/http://www.farbr
             | a...
             | 
             | https://web.archive.org/web/20140815053100/http://www.farbr
             | a...
             | 
             | https://web.archive.org/web/20140815053058/http://www.farbr
             | a...
             | 
             | https://web.archive.org/web/20140815053113/http://www.farbr
             | a...
             | 
             | https://web.archive.org/web/20140815053113/http://www.farbr
             | a...
             | 
             | https://web.archive.org/web/20140815053113/http://www.farbr
             | a...
             | 
             | You can see more pictures, and accompanying texts in the
             | blog posts at https://web.archive.org/web/20140815050229/ht
             | tp://www.farbra...
             | 
             | Tangentially, from their FAQ:
             | 
             | > why does this website look so familiar?
             | 
             | > we want to thank the pouet team for allowing us to rip
             | their web design and graphics.
             | 
             | > shaping our groups homepage in the style of pouet is
             | surely confusing and a little bold, but we could not resist
             | the temptation
             | 
             | https://web.archive.org/web/20140815045911/http://www.farbr
             | a...
        
             | jariRG wrote:
             | https://fgiesen.wordpress.com/2012/04/08/metaprogramming-
             | for... But there's more:
             | https://fgiesen.wordpress.com/category/demoscene/
        
             | khm wrote:
             | https://github.com/farbrausch/fr_public is the best place
             | to start
        
         | kfrzcode wrote:
         | Holy, that brought me way back; direct line of nostalgia to my
         | veins please thank you
        
       | _the_inflator wrote:
       | If you are interested in learning demoscene stuff, Revision 2023
       | which is about to take place in roughly two weeks, features some
       | workshops in this regard also available as online streams.
        
         | rustybolt wrote:
         | Looks cool, any seminars/talks you recommend? Also, do you need
         | a ticket to "attend remotely"? I can't find the answer on the
         | site (it mentions a remote ticket but also that it's
         | specifically for participating in competitions and voting).
        
           | laurentlb wrote:
           | You don't need a ticket to watch the streams. A ticket is
           | needed if you want to take part in competitions (submit your
           | own production) or take part in the votes.
           | 
           | For seminars, I'd suggest to take a look at seminars from
           | previous years. They are on YouTube
           | (https://www.youtube.com/@revisionparty/playlists) and you
           | should be able to find something that matches your interest.
        
         | laurentlb wrote:
         | +1 to attending Revision 2023 (in Saarbrucken or online):
         | https://2023.revision-party.net/
         | 
         | I'm the author of the article, and I'll be at Revision. I'll
         | give a seminar on shader minification -- another topic not
         | discussed in the article.
        
           | codetrotter wrote:
           | Will there be open live streams for everyone to access this
           | year also? I watched Revision live during most of the event
           | and it was definitely a high-point for me. I want to go in
           | person also some time, but not this year.
        
             | laurentlb wrote:
             | Yes.
        
               | codetrotter wrote:
               | Awesome :D
        
       | kimburgess wrote:
       | On the topic of demo, honestly one of the communities I miss from
       | the twitter downfall is one tweet shaders. As someone without a
       | graphics background, almost everything on
       | https://nitter.net/search?q=%23tsubuyakiGLSL is straight up pure
       | magic.
        
         | laurentlb wrote:
         | You might enjoy checking https://www.shadertoy.com/. The
         | shaders there are likely to be longer than a tweet, but that
         | also means they're more readable and it can be a good way to
         | understand how they work.
        
           | pdpi wrote:
           | And, if we're suggesting Shadertoy, this video by one of its
           | creators is probably worth watching:
           | 
           | https://www.youtube.com/watch?v=8--5LwHRhjk
        
           | 77pt77 wrote:
           | They have an Android app.
           | 
           | https://www.shadertoy.com/view/4ldSRN
        
       | ar9av wrote:
       | Wow, I've bookmarked the article for future reference, this is
       | all very cool! I have been working in OpenGL recently on
       | procedural meshes, particularly with L-Systems. My method for
       | drawing branching structures was basically the same as the
       | "Extruding" action the article talks about. The rotating of the
       | splines around an axis is very clever! I am definitely going to
       | use that.
        
         | laurentlb wrote:
         | L-Systems are indeed a very good way to get started. We didn't
         | mention it in this article, but it could have been part of the
         | first section. Our demo with cubes intensively used L-systems
         | to organize and animate the cubes (it was briefly mentioned in
         | the making-of - https://www.ctrl-alt-test.fr/2010/behind-
         | incubation/).
        
       | unwind wrote:
       | Amazing.
       | 
       | The intro was released in 2017, so the title might need a tag.
       | Not sure about the article, couldn't easily find a date.
       | 
       | Does anyone know what the assumed rendering technology is? It's a
       | Windows executable, so I guess it can use any Windows APIs for
       | rendering and audio? Direct3D?
        
         | TonyTrapp wrote:
         | > The intro was released in 2017, so the title might need a
         | tag. Not sure about the article, couldn't easily find a date.
         | 
         | At the bottom of the article, it mentions that it was released
         | a few days ago.
        
         | richardjam73 wrote:
         | I found a github repository but it only goes A to F whereas in
         | the demo in the article is a H.
         | 
         | https://github.com/laurentlb/Ctrl-Alt-Test
         | 
         | Looking at F it appears to use OpenGL
        
         | laurentlb wrote:
         | The intro was released in 2017. We published the first part of
         | the making-of in 2018 (it was discussed on HackerNews here:
         | https://news.ycombinator.com/item?id=16842576). A few days ago,
         | I remembered I had an unpublished draft for meshes and decided
         | to finalize it.
         | 
         | We use OpenGL for rendering and the code is written in C++. We
         | published the source code of other intros of GitHub. For
         | example, this one should give you a good idea of how we do it
         | (although we modernized our engine since that):
         | https://github.com/laurentlb/Ctrl-Alt-Test/tree/master/F
         | 
         | For the audio, we used the synth 64klang -
         | https://github.com/hzdgopher/64klang
        
           | unwind wrote:
           | Great clarifications, thanks a lot!
        
       | andrewstuart wrote:
       | It doesn't say what the environment is.
       | 
       | 64K Commodore 64?
        
         | corysama wrote:
         | In the demoscene, 4K and 64K "demos" are common conventions.
         | They refer to programs that utilize built-in system libraries +
         | 4 kilobytes or 64 kilobytes of custom code with no additional
         | data.
        
           | whizzter wrote:
           | People more often talk about "4k intros" or "64k intros" to
           | be clear (intros being size-restriced demos), often retro-
           | people at events also but then people talk about the "C-64"
           | in those cases (and the technologies and capabilities used is
           | so different that it's hard to confuse the two in practice).
        
         | iamevn wrote:
         | Windows (presumably x86)
        
           | whizzter wrote:
           | The article yes, many people use linux,osX or BSD though so
           | some productions using them pop up from time to time even if
           | the majority is windows based. Some people do 64k's (or
           | 40k's) for old Amiga computers also but those have other
           | constraints so generated meshes aren't as popular.
        
         | laurentlb wrote:
         | It's for PC Windows (x86).
         | 
         | You need a somewhat recent machine to run it, but my 7 year old
         | laptop is doing fine.
         | 
         | Estimated required spec for the graphics: NVidia GTX 680
         | (recommended: GTX 970 or equivalent) with 1GB VRAM.
        
       | sylware wrote:
       | I wonder how to train a large neural net in order to "diffuse" 3D
       | mesh and animations.
        
         | egypturnash wrote:
         | If you wanted to use this for a 64k demo then your next trick
         | would be figuring out how to cram it into less than that - you
         | need room for all the code that actually _uses_ the models, as
         | well as the sound, sequencing, and whatnot.
        
       ___________________________________________________________________
       (page generated 2023-03-28 23:02 UTC)