Author Topic: The Cave  (Read 1755 times)

0 Members and 1 Guest are viewing this topic.

Offline fugue

  • ZX 81
  • *
  • Posts: 6
  • Karma: 4
    • View Profile
    • Create Universes
The Cave
« on: November 22, 2011 »
The Cave is a production I presented at Syntax 2011.

It uses the same "Demo Construction Kit" I made for wtf-atabimp, with the addition of a simple voxel engine and a clean up of the mp3 playing code. All voxel operations (such as "adding" and "carving out" voxels) are done in constant time, with the "housekeeping" of the voxel render list occuring at render time.

This demo is built on a framework that allows the entire demo to be driven by lua. The lua files are included, and can be modified freely. There is also a console available from the demo itself, providing a "live coding" environment which permits complete modification of the demo while it is running. There is an unmarked pane splitter at the bottom of the window which can be moved to reveal the console. The console now maintains a persistent session, so the command history is maintained between runs.

Thanks to cTrix for his wizardry in creating the awesome music for the demo!

Download

Enjoy!

Offline Kirl

  • Senior Member
  • Pentium
  • ********
  • Posts: 1200
  • Karma: 230
    • View Profile
    • Homepage
Re: The Cave
« Reply #1 on: November 22, 2011 »
Fantastic demo and it runs really smooth on my laptop!

Excellent work!  :clap:
www.kirl.nl
Challenge Trophies Won:

Offline fugue

  • ZX 81
  • *
  • Posts: 6
  • Karma: 4
    • View Profile
    • Create Universes
Re: The Cave
« Reply #2 on: November 22, 2011 »
Thank you! :D

I haven't bought new hardware in years, so I code and run my demos on a laptop that uses nothing fancier than an intel graphics chipset. It seems to be more than enough for the sorts of universes I like to create.

Offline benny!

  • Senior Member
  • DBF Aficionado
  • ********
  • Posts: 4380
  • Karma: 228
  • in this place forever!
    • View Profile
    • bennyschuetz.com - mycroBlog
Re: The Cave
« Reply #3 on: November 22, 2011 »
Hey Fugue,

that's a cool minecraft-like demo. Runs really smooth on my crappy laptop here, too! Good work.

Reading about the system behind it makes it even more cooler.

Keep up the good work!

Best,
benny!
[ mycroBLOG - POUET :: whatever keeps us longing - for another breath of air - is getting rare ]

Challenge Trophies Won:

Offline LittleWhite

  • Senior Member
  • Amiga 1200
  • ********
  • Posts: 418
  • Karma: 31
  • It's me!
    • View Profile
Re: The Cave
« Reply #4 on: November 22, 2011 »
I saw your demo yesterday.

(Friends (who does not know the demoscene) said: "It making the eyes crying and bleeding")
So what I have to say, because it's not so false, it to try to generate colours in a different (why not in a Minecraft style, with texture and minerals veins))

Otherwise the demo is impressive and I should try to use your console.
Do you plan to port it on Linux ?

Did you use spatial partionning to render only the quads needed ? (with frustrum culling). I guess you are forced too do so
The demoscene will never die, never!

Offline fugue

  • ZX 81
  • *
  • Posts: 6
  • Karma: 4
    • View Profile
    • Create Universes
Re: The Cave
« Reply #5 on: November 22, 2011 »
I don't want to defend the colour scheme. It was a colour scheme I put in initially to ensure that adjacent cubes have contrasting colours.

The engine only renders the quads that are "exposed to the air". When a cube is "carved out", it is marked as deleted and adjacent cubes are added to the render list (if they haven't been marked as already in the list) and the appropriate quad of these cubes is switched on. At render time, as the render list is traversed, cubes marked as deleted are routed around to drop them from the list.

There might be some fun getting the colours to do funky things in the cave, or having some surprising subterranean features uncovered as the cave is dug.

I wrote it using the Qt API, so it should readily port to linux. I will post teh codez shortly.

Offline fugue

  • ZX 81
  • *
  • Posts: 6
  • Karma: 4
    • View Profile
    • Create Universes
Re: The Cave
« Reply #6 on: November 22, 2011 »
benny!: Your comment made my day. Thanks!!

Offline LittleWhite

  • Senior Member
  • Amiga 1200
  • ********
  • Posts: 418
  • Karma: 31
  • It's me!
    • View Profile
Re: The Cave
« Reply #7 on: November 22, 2011 »
Oh nice to hear that the code is made using Qt :)
If you don't want to change the colours, just add lighting, it does a lot :D
(if it is possible in the console, I will try ... but it also means to avoid the normals)
The demoscene will never die, never!

Offline benny!

  • Senior Member
  • DBF Aficionado
  • ********
  • Posts: 4380
  • Karma: 228
  • in this place forever!
    • View Profile
    • bennyschuetz.com - mycroBlog
Re: The Cave
« Reply #8 on: November 22, 2011 »
benny!: Your comment made my day. Thanks!!

hehe ... you're welcome ;-)
[ mycroBLOG - POUET :: whatever keeps us longing - for another breath of air - is getting rare ]

Challenge Trophies Won:

Offline Shockwave

  • good/evil
  • Founder Member
  • DBF Aficionado
  • ********
  • Posts: 17378
  • Karma: 497
  • evil/good
    • View Profile
    • My Homepage
Re: The Cave
« Reply #9 on: November 22, 2011 »
Hi Fugue,

I found it really interesting to see your cave demo and how it follows on from your introductory post.  Thanks a lot for posting it, the colours are definitely Dutch but it runs really nicely and I think that is the point of this - to demonstrate what your engine can do.

Have some good karma and I'll look forward to seeing what else you can make from it :)
Shockwave ^ Codigos
Challenge Trophies Won:

Offline Raizor

  • Founder Member
  • Pentium
  • ********
  • Posts: 1150
  • Karma: 174
    • View Profile
    • Raizor's Dev Blog
Re: The Cave
« Reply #10 on: November 22, 2011 »
Interesting demo Fugue. I checked some of your other stuff on Pouet out too, very nice :)
raizor

Challenge Trophies Won: