I wouldn’t call this an entry

Posted by
May 24th, 2009 1:18 pm

I mainly felt like goofing around this weekend, so I did. Had a vague idea for a game where you’d fly around in a cave-like world generated from audio data, but I “needed” implicit surface rendering for that, so I set out to experiment with the tech. I wasn’t too surprised to find that I didn’t have any desire to make game code after the rendering was working… I just played with different visual effects instead.

Here’s a collage of notable screenshots produced:

The first raw version ran at an abysmal 1 fps or so at 640×480, but after adding some biliearly filtered variable resolution rendering based on image-space local contrast and threading it to use dual cores, I managed to kick it up to some 20-25 fps for “friendly” scenes (meaning not too much visible edge detail).

Most of the screenshots are from “bruteforce” renders though, showing no optimization artifacts. The optimized version has a mild muddy/compressed look. Putting all of this in a shader would result in much simpler code and greater performance with no visual degradation… I might have to try it some day.

You can download the (messy) source and a few builds here: drpetter-minild-ds.zip

I also made a quick tune based on one of the drumloops given: destroyloop.mp3

Overall it was a fun weekend. Sorry for not producing a game…


5 Responses to “I wouldn’t call this an entry”

  1. 0rel says:

    wow! that’s beautiful! 8D

  2. muku says:

    Yeah, from the screenshots, that looks amazing. So is this marching cubes or somesuch thing?

  3. DrPetter says:

    muku: “somesuch” I suppose. Raymarching them calls it. Basically step back and forth along each camera ray, evaluating points to see if they’re inside or outside your crazy mathematical shape. Binary search is king for getting good precision with relatively few iterations.

  4. muku says:

    Interesting, thanks :)

  5. Dock says:

    This is awesome, it’s like “Dr Petter’s Cervical Exploration”. Very exciting! :)

Leave a Reply

You must be logged in to post a comment.

[cache: storing page]