Go to bottom

Blue Tuesday by xplsv [web]

///////// blue tuesday (final version) by xplsv ////////

// sole effects
// trace styling
// bauri music

// 2x1 extra offer: includes mac os x (powerpc) and win32 versions!


the why's and the how's

Bcnparty100 was quite near in the time and we hadn't finished the demo we had planned for it, so we decided to give an strategic turn and start one which was easier to finish, approximately one month before the party.

We didn't want to create a demo in the expected trace's style (a technodemo), so that's why we chose this nice song by Bauri, after listening to lots of songs.

And I (sole) also wanted to experiment with several ideas I had in mind with splines and 2d deformation. Of course all of these ideas were excessive for the available time and we found a pair of stupid bugs in the code which stole us precious time and then we released a very unfinished prod in the party.

I even submitted the prod with an absolutely wrong name. I called it "blue monday" (for some strange reason I remember entering a demo previous year called "Broken minds" which was abbreviated "bm", and the new order's "Blue monday" song also came to my mind), an absolute last minute disaster.

Some weeks after I managed to fix the first -and worst- bug, the one which prevented nvidia cards to show certain elements in the demo. Thanks to ithaqua/stravaganza and utopian/rgba for their help!!

I also followed Gargaj's/conspiracy hints for fixing more bugs with the visualization of the tapes, which weren't showed appropiately (because the depth buffer which was unappropiately being written)

Then we ran out of ideas!

Months after I bought an apple powerbook and decided to start coding with it. First thing I managed to do was a working version of this demo running under mac os x. Next big thing was to finish the demo and be able to compile it under pc too.

Nothing of it could have been possible without the kind help of Zaelsius/Lemon Team. He suggested me to use GLfw, which is a crossplatform library for several opengl tasks, as opening windows, changing screen modes, loading simple textures, etc.

And at last, a year and some months after bcnparty100, we managed to finish this demo!

[might be] interesting facts

* First scene: spiral with texts

The spiral center height changes accordingly to the music volume, and then propagates to the neighbouring parts, losing 'energy' on each step.
This was funny to do although a bit complicated to adjust when I changed from BASS music library to Fmod (because at that moment fmod was the only available cross platform option), as each library had a different sound volume.

Also the textures with the credits are being deformed with a Gauss bell function. I wanted to follow a known function when doing the deformation so I thought it could look interesting to use the normal function on it (and then i would apply the knowledge i gathered on one of my uni subjects). The deformation values are calculated when loading the demo and then are applied with a ratio, depending on the power of the music signal (louder = more distorted).

* Second scene: three groups of tapes, each one with one colour

In the first version all the tapes appeared at the same time in the same area. This looked a bit messy when one saw the demo several times. So I defined the areas where each tape could appear, so they wouldn't overlap each other so exaggeratedly.

Apart from that, the position of the points which form each tape is absolutely random, given the seed I gave (because after several tries it looked nice enough). This has a cool feature: the demo looks different in mac and pc, because the random number generator is different. (I didn't use a custom random number generator, just the system's one).

* Third scene: camera follows the path of a tape with some satellite tapes

This scene is new -it didn't appear on the first version-. I somehow got inspired by "the Aviator" movie: you need slow motion elements to show that something is moving really fast. So there's that group of a white tape with satellite ones which quickly move around the 3d space, and there are also lots of small black tapes which do not move so quickly.

Again all the positions are random, excepting the satellite ones which are forced to be "near" the main one (but also deviating randomly).

* Fourth scene: a tape mess with some dashed lines, all of them disappearing.

This scene was longer in the party version. And boring. So that's why we decided to shorten it.

* Fifth and last scene: three tapes following the same path.

In fact it would be more appropiately defined as "a tape" which follows a random path, and two tapes which follow that tape with a bit of delay.
The speed of the tape is accelerated a bit with each snare hit, and it disappears after a certain length.

hardware requirements

This has been developed on a powerbook g4 with 1.67Ghz and 512 mb ram, ati mobility radeon 9700. Compiled/developed for pc on a pentium IV 2.4GHz, 512 mb ram, ati mobility radeon 9000.

Also tested on madgoblin's ibook (with around 867Mhz processor and ati mobility 9000 if i am not wrong) and worked decently.

So it's pretty average, it doesn't use pixel or vertex shaders or any of that stuff. I wish I knew how to use them, really! But I hadn't had time for it yet...

thanks thanks thanks!

I'd like to thank all the people which helped me to fix the errors due to my [lack of] coding skills, as I said: yero and bp (in the party place), ithaqua, utopian, gargaj and maybe someone else I forgot.

And madgoblin which also tested this without knowing it contained a secret backdoor installer which would allow me to access his files and more valued secrets (nah! just joking XD).

Superthanks to all the tlotb guys: Astharoth, Liso, Hgh and Corsario. I don't think I would have even started to code without your help and technical chats about C, C++, 3D and many more topics! :-)

Thanks to bauri too for allowing us to use his song.

And finally thanks to all the people which voted for us in the party. I don't think we would have finished the demo otherwise :D

and if you still want more...

xplsv | http://www.xplsv.com
bauri | http://hem.passagen.se/lyxmumrik/

Go to top