wojownik266 Temat założony przez niniejszego użytkownika |
[SFML 1.6] Przewijanie tła » 2012-07-20 14:07:53 Mamy taki kod w Allegro 4.2
masked_blit( tlo, buffer, 0, 0, backx, backy, tlo->w, tlo->h ); masked_blit( tlo, buffer, 0, 0, backx,( backy +( tlo->h ) ), tlo->w, tlo->h ); backy--; if(( backy +( tlo->h ) ) == 0 ) backy = 0;
Jak powinno to samo wyglądać w SFML'u? Tak aby działało identycznie? |
|
diego997 |
» 2012-07-20 17:23:38 |
|
wojownik266 Temat założony przez niniejszego użytkownika |
» 2012-07-20 17:58:40 Ciężko będzie ale myślę że dam radę. Dzięki! |
|
wojownik266 Temat założony przez niniejszego użytkownika |
» 2012-07-21 11:53:30 Bez większych zgrzytów napisałem taki kod jak poniżej, który bardziej odpowiada moim oczekiwaniom. Program działa (w tej wersji), tak że skroluje tlo aplikacji od dołu do góry. Co zrobić aby tło aplikacji powróciło taką samą drogą do punktu wyjścia. A potem znowu do dołu i tak w koło Macieju?
void Gracz::scroll_back( sf::Sprite & Fota, float & x1, float & y1 ) { bool przewin = false; if( y1 < SCREEN_H && przewin == false ) { przewin = true; } if( y1 >=( SCREEN_H ) && przewin == true ) { przewin = false; } else { if( przewin == false ) y1 += 0.05; if( przewin == true ) y1 -= 0.05; } Fota.SetPosition( x1, y1 ); }
|
|
diego997 |
» 2012-07-21 12:01:00 Nie rozumie ;p
Chodzi ci o to że scrolujesz w nieskonczonosc do góry ? A chesz do pewnego momnetu czy jak? |
|
wojownik266 Temat założony przez niniejszego użytkownika |
» 2012-07-21 12:05:24 Chodzi mi o to żeby tło po przskrolowaniu do górnej krawędzi okna (na razie), przskrolowało się z powrotem do dolnej krawędzi okna. Coś w rodzaju pętli. Inaczej już tego wytłumaczyć nie da rady. |
|
diego997 |
» 2012-07-21 12:30:08 Scrolujesz w dół więc tło idzie w górę, musisz wykryć moment kiedy dolna krawędź będzie niewidoczna wtedy przesuwasz kamerę w takie miejsce, żeby pod nią była krawędź górna tła. Dzięki czemu uzyskasz pożądany efekt;p sf::View na pewno ma metode set i get Position.
No ja bym to w ten sposób zrobił |
|
wojownik266 Temat założony przez niniejszego użytkownika |
» 2012-07-21 12:38:27 To rozwiązanie zapewne nie było by złe ale wydaje mi się że można by to zrobić o wiele prościej. Zadaje te głupie pytania bo w efekcie końcowym chciałbym uzyskać takie scrollowanie tła jak w tej grze: http://hostuje.net/file.php?id=4b49628b62ccd6f890060bb82a3111b9 Sam ją napisałem ale przetłumaczyc na SFML jescze nie umiem....! |
|
« 1 » 2 |