Hi there! I've been away from the hobby for a few years but now I'm back with a new project idea and hoped I could get some help brainstorming the best way to approach arranging the level data.
What I'm doing now is building a framework for a map that scrolls in all directions, but has transitions every few screens to provide breaks in gameplay and allow for loading of different CHR banks.
When I was experimenting with purely horizontal scrolling in the past, I put my metatiles into 32x32 blocks, arranged those in columns, and loaded 32 pixels and attributes at once. Now, since I'm scrolling in both directions and can only load 8 pixels at a time, there's not a best option that seems obvious to me.
In the past for 4-way scrolling, I went ahead and stuck with either a column or row layout for "meta metatiles", since I knew that I was going to have to deal with them as both rows and columns, it seemed to make sense to me to create a data structure that benefited inputting in at least one direction. Then inside of there I was just using 16x16 metatiles, which surely isn't the most space efficient.
I don't want to overload myself on this and do some crazy compression system or something and get off track, but it would be nice to come up with a clean and relatively fast solution that's easy to manage as things go on. I've got to think about the tiles and attributes that make up the screens in addition to the larger segments that make up the map. It would be nice if the scrolling segments could be somewhat arbitrarily sized and shaped, so maybe a map section will scroll over and up in an "L" pattern instead of just being a square.
Any thoughts?
Thank you!
What I'm doing now is building a framework for a map that scrolls in all directions, but has transitions every few screens to provide breaks in gameplay and allow for loading of different CHR banks.
When I was experimenting with purely horizontal scrolling in the past, I put my metatiles into 32x32 blocks, arranged those in columns, and loaded 32 pixels and attributes at once. Now, since I'm scrolling in both directions and can only load 8 pixels at a time, there's not a best option that seems obvious to me.
In the past for 4-way scrolling, I went ahead and stuck with either a column or row layout for "meta metatiles", since I knew that I was going to have to deal with them as both rows and columns, it seemed to make sense to me to create a data structure that benefited inputting in at least one direction. Then inside of there I was just using 16x16 metatiles, which surely isn't the most space efficient.
I don't want to overload myself on this and do some crazy compression system or something and get off track, but it would be nice to come up with a clean and relatively fast solution that's easy to manage as things go on. I've got to think about the tiles and attributes that make up the screens in addition to the larger segments that make up the map. It would be nice if the scrolling segments could be somewhat arbitrarily sized and shaped, so maybe a map section will scroll over and up in an "L" pattern instead of just being a square.
Any thoughts?
Thank you!