Gered's Game Dev Tools. A for-fun, retro-style set of game dev tools and other code to help with my own projects.
Go to file
Gered f3d213130d revert hackfix in GeneralBlitMethod. fix CustomMouseCursor rendering
at this point i am 99% certain that the previous issues i was having
with making GeneralBlitMethod generic over the bitmap PixelType was
because i was trying to specify a constant PixelType value in generic
code (CustomMouseCursor).

whether this was actually the problem or not i think is besides the
point however because while thinking about this i suddenly realized this
was incorrect anyway!

making CustomMouseCursor generic via GeneralBitmap means that specifying
constant colours was not going to produce expected results (e.g. '255'
has a very different meaning for indexed colour rendering versus for
32-bit RGBA colour format).

so, CustomMouseCursor now figures out the correct transparent colour
to use from the DefaultMouseCursorBitmaps implementation.

this allows us to make GeneralBlitMethod be generic over a bitmap's
PixelType again and i'm sure we won't have that previous issue again as
long as we don't try to specify constant colour values in our generic
rendering code ... which we should never be doing anyway!
2023-03-09 14:51:01 -05:00
examples make BitmapAtlas generic for its type of bitmap 2023-03-08 17:23:49 -05:00
ggdt revert hackfix in GeneralBlitMethod. fix CustomMouseCursor rendering 2023-03-09 14:51:01 -05:00
.gitignore update gitignore 2022-05-15 12:14:12 -04:00
Cargo.toml rename from libretrogd to ggdt 2023-03-02 16:11:59 -05:00
README.md rename from libretrogd to ggdt 2023-03-02 16:11:59 -05:00

ggdt: Gered's Game Dev Tools

This is a purely for-fun project of mine. It's a personal set of retro-like/inspired game development tools for use in my own projects.

It started with a focus on DOS "VGA mode 13h"-style limitations, but is not going to be limited to just that into the future and will be expanded on as I need it to do other things. It should be noted that in this project I will do a lot of (poor) reinventing of the wheel ... because it's fun. Stringing together existing libraries all the time is dull after a while.

I'm not an expert in Rust and am probably still doing a great many things unidiomatically. But I'm learning, and that is at least half the point of this project in the first place.

See the /examples directory for some demo apps. These will be added to over time.