Ok so here's my situation:
In my current project I am using a fixed logic + graphics update of 60hz. Up until recently this has worked great and has given me the Amiga feel I've been looking for. However recently, I am throwing around a lot more sprites than I first thought, and while it's fine on my Core Duo machine, it is struggling and jumping down to 30hz on my aging G4 1Ghz, a machine I'd like to be around the minimum spec.
I am very far into my code at this point (it's almost finished). I have kept the rendering seperate from the sprites movement, which gives me some flexibility.
What I was thinking was simply to detect, using Millisecs(), the time elapsed since the last redraw, and if it is greater than 1/60 of a second to simply run the logic again before redrawing. Is this technique feasible? Or would I still have to implement delta timing? In which case, what is specifically involved... I know there are several topics about this, but I'd like a roundup, in simple terms, of your various strategies, and especially information from anyone who's had to add timing code at a late stage of development.
Any help would be greatly appreciated - my only alternative is to raise the system specs for my game, eliminating a large part of the market.
In my current project I am using a fixed logic + graphics update of 60hz. Up until recently this has worked great and has given me the Amiga feel I've been looking for. However recently, I am throwing around a lot more sprites than I first thought, and while it's fine on my Core Duo machine, it is struggling and jumping down to 30hz on my aging G4 1Ghz, a machine I'd like to be around the minimum spec.
I am very far into my code at this point (it's almost finished). I have kept the rendering seperate from the sprites movement, which gives me some flexibility.
What I was thinking was simply to detect, using Millisecs(), the time elapsed since the last redraw, and if it is greater than 1/60 of a second to simply run the logic again before redrawing. Is this technique feasible? Or would I still have to implement delta timing? In which case, what is specifically involved... I know there are several topics about this, but I'd like a roundup, in simple terms, of your various strategies, and especially information from anyone who's had to add timing code at a late stage of development.
Any help would be greatly appreciated - my only alternative is to raise the system specs for my game, eliminating a large part of the market.