Skocz do zawartości
  • 0
ToxicMan

Problem z obiektem we view

Pytanie

2a7d1dz.jpgok9xkw.jpg                                                 Witam, mam problem, stworzyłem obiekt z takim kodem:

y =view_yview
x =view_xview

chciałbym żeby obiekt zawsze był w lewym górnym rogu jednak obiekt tak jakby podąża a nie jest przyklejony do view'a co daje nieestetyczny efekt, ktoś wie jak temu zaradzić ? 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

4 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0

Tak to wygląda zawsze jak nadasz obiektowi współrzędne viewa, trzęsie się przy poruszaniu.

Dużo lepiej jest rysować interfejs, masz np. obiekt control czy jakiś inny który służy wyłącznie rysowaniu interfejsu. Sam nie ma żadnego sprite'a i znajduje się w losowym miejscu w roomie, za to w draw dajesz mu np.

draw_sprite(interfejs_sprite,0,view_xview,view_yview)

i problem rozwiązany - przy poruszaniu viewem rysowany interfejs się nie trzęsie.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
  • 0

Czy ten kwadrat jest rysowany jako sprite, czy za pomocą draw_rectangle() ?

 

Jeśli sprite - sprawdź origin, może jest zły.

Jeśli draw rectangle - ta funkcja ma tendencję do rysowania z offsetem 1px na niektórych kartach graficznych. Do tego malowanie wypełnionego oznacza przesunięcie o kolejny piksel (bo rysuje bez ramki, którą jest argument przeciwny). Stąd mogą być aż dwa piksele.

Osobiście zalecam używanie sprite zamiast draw_rectangle().

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
  • 0

Origin jest dobrze ustawiony. Ten kwadrat ma być częścią interfejsu (kiedyś nie będzie kwadratem ale teraz to nie istotne) Po prostu stworzyłem obiekt wybrałem mu sprite i w step napisałem ten kod, nie mam pojęcia jak by można to inaczej rozwiązać.A  ten efekt jest tylko w przypadku poruszenia view'a 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
  • 0

Problemem jest to, że aktualizujesz pozycję w stepie który się dzieje 30/60/ile tam ustawiłeś razy na sekundę zamiast tak często jak draw LUB w tym, że pozycja X/Y obiektu aktualizuje się PRZED ruszeniem view'a.

jeżeli wrzucisz aktualizację do draw powinno działać. Tylko tego nie nadużywaj, bo draw dzieje się częściej od step i może wpłynąć na optymalizację gry.

 

Edit: Nie zauważyłem że wybrałeś już odpowiedź. Nvm.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Tylko 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ę tutaj.

Zaloguj się tutaj

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników, przeglądających tę stronę.

×