Skocz do zawartości

Problem z draw


Rekomendowane odpowiedzi

Wiem, że dla większości z was problem może wydawać się banalny, ale nie mogę trafić na właściwe rozwiązanie.

Szkoda, że w dokumentacji nie macie szerzej opisanej funkcji draw jeśli chodzi o sprite, ale do rzeczy.

 

Chcę, by na sprite tułowia bohatera nakładała się pośrodku głowa, po boku zaś ręce (oddzielne sprite). Gra typu top-down. Poeksperymentowałem troche, ale nic nie trzyma mi się tam kupy, głowa nie siedzi "sztywno" na karku. To mój problem nr. 1.

 

Problemem numer 2 jest opcja odwracania się bohatera w kierunku kursora. Niby wszystko fajnie, ale gdy zbliżę kursor w stronę bohatera, widać że nacelowuje on od lewej strony sprite tułowia, miast ze środka. Jak temu zaradzić? Z góry dzięki za wszelaki podpowiedzi :rolleyes:

 

/edit

Dopytam jeszcze może o ruchy sprite (coś jak animacja). Wiem, że można to wykonać w opcjach bodajże draw (przeglądałem przykłady poruszania się i walki a'la almora), niezbyt wiele jednak z tego rozumiem, miłoby było, gdyby ktoś w skrócie opisał co jak działa, do reszty powoli dojdę sam :D

Odnośnik do komentarza
Udostępnij na innych stronach

Ok, więc tak. W draw obiektu dałem to (sam problem z głową)

GML
draw_sprite_ext(sprite_index, 0,x,y,image_xscale,image_yscale,direction,image_blend,image_alpha)

image_angle=direction

draw_sprite_ext( spr_glowa, 0, x+10, y+10, image_xscale, image_yscale, direction, image_blend, image_alpha );

 

x+10, y+10 to jednak nie trzyma mi głowy sztywno, nie znam tych Originy, lengthdiry, a przeczuwam że to właśnie o nie może chodzić.

image_angle=direction - odwracanie się w stronę kursora, w create dałem direction=0, w poprzednim poście napisałem co mi nie idzie. Powinienem zawrzeć jeszcze jakieś dane? Jak np. wymiar sprite?

Odnośnik do komentarza
Udostępnij na innych stronach

W tym przypadku ta 2 linia nic nie robi. image_angle=direction Jest niepotrzebne bo obrót spritów ustawiasz już we wnętrzu funkcji draw_sprite_ext ( argument rot )

 

Chcę, by na sprite tułowia bohatera nakładała się pośrodku głowa

Problemem numer 2 jest opcja odwracania się bohatera w kierunku kursora. Niby wszystko fajnie, ale gdy zbliżę kursor w stronę bohatera, widać że nacelowuje on od lewej strony sprite tułowia, miast ze środka.

wejdź w edycję spritu tułowia i ustaw origin na środek ( kliknij przycisk center ), to samo zrób z głową.

 

po boku zaś ręce (oddzielne sprite).

Zapoznaj się z działaniem funkcji length_dir.

Tutaj temat odemnie: https://forum.gmclan.org/index.php?showtopic=28090

+ było już o tym problemie dziesiątki tematów i pełono było robionych przykładów.

 

ale nic nie trzyma mi się tam kupy, głowa nie siedzi "sztywno" na karku. To mój problem nr. 1.

W którym evencie wykonujesz obliczenia/zmianę pozycji postaci?

Odnośnik do komentarza
Udostępnij na innych stronach

Ok, wielkie dzięki, już mam ;)

Chodziło o wycentrowanie, aż dziw jak mogłem o tym zapomnieć :unsure:

W którym evencie wykonujesz obliczenia/zmianę pozycji postaci?

 

No, dla poszczególnych pocisków.

 

Zapoznaj się z działaniem funkcji length_dir.

Tutaj temat odemnie: https://forum.gmclan.org/index.php?showtopic=28090

+ było już o tym problemie dziesiątki tematów i pełono było robionych przykładów.

 

Dzięki, przyda się z pewnością. Owszem, sam bazowałem na jednym z przykładów, ale nigdy go gm'a nie mogłem zabrać się na poważnie, stąd mam poważne luki. Używałem opcji szukaj, ale jakoś nie podawało mi potrzebnych mi tematów <_<

 

marnotrawiac moc procesora na powtarzania przez cala gre animacji machania rekami ( caly czas te same kilka klatek) g. osiagniesz. Takie jest moje zdanie o Twoim problemie.

 

Korzystam tutaj z przykładu chodzeniaalaalmorapsichi, musiałeś mnie źle odebrać i/lub nie zrozumieć. Staram się po prostu nie przepisywać kodu bezrozumnie i stąd czasem różne barachołki mi wychodzą. Postaram się teraz dokładniej przeszukiwać sieć i dokumentacje, chociaż na prawdę łatwo jest czasem coś przeoczyć.

Raz jeszcze wielkie dzięki wszystkim :thumbsup:

Odnośnik do komentarza
Udostępnij na innych stronach

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ę
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...