You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Original Elite has no real concept of frame limiting, the main loop just goes as fast as it can and the physics/A.I. and rendering all run one after the other.
Elite 128 by Uz has an imperfect frame-limiter, but given that we have a complete disassembly with the freedom to modifying code drastically, we should look at what would be an ideal frame strategy.
My own vague opinion is that the physics & A.I. should be run on interrupts (probably throttled to 15fps), and have the 'main loop' running the screen rendering permanently. This should allow the rendering speed to scale smoothly and to extremes. i.e 20 MHz SuperCPU. A potential flaw with this idea is the confusion of a different set of lines to draw being generated whilst the renderer is already half-way through the set. A line buffer would be needed and this may increase memory demand considerably.
The text was updated successfully, but these errors were encountered:
Actually, if we can run at 50/60fps (e.g. with SuperCPU or emulator turbo), then we should be aiming to run the logic at 50/60fps and scale the logic according to frames missed; but, this does raise the question of what should / shouldn't be scaled to full-speed -- A.I. decisions for example should probably be kept to 15fps to retain the feel of the original game.
A note that Uz's Elite 128 2.0 has been released https://csdb.dk/release/?id=185931 and this adds support for various accelerators and a frame-rate limit of 12.5fps (PAL) / 15fps (NTSC)
Original Elite has no real concept of frame limiting, the main loop just goes as fast as it can and the physics/A.I. and rendering all run one after the other.
Elite 128 by Uz has an imperfect frame-limiter, but given that we have a complete disassembly with the freedom to modifying code drastically, we should look at what would be an ideal frame strategy.
My own vague opinion is that the physics & A.I. should be run on interrupts (probably throttled to 15fps), and have the 'main loop' running the screen rendering permanently. This should allow the rendering speed to scale smoothly and to extremes. i.e 20 MHz SuperCPU. A potential flaw with this idea is the confusion of a different set of lines to draw being generated whilst the renderer is already half-way through the set. A line buffer would be needed and this may increase memory demand considerably.
The text was updated successfully, but these errors were encountered: