• Advertisement
Sign in to follow this  
  • entries
    455
  • comments
    639
  • views
    422795

TLM : The project marches on

Sign in to follow this  

68 views

So, on tuesday I have to give a presentation which is a practise for my final year one, with this in mind I figured it would be a good idea to get my project ya know, working...

It was almost in a state of working when I left it a couple of weeks back infact, the major thing it was lacking was a driving input, however that was just a matter of writing a value to a texture and uploading it for the routine to use it, so that was pretty easy.

However, at this point a problem became apprent; it wasn't working.
This was midly annoying as I was sure I hooked everything up right, so a few hours of debugging followed where I discovered a few things;

1; It wasn't hooked up correctly [grin] I had the wrong output of one pass being fed into the next.. opps...

2; I'm sure I'd checked this before, but it seems that, for whatever reason, GLSL Program Objects have stopped tracking uniform values. I'm pretty sure it's not something I've done so I suspect a driver bug, but I don't have time to check, this was a real show stopper for a while.

3; turns out I'd forgotten to set a couple of 'step' uniforms which are used to sample from neightbouring texels, this was causing a massive feedback which was preventing the routine from working... opps [grin]

4; and finally, I didn't have my quads texture coords setup right with regards to the perspective matrix's settings. This meant that while I had information proigating it was only doing so along the X axis, the Y axis was hardly doing anything.

With these bugs squished the project finally worked :D

So, in order to use the output on tuesday I've caputured some videos and I'm going to make them available to you lucky people first of all [grin]

They can all be found here in OGM or Flash Video format. The OGM files are higher quality as the Flash is transcoded from them for another site; however in fullscreen the flash versions aren't that bad.

Single Point Scaled is the output I was aimming for. The images at the top show, in order, the information being used to build the height map, the two energy distrubtion textures I'm ping-ponging between and, finally, the height map it's self.

Dual Points No Scale was me wondering what would happen if I added another point. This comes at no performance cost, which is nice, as it's just a matter of setting 4 floats more in memory before uploading the texture. This one is cool as it shows what happens when the waves collide :D

Both of those videos are running on a 512*512 sized TLM, which is significantly bigger than the two previously tested amounts done in previous projects which I'm building upon.

This is where the last two videos come in;
Single Point scaled 40 by 40 is the size the orignal TLM was done at all on a CPU many years back.
Single Point scaled 100 by 100 matches the size of the TLM which was done by the person who did a project like this previously; he used it to build a normal map and then apply it to a mesh.

Oh, and all of these are running purely on the GPU, a X1900XT, with the CPU only doing the driving value updates [grin]

Final version should have real lighting, atm it's just fake coloured based on the height of the point from the Y = 0 plane.
Sign in to follow this  


1 Comment


Recommended Comments

We finally get to see it!

Looks neat. If it doesn't work out you could always make a music visualizer.

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Advertisement