oh man the SNES stores its graphics data in fucking bitplanes?
-
no idea how to efficiently convert 8x8 linear bytes into 8x8 planar bytes tbh
@eniko Amiga ?
-
@eniko Amiga ?
-
@clarfonthey pretty sure that'd be worse because then for every pixel you want to store you'd need a bunch of reads, ORs, and writes
@eniko yeah, it's garbage either way
not sure how easy it'd be to check the code for popular SNES emulators and see how they do it
-
@eniko It has bitplane graphics ? .. I did not know !
-
oh man the SNES stores its graphics data in fucking bitplanes?
no wonder nobody wants to homebrew that shit
@eniko Everything was using bitplanes, this is why the VGA 0x13 mode was such a revolution.
-
@eniko Amiga ?
@gilesgoat @eniko There was some fun stuff you could do on the Amiga with its bitplanes, like enable extra half bright mode (you set 32 colours in the palette, then it creates 32 more colours half as bright as the first 32). Then render the silhouette of a sprite into the 6th bitplane with an offset from the real sprite and it gives you a shadow cast on the background.
But yeah, very annoying if you want to do per pixel rendering.
-
@gilesgoat @eniko There was some fun stuff you could do on the Amiga with its bitplanes, like enable extra half bright mode (you set 32 colours in the palette, then it creates 32 more colours half as bright as the first 32). Then render the silhouette of a sprite into the 6th bitplane with an offset from the real sprite and it gives you a shadow cast on the background.
But yeah, very annoying if you want to do per pixel rendering.
@kojack @eniko I can't remember EXACTLY how it was, but I think the reason of "bitplane vs planar" was to conserve memory/had to do with ( slow ? ) memory access time used on the Amiga. It was an HW limit reason,I know, like the ZX Spectrum has that particular mem patter owing to limitations in the ram access times and limited circuits ( cells ) on the ULA ( yes I have 'The ZX ULA book' ) .
-
oh man the SNES stores its graphics data in fucking bitplanes?
no wonder nobody wants to homebrew that shit
@eniko this is why I was happy with mode 13h before gl/dx 😂
-
@kojack @eniko I can't remember EXACTLY how it was, but I think the reason of "bitplane vs planar" was to conserve memory/had to do with ( slow ? ) memory access time used on the Amiga. It was an HW limit reason,I know, like the ZX Spectrum has that particular mem patter owing to limitations in the ram access times and limited circuits ( cells ) on the ULA ( yes I have 'The ZX ULA book' ) .
@gilesgoat @eniko Planar is also convenient for some bit depths. Having 3 or 5 bits per pixel is annoying with bitmaps, but easy with planes.
-
undefined oblomov@sociale.network shared this topic
-
no idea how to efficiently convert 8x8 linear bytes into 8x8 planar bytes tbh
@eniko tbh, if you want decent vga performance, you kinda need to use bitplanes there too. Imo, the only viable approach is to precalc that on level load. Dynamically converting to planar during gameplay is not going to be great.