A brand new game
for Windows, HTML5, 3DS Homebrew, iPhone, Android TV and more,
Tiles and Such
6th June, 2018
Today I'm going to reattempt the "Draw tiles to a buffer, draw the buffer" stuff.
Although it has it's issues on the 3DS due to memory limitations, sprite size changes, and a whole lot more, I figured that with JNKPlat at least, I'm ALWAYS going to be using little 8x8 pixel tiles.
As such, it should theoretically be possible to create 2x 256x256 buffers, and draw exactly to the same place, with the same tiles, on both the 3DS and Desktop editions.
If I find the desktop edition doing weird scaling things, then I'll simply revert to hand-drawn tiles for that version.
I'm not 100% convinced that this will work as intended, though, as I think there might still be a slight delay when drawing new objects onto the buffer. This might be a problem, but I'll only know for sure once I reach that point.
So, today will be spent going back to the original buffer-drawing code, and giving it a little tweak, to hopefully bring it in line with the 3DS's requirements.
I spent a LOT of time, yesterday, reading up on Metal and trying to figure out the best way to go about implementing it into a C++ based engine.
During Mac compiles, the script is renamed to a .mm file, which says to XCode "This is a cpp script, but contains bits of Obj-C"
I'm hoping that that's enough to let me do some of the more complicated Metal things, without too much extra faffing about.
But only time will tell.
Additionally, the new "AGAW_Metal.mm" should hopefully function on both Mac and iOS.. But I already know how complicated that'll be to implement, so it'll probably be split into AGAW_MetalMac and AGAW_MetaliOS instead!
The current scripts are AGAW_glfw3.cpp and AGAW_3ds.cpp, and there's also a sad, lonely and abandoned AGAW_gles.cpp which I originally intended to be the iOS/Android target.
.. That's not happened!!
Anyhoo, focus on the Mac, first and foremost, and hopefully the iOS will fall into place.
After that, I should probably take a look at fixing up my Android dev target. Apparently Google have made it even harder, so .. yeay..