Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[Allegro] Obracanie mapy

Ostatnio zmodyfikowano 2009-04-13 21:31
Autor Wiadomość
Patzick
Temat założony przez niniejszego użytkownika
[Allegro] Obracanie mapy
» 2009-04-11 17:43:15
Mamy mapę kafelkową, ładnie wszystko jest umieszczamy obiekt na środku ekranu nieruchomo i robimy scrolowanie mapy. Co jednak, jeśli chcemy żeby mapa odwracała się zawsze tak, żeby obiekt był zwrócony ciągle w górę? Sprawdza się to w samochodówkach, bo nieporęcznie się jeździ gdy samochód jest skierowany w dół. Macie pomysł jak to zrobić? Fajnie jakby ktoś napisał mini artykuł o tym bo jest to przydatna rzecz :)
Czekam na pomysły
P-5492
pixelmaster
» 2009-04-11 18:03:12
Może mini mapę dać jako okrąg, i jak jest warunek do skręcania, czyli jak wciśnięty klawisz strzałki w prawo np. to obracać mini mapę o jakiś tam kąt.
P-5493
DejaVu
» 2009-04-11 18:24:11
Najprostsza metoda jaka mi przychodzi do głowy to:

1) Tworzymy bufor o wielkości ceil(sqrt(800*800+600*600))=1000px na 1000px
2) Rysujemy na nim elementy mapy (bez obrotu!)
3) Rysujemy na środku bufora samochód (obrócony!)
4) Obracamy cały bufor 1000x1000 tak, aby samochód był zwrócony ku górze i rysujemy go na buforze ekranu tak, aby samochód był na środku.
P-5494
Patzick
Temat założony przez niniejszego użytkownika
» 2009-04-11 18:51:46
Ciekawe :) spróbuję opracować jakiś przykład na Twoim pomyśle
P-5500
Patzick
Temat założony przez niniejszego użytkownika
» 2009-04-13 21:10:35
Kurcze, coś nie mogę tego zrobić.
Mam już wszystko zrobione poza tym obrotem mapy. Bufora chyba nie można obrócić dlatego mój bufor 640/480 na którym wszystko jest rysowane przerysowuję na drugi bufor 1000/1000. Niby się obraca, ale problem w tym, że przy około 45 stopniach nie rogi zostają odkryte i nie ma w nich nic.
wyświetlam to już tak
C/C++
pivot_sprite( bufor2, bufor, 320, 240, 320, 240, itofix(( int ) kierunek - 1 ) );
blit( bufor2, screen, 0, 0, 0, 0, 640, 480 );
Kierunek jeszcze nie jest zbyt dokładne bo chodziło mi żeby się w ogóle odwracało, ale właśnie napotykam ten problem i nie wiem jak go obejść. Czekam na sugestie :)
P-5564
DejaVu
» 2009-04-13 21:31:45
Rysować masz na buforze 1000x1000, a później go przenieść (i obrócić) na bufor ekranu 800x600, a później bufor ekranu na ekran.
P-5567
« 1 »
  Strona 1 z 1