Pomysł na lepszą reprezentację mapy w grze.

0

Napisałem prostą grę w C++ z użyciem biblioteki SDL. Mapa w tej grze składa się z kwadratów 15x17. Posiada dwie warstwy: dolną, na której znajdują się stałe elementy i górną na której leżą rzeczy, które mogą zmieniać położenie. Teraz mam zamiar napisać drugą grę z wykorzystaniem biblioteki SFML. Potrzebuje lepszego sposobu reprezentacji mapy. Chcę płynnego przesuwania po mapie a nie skakania co jeden kwadrat. Chcę też, aby moja mapa była przewijana. Nie wiem jak zrobić taką mapę. Proszę o jakieś linki do tutoriali, kodów źródłowych. Może podpowiecie jak taką mapę zrobić.

1

Niech dolna warstwa mapy będzie bloczkami, a pozycje obiektów w górnej warstwie zapisuj jako liczby zmiennoprzecinkowe/całkowite (zależy, jak prezentuje się całość), a nie jako pozycję bloczku.
Jeżeli tych obiektów jest kilka tysięcy, to dodatkowo dobrym pomysłem byłoby użycie jakiegoś drzewka.

0

Czy mogę w ten sposób zrobić przewijaną mapę taką jak Super Mario Bros? Taka mapa będzie bardzo szeroka. Czy mogę zrobić taką wielką tablicę reprezentującą dolną warstwę? Czy współrzędne zmiennoprzecinkowe reprezentujące obiekty ruchome będą miały wystarczającą precyzję?

1

Zasadniczo powinieneś przesuwać kamerę, a nie mapę, o ile dobrze rozumiem do czego dążysz.
Edit: ale tak, współrzędne zmiennoprzecinkowe powinny wystarczyć. Chociaż tak właściwie mógłbyś przyjąć, że 1 jednostka = 1 piksel, wtedy tracimy problem zmiennoprzecinkowości na rzecz zwykłych liczb całkowitych.

0
darek40bc napisał(a):

Proszę o jakieś linki do tutoriali, kodów źródłowych
Myślę, że kilka rozwiązań z tego kursu może być dla ciebie pomocnych.

1 użytkowników online, w tym zalogowanych: 0, gości: 1