Sierra AGI Interpreter Update November 2024
Posted: Sun Nov 03, 2024 5:38 am
This post is to provide an update on the Sierra AGI Interpreter I’ve been working on, which I’ve previously shared.
The focus over the last three months has been on achieving a 3D effect. If you’re unfamiliar with these games, they were marketed as “3D” back in the day, though they are what we would now call pseudo-3D. In simple terms, this means that the character can move in front of or behind background objects based on the sprite’s y-position. Later Sierra games using the SCI engine included perspective, but this feature was never supported in AGI games.
For those interested in the technical aspects, here’s a link: http://agiwiki.sierrahelp.com/index.php ... ty_Screens
I’ve also prepared an animated GIF that illustrates this concept better than words. (Note the dithering effect is just an artifact of the animated gif tool) Currently, I am handling this 3D effect in the IRQ handler. This works in most cases, but there are occasional IRQ overruns with large split sprites, such as the credits in certain introduction sequences.
My major goals for the next three months are:
- To implement a 3D effect backbuffer to reduce the risk of IRQ overruns.
- To add sprite garbage collection to free up VRAM for the buffer. The introductions contain many large, short-lived sprites (e.g., credits in the King’s Quest III intro), so garbage collection could effectively reclaim VRAM.
- To implement a "wander" feature, so that the chickens in King’s Quest III will roam around their cage without leaving, and the crocodiles in the moats will move around naturally.
The focus over the last three months has been on achieving a 3D effect. If you’re unfamiliar with these games, they were marketed as “3D” back in the day, though they are what we would now call pseudo-3D. In simple terms, this means that the character can move in front of or behind background objects based on the sprite’s y-position. Later Sierra games using the SCI engine included perspective, but this feature was never supported in AGI games.
For those interested in the technical aspects, here’s a link: http://agiwiki.sierrahelp.com/index.php ... ty_Screens
I’ve also prepared an animated GIF that illustrates this concept better than words. (Note the dithering effect is just an artifact of the animated gif tool) Currently, I am handling this 3D effect in the IRQ handler. This works in most cases, but there are occasional IRQ overruns with large split sprites, such as the credits in certain introduction sequences.
My major goals for the next three months are:
- To implement a 3D effect backbuffer to reduce the risk of IRQ overruns.
- To add sprite garbage collection to free up VRAM for the buffer. The introductions contain many large, short-lived sprites (e.g., credits in the King’s Quest III intro), so garbage collection could effectively reclaim VRAM.
- To implement a "wander" feature, so that the chickens in King’s Quest III will roam around their cage without leaving, and the crocodiles in the moats will move around naturally.