| |
ChristopherJam
Registered: Aug 2004 Posts: 1409 |
Demo effect sequencing
How does everyone script their effects these days? (e.g., if you're calling effect1 for 100 frames, then the init for effect2, then effect2 for the next 240 frames etc)
Ad hoc timers and flags, or some kind of scripting language compiled to an include, or? |
|
| |
Bitbreaker
Registered: Oct 2002 Posts: 508 |
You could use a global counter and refer to that by a table that holds the value to reach for each part. Then again when you do all alone, you can just forgo on that and let each part run as long as you need. Not the elegent version but keeps you away from wasting bytes for frameworkshits and something that is close to mental masturbation :-) |
| |
doynax Account closed
Registered: Oct 2004 Posts: 212 |
I'll be the first to admit that I don't know the first thing about demo coding, but I always assumed this type of synchronization was handled through meta-data in the music tracks. |
| |
Dane
Registered: May 2002 Posts: 423 |
For our demos with music sync we've used the global counter method. HCL and I also agree quite early on the tempo, so he can work with that when designing sinuses, fade-outs and similar.
Depending on what you want of course it could be useful to read data from the music as well.
For the spinning picture in Andropolis we even write data into the music - the sinus for the spinning picture is shifted and written into the filter register, to create that helicopter rotor-sound. :) |
| |
Oswald
Registered: Apr 2002 Posts: 5095 |
global frame counter here (16bit). each time the music is called the counter is incremented, no desynch is possible.
when I need to flash the screen fex. to drums, then I load up "it's rythm" c64 native tool, which helps to hunt down memory locations and values to look for.
I've no knowledge of play routine that helps with metadata, maybe some do tho. |
| |
Stone
Registered: Oct 2006 Posts: 172 |
In Offence, we usually agree beforehand to use a specific memory location, say $dc01, to signal the transition to another effect. Other times, we use Pantaloon. I highly recommend Pantaloon.
To be serious though: I generally use a global frame counter and state tables (a list of subroutines). |
| |
algorithm
Registered: May 2002 Posts: 705 |
I use the quick and dirty method via vice snapshots to time each routine and adjust counter when required, then to use the required value, assemble, crunch, link and on and on... |
| |
Fuzz
Registered: Nov 2004 Posts: 19 |
Some music editors have an "event" flag.. basically the composer can set that flag whenever they want and the coder can monitor it. As soon as the flag changes the next event can happen.
Cosine's EMS 7 music editor has this function. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11391 |
i am another global counter boy. one very handy thing about it (imho) is that you can very easily add the 100ms extra delay so you can edit sync in emu |
| |
lft
Registered: Jul 2007 Posts: 369 |
Why, Spindle of course. |
| |
Hate Bush
Registered: Jul 2002 Posts: 466 |
"Cosine's EMS 7 music editor has this function."
Goat Tracker has it as well. |
... 14 posts hidden. Click here to view all posts.... |
Previous - 1 | 2 | 3 - Next |