Nie mam żadnych przykładów api, ale zaprojektowałem gry w college'u, więc podam moje dwa kawałki.
Używana metoda zależy od stylu, rozmiaru, funkcjonalności i formatu mapy.
Na przykład, jeśli szukasz bardzo statycznej, niezmiennej mapy, użyj prostego obrazu. Możesz użyć ramki API do widoku obrazu, umożliwiając powiększanie i pomniejszanie, tak jak w galerii, i przewijać powiększone obrazy, lub w tym przypadku powiększać lokalizacje na mapie.
Alternatywnie, jeśli twoja mapa jest oparta na systemie kafli, dobrym tego przykładem są oryginalne gry Pokémon i Legend of Zelda ze starego chłopca, wtedy każdy obszar przechowuje dla siebie "miniaturę" kafelka jako bitmapę . Są one następnie umieszczane w odpowiednich miejscach na siatce w zależności od tego, jakie obszary zostały odkryte.
Jest to prawdopodobnie najbardziej elastyczny sposób na zbudowanie mapy, ponieważ nie polegasz na ustawionej mapie bitowej dla całej mapy, co oznacza, że może ona efektywnie zmieniać wygląd; możesz go zbudować zgodnie z życzeniem, aby pokazać wybrane obszary (przydatne, jeśli mapa pokazuje tylko miejsca, które gracz zakrył) i oznacza to, że możesz nakładać nakładkę:
tj. - jeśli pewien obszar powinien zawierać skarby, tam jest ikona skarbu nałożona na to płytki x, y pozycja na mapie siatki.
Użyłem opcji kafelkowania w moich projektach w grach z uczelni, co ułatwiło porównywanie wszystkich innych map. Zrobiło to również mniejszą przestrzeń przechowywania na mapie.
Czy możesz być bardziej konkretny? Czy potrzebujesz porady dotyczącej otwartego GL? A może szukasz danych wejściowych dotyczących architektury gry 2D? Obecnie mam problem z ustaleniem aktualnego pytania. Mam więc nadzieję, że możesz wyjaśnić, że dla mnie i ja być może pomożemy :). –
Powinieneś rzucić okiem na niektóre podstawowe pojęcia Tilingu. wskazuje na moje poprzednie pytanie: http://stackoverflow.com/questions/2125354/best-approach-for-oldschool-2d-zelda-like-game – Dullahx