chrismaltby / gb-studio

A quick and easy to use drag and drop retro game creator for your favourite handheld video game system
https://www.gbstudio.dev
MIT License
8.56k stars 471 forks source link

[Request] sprite size customization #10

Open Level0gamedev opened 5 years ago

Level0gamedev commented 5 years ago

As gb works on 8x8 graphics chunks it would be beneficial to allow different sprite sizes (8x8, 8x16, 16x8). It would definitely help with memory concerns for sprite heavy games and allow for more artistic expression.

ISSOtm commented 5 years ago

Do you mean hardware sprites? Those can only be 8x8 or 8x16 (taller than wide), that's how the hardware works.

sneslink commented 5 years ago

Even if we could only have 8x8 or 16x16: it would still be a nice option to have.

HeyItsLollie commented 5 years ago

@ISSOtm I'm assuming they meant "sprites" as defined by the documentation, where a single "sprite" frame is 16x16.

I would like to see more variance in sprite sizes. I personally don't need nine different actors on screen at once, so I'd be happy to trade graphics memory for taller actors (24x16 or 32x16)... although that said, I also wouldn't need all my sprites to share that same height - only a select few.

If there was some way to determine how much sprite memory is being used in a scene, based on the 8x8 (or 8x16) tiles that have been loaded, that could offer a greater amount of graphical flexibility for users. I imagine it wouldn't be difficult to convey to users that larger sprites = greater memory usage, and to encourage designing around these limits appropriately.

LoneDev6 commented 5 years ago

Any news on this?

Takuyax commented 4 years ago

Having access to the basic 8x8 sprites would be very helpful. I've been experimenting with the 2.0 beta's support for point and click scenes, and tried to use sprites to add some tiny color details to the background, but quickly ran out of sprites.

ghost commented 4 years ago

I think maybe it will be possible in gba only not in gbc which may allow only 8*8