Booterror1973 Posted Thursday at 05:09 AM Share Posted Thursday at 05:09 AM Is it possible to do tilemapping with the blitter on VBXE? If yes, what is the easiest implementation? Another question, is it possible to use the blitter for "sprite" rotation? So is something like 3 times shear method possible? Quote Link to comment Share on other sites More sharing options...
phaeron Posted Thursday at 05:37 AM Share Posted Thursday at 05:37 AM Tilemaps can be emulated in VBXE with a large blit list doing one blit per tile. It takes a large fraction of the available blitter bandwidth per frame. 3-shear rotation is also possible with the blitter, but it looks pretty bad compared to standard fixed point mapping. You have to either compute the shear offsets on the CPU or use additional blits to do so. 1 Quote Link to comment Share on other sites More sharing options...
+Sheddy Posted Thursday at 10:00 AM Share Posted Thursday at 10:00 AM Had no idea rotation could be done with 3 shears. Very interesting! https://cohost.org/tomforsyth/post/891823-rotation-with-three Quote Link to comment Share on other sites More sharing options...
Rybags Posted Thursday at 12:06 PM Share Posted Thursday at 12:06 PM Blitter has it's limitations but if you think outside the box a bit you can achieve some fairly powerful stuff. You can even use blits to costruct BCBs for subsequent blits. When I did the Quadrillion translation from Plus/4 to VBXE my initial intention was to rewrite using native Atari graphics then just use VBXE to enhance the colours. It was all going great until my versioning (or lack of) meant that I introdcuced some nasty bugs that rendered the whole project useless so I had to scrap hours of work and start over again. In the end I just rendered the graphics as the Plus/4 would present them (ie much like the C64 does it's bitmap) then used blits to translate the bitmaps to suitable linear format that Antic uses. Then another set of blits to bring over the colour attributes for VBXE to handle. Quote Link to comment Share on other sites More sharing options...
woj Posted Thursday at 12:27 PM Share Posted Thursday at 12:27 PM I am nowhere near being proficient in graphics programming, but enough so that I was able to write a VBXE game. For tiling my suggestion would be to use Antic stuff and recolor it with VBXE. For sprites - consider that VBXE has crap loads of memory, what I did is pre-computing all sprite shapes / frames during loading and start up and then just blit them based on an address lookup table. All animations in Popeye are done this way, almost all characters are stored in full sprite multiple frames (apart from Olive who was an exercise in doing it in halves 😀). Effectively the game uses practically all of the VBXE's 512K, but that's what it is for 😉 Quote Link to comment Share on other sites More sharing options...
Rybags Posted Thursday at 01:25 PM Share Posted Thursday at 01:25 PM Good idea - the one annoyance though is we still get stuck with the 128 character limit. But there's also the handy attributes where we can select hires or multicolour per cell as well as having seperate bg/fg colours for hires per cell. And also the fact that attribute cells aren't limited to 8x8 - can be made bigger if required. Quote Link to comment Share on other sites More sharing options...
woj Posted Thursday at 01:32 PM Share Posted Thursday at 01:32 PM 4 minutes ago, Rybags said: And also the fact that attribute cells aren't limited to 8x8 - can be made bigger if required. Or smaller The backdrop in Popeye actually needs 8x4 in some places. Quote Link to comment Share on other sites More sharing options...
Rybags Posted Thursday at 01:52 PM Share Posted Thursday at 01:52 PM Yes - the sort of disappointing thing is you can't go smaller horizontally - early on I had wanted to use that to get a cheap and easy extra independent playfield. Quote Link to comment Share on other sites More sharing options...
tebe Posted Thursday at 03:03 PM Share Posted Thursday at 03:03 PM Solo, Laoo (NG) have plans for new core for VBXE with on-the-fly sprite decompression, but it's a song of the future 1 Quote Link to comment Share on other sites More sharing options...
vitoco Posted 22 hours ago Share Posted 22 hours ago On 9/26/2024 at 7:00 AM, Sheddy said: Had no idea rotation could be done with 3 shears. Very interesting! https://cohost.org/tomforsyth/post/891823-rotation-with-three Neither me... I had to try it to fully understand the method. The result is an Atari BASIC program to show how the pixels move when building a frame. I'll post this in another thread if there is some interest. 2 Quote Link to comment Share on other sites More sharing options...
Booterror1973 Posted 19 hours ago Author Share Posted 19 hours ago 2 hours ago, vitoco said: Neither me... I had to try it to fully understand the method. The result is an Atari BASIC program to show how the pixels move when building a frame. I'll post this in another thread if there is some interest. I am very interested in your program Quote Link to comment Share on other sites More sharing options...
+Stephen Posted 9 hours ago Share Posted 9 hours ago On 9/26/2024 at 8:06 AM, Rybags said: Blitter has it's limitations but if you think outside the box a bit you can achieve some fairly powerful stuff. You can even use blits to costruct BCBs for subsequent blits. Can you elaborate on this, perhaps show an example or point me to something to read up on how this would be possible? Quote Link to comment Share on other sites More sharing options...
+Stephen Posted 9 hours ago Share Posted 9 hours ago 9 hours ago, Booterror1973 said: 12 hours ago, vitoco said: Neither me... I had to try it to fully understand the method. The result is an Atari BASIC program to show how the pixels move when building a frame. I'll post this in another thread if there is some interest. I am very interested in your program I'd also be interested in seeing that. I assume if using the VBXE blitter to do this, the shear would be performed via the x and y-step parameters being greater than one? As with scaling, the steps are integer only, does that provide the required precision for such a task? Quote Link to comment Share on other sites More sharing options...
vitoco Posted 9 hours ago Share Posted 9 hours ago 10 hours ago, Booterror1973 said: I am very interested in your program 12 minutes ago, Stephen said: I'd also be interested in seeing that. I posted it in another thread... No VBXE though, just Atari BASIC code in a plain computer. 2 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.