JAVA - Prosta Gra - "kamera"

0

Witam.Napisałem prostą grę 2D w Javie. Działa program rysujący mapkę (złożoną z kafelków) oraz ruch gracza po mapie.
Jednak potrzebuję napisać:
-Gdy gracz porusza się poza granice/rozdzielczość monitora to widok przesuwa się razem z nim, tak że gracz cały czas jest w pkt. środkowym ekranu. (obecnie gracz wychodzi poza mapę a ja go nie widzę ;))

Potrzebuję kilka wskazówek jak mogła by wyglądać taka metoda.
W pewnym artykule czytałem coś o sprawdzaniu położenia gracza, dzieleniu x, y ekranu na 2 i rysowanie gracza, ale nie wiem jak to do kupy złożyć.

0

Jeśli masz widok o wymiarach np M x N, to możesz sobie ustawić:

  • dwie linie pionowe, o współrzędnych OX np 100 i M - 100. Jeśli obiekt znajduje się poza tymi liniami to przesuwasz widok tak, aby znowu się znalazł.
  • dwie poziome linie, o współrzędnych OY np 100 i N - 100. Cel taki sam.

Takie rozwiązanie pozwoli się poruszać po planszy bez ciągłego przesuwania planszy. Jeżeli jednak chcesz mieć gracza cały czas na środku ekranu to najpiew oblicz punkt środkowy czyli (M/ 2, N/ 2) i po poruszeniu o wektor (A, B) przesuń także widok o wektor przeciwny czyli (-A, -B).

0

Wielkie dzięki ;) Bardzo ładnie mi wszystko przedstawiłeś.

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