Skorsis Opublikowano 28 Listopada 2014 Udostępnij Opublikowano 28 Listopada 2014 Mam rooma 2560x1920 (4:3) i chcę, żeby obraz się przycinał od góry i dołu oraz skalował zależnie od ekranu. Mam taki kod: GML dispH=round(display_get_height()); dispW=round(display_get_width()); view_wview[0]=2560; view_hview[0]=(dispH/dispW)*2560; view_xview[0]=0; view_yview[0]=(1920-view_hview[0])/2; view_wport[0]=dispW; view_hport[0]=dispH; view_xport[0]=0; view_yport[0]=0; Wrzuciłem to w objControl Draw GUI. Niestety nie działa, obraz jest czarny. Wie ktoś gdzie to powinno być i może co dodać do tego, żeby działało? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 28 Listopada 2014 Administratorzy Udostępnij Opublikowano 28 Listopada 2014 W create roomu, albo obiektu? No i włącz jeszcze działanie viewów: view_enabled[0] = true; view_visible[0] = true; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Skorsis Opublikowano 28 Listopada 2014 Autor Udostępnij Opublikowano 28 Listopada 2014 Hmm... wrzuciłem w creation room, dodałem te funkcje, no i pokazało się, ale jest tylko kawałek obrazu i obraz zamiast się portować to wyświetla tylko kawałek rooma o rozmiarach displaya. Sprawdzam na Androidzie. Na windowsie jak dam np. dispH=round(display_get_height()/2) (to samo z width) to obraz i tak jest na cały ekran zamiast na pół. W sumie to nie wiem co się dzieje. GUI jest, pod spodem czarno, kawałek obrazu, po lewej jakieś żółte migające kreski. Na Androidzie zupełnie inaczej niż na Windowsie, jak znajdę rozwiązanie to dam znać. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 28 Listopada 2014 Administratorzy Udostępnij Opublikowano 28 Listopada 2014 Jeśli nie jesteś na fullscreenie na windowsie, to jeszcze rozmiar ekranu trzeba ustawić. windows_set_size bodaj. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Skorsis Opublikowano 28 Listopada 2014 Autor Udostępnij Opublikowano 28 Listopada 2014 A dla Androida nie trzeba majstrować coś z surface? Kurde nie wiem jak to zrobić, jak wpiszę na sztywno w ustawieniach viewa dane dla mojego telefonu to działa jak trzeba, a z kodu nie chce załapać. Dodałem jeszcze to, ale nic to nie zmieniło: GML if(dispH>dispW) { temp=dispH; dispH=dispW; dispW=temp; } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kriso99 Opublikowano 28 Listopada 2014 Udostępnij Opublikowano 28 Listopada 2014 w gm w global settings androida to masz jest opcja ze ma sam przycinać lub ze ma rosciagac do maxa ekranu Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Skorsis Opublikowano 28 Listopada 2014 Autor Udostępnij Opublikowano 28 Listopada 2014 Nie ma chyba przycinania. Full scale rozciąga na cały ekran, a Keep aspect ratio dodaje czarne paski Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Skorsis Opublikowano 28 Listopada 2014 Autor Udostępnij Opublikowano 28 Listopada 2014 GML var temp; view_enabled[0] = true; view_visible[0] = true; dispH=round(display_get_height()); dispW=round(display_get_width()); if(dispH>dispW) { temp=dispH; dispH=dispW; dispW=temp; } view_wview[0]=2560; view_hview[0]=(dispH/dispW)*2560; view_xview[0]=0; view_yview[0]=(1920-view_hview[0])/2; view_wport[0]=dispW; view_hport[0]=dispH; view_xport[0]=0; view_yport[0]=0; surface_resize(application_surface,dispW,dispH) Tak działa, views muszą być enabled, a "view0 visible at start" musi być odznaczony 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ę