Moldis Opublikowano 7 Listopada 2010 Udostępnij Opublikowano 7 Listopada 2010 Hi. Potrzebuję zrobić kilka poziomów backgroundu w sensie planów, udało mi się wyczytać o paralax scrollingu ale tam obrazki są zapętlane i mają już z góry ustawioną prędkość przesuwania. A me potrzebuje aby prędkość przesuwania się obrazka była uzależniona od jego wielkości w stosunku do szerokości roomu... innymi słowy że niebo ma np. szerokość 1000px, view ma 800px, room 1800px. I jeżeli postać stoi na poczatku mapy w pkt. x=0 to w view_xview jest wyświetlany obrazek od 0px. a jeśli postać stoi w pkt x=1800 to widać koniec obrazka aka x=1000, innymi słowy 200px z przodu jest obcięte. No. i właśnie taką funkcję potrzebuje a sam nie mogę sobie jakoś tego wymyślić ; C Podsumowując: Need znaleźć zależność między 3 zmiennymi aka x bohatera, długość obrazka i długość roomu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Moldis Opublikowano 30 Listopada 2010 Autor Udostępnij Opublikowano 30 Listopada 2010 bump... : D W sumie dalej potrzebuje pomocy z tym, naprawdę nikt nie potrafi tego ogarnąć? : C Czy może mam coś wyjaśnić bardziej o co chodzi albo coś... ? O.. wiem, zrobię obrazek :3 *znika na parę minut* here: Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
zelman Opublikowano 30 Listopada 2010 Udostępnij Opublikowano 30 Listopada 2010 Eee... może zrób to na obiektach i depthem? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Moldis Opublikowano 30 Listopada 2010 Autor Udostępnij Opublikowano 30 Listopada 2010 awww.. nie chodzi o to żeby coś było z tyłu czy przodu, to nie problem, wystarczy tylko w odpowiedniej kolejności rysować obrazki, problem tkwi w tym żeby dostosować odpowiednio prędkość przesuwania się planów. W sensie krótsza grafika przesuwa się wolniej w stosunku do tej dłuższej... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
zelman Opublikowano 30 Listopada 2010 Udostępnij Opublikowano 30 Listopada 2010 no to np. jeśli wciskasz a to dla tej najdalszej hspeed/vspeed (poziomo) = 1 dla tego blizej 2 itd. a najbliższy ma np. 5 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Moldis Opublikowano 30 Listopada 2010 Autor Udostępnij Opublikowano 30 Listopada 2010 zrobił bym tak jeśli nie chciał bym żeby prędkość jego przesuwania dostosowywała się sama do długości roomu i do długości grafiki która aktualnie będzie robić za plan. ps. plany nie będą się zapętlać tylko mają trwać od początku do końca równo z graczem, zresztą widać ładnie na obrazku up. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 30 Listopada 2010 Udostępnij Opublikowano 30 Listopada 2010 zelman, PRZESTAŃ zrób sobie jeden obiekt odpowiedzialny za rysowanie tła, daj mu wysoki depth. warstwowe tła to czysta matematyka. zaraz walnę edita edit: GML var tlow; // zmiennej tlow daj wartosc szerokosci warstwy tla var xx; xx=view_xview[0]/(room_width-view_wview[0])*(view_wview[0]-tlow); jak użyć GML draw_background(loltlo,view_xview[0]-xx,view_yview[0]); poprawiać, jeśli są byki Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Moldis Opublikowano 30 Listopada 2010 Autor Udostępnij Opublikowano 30 Listopada 2010 jeżeli użyję tego w sposób w jaki napisałeś to grafika zaczyna się gdzieś wyłaniać z prawej krawędzi w okolicach połowy roomu, i kończy się razem z końcem roomu.. więc to raczej nie ma tak być ^^" a jeśli rysuje grafikę bezpośrednio w xx to grafika jest od początkowej krawędzi + znika gdzieś w połowie albo szybciej. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 30 Listopada 2010 Udostępnij Opublikowano 30 Listopada 2010 spróbuj narysować to w pozycji xx GML var tlow; // zmiennej tlow daj wartosc szerokosci warstwy tla var xx; xx=view_xview[0]/(room_width-view_wview[0])*(room_width-tlow); wersja 2, czy będzie wersja 3? to zależy od tego, czy nie walnąłem się gdzieś znowu Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Moldis Opublikowano 30 Listopada 2010 Autor Udostępnij Opublikowano 30 Listopada 2010 dziękuję baaaardzo : 3 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Konrad-GM Opublikowano 1 Grudnia 2010 Udostępnij Opublikowano 1 Grudnia 2010 Nie trzeba rysować tych backgroundów funkcją 'draw_*', wystarczy do tego wbudowany system backgroundów GMa + Obiekt który będzie kontrolował scrollingiem: GML (End Step) background_x[0] = view_xview[0]; background_x[1] = view_xview[0]/2; background_x[2] = view_xview[0]/3; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 1 Grudnia 2010 Udostępnij Opublikowano 1 Grudnia 2010 Nie trzeba rysować tych backgroundów funkcją 'draw_*', wystarczy do tego wbudowany system backgroundów GMa + Obiekt który będzie kontrolował scrollingiem: GML (End Step) background_x[0] = view_xview[0]; background_x[1] = view_xview[0]/2; background_x[2] = view_xview[0]/3; tak, ale dobrze byłoby wiedzieć, jaki depth mają wbudowane backgroundy. przy obiektach można zrobić obiekty wlatujące za plan. poza tym, Moldisowi chodziło o "dostosowanie" warstw do rozmiaru rooma. podałem na to skrypt, można go użyć także tak: GML background_x[1]=view_xview[0]/(room_width-view_wview[0])*(room_width-tlow); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się