I am Żyd and Lewak Opublikowano 21 Kwietnia 2013 Udostępnij Opublikowano 21 Kwietnia 2013 Na początku sądziłem że to pan 'Kiełbasa Krakowska' zadał ten temat, lecz jednak nie. Jak wyciągnąć z tekstury aby objekt czytał tylko od (16,16) do (32,32)? Jest już taki przykład, lecz nie potrafię tego wyciągnąć. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 21 Kwietnia 2013 Administratorzy Udostępnij Opublikowano 21 Kwietnia 2013 Podaj współrzędne tekstury, zakładając że 0 to początek, a 1 to koniec tekstury, np. jak tekstura ma 64x64 piksele, to pozycja 16 to inaczej 16:64 czyli 0.25, a 32 to 0.5. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Amaterasu Opublikowano 21 Kwietnia 2013 Udostępnij Opublikowano 21 Kwietnia 2013 Em, wystarczy chyba zmienić odpowiednie argumenty w funkcjach. Oczywiście zależy, czy te funkcje mają jakieś argumenty odpowiadające używanemu fragmentowi tekstury. Mówisz o funkcjach z GM-a, czy z jakiegoś silnika? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Żyd and Lewak Opublikowano 21 Kwietnia 2013 Autor Udostępnij Opublikowano 21 Kwietnia 2013 Funkcjach z GM'a. @Gnysek - ale jak podać współrzędne? Którą funkcją? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Amaterasu Opublikowano 21 Kwietnia 2013 Udostępnij Opublikowano 21 Kwietnia 2013 Skoro funkcja przyjmuje argumenty od 0 do 1, to szukany x = t/sprite_get_[width\height, szerokość lub wysokość](spr) przy czym t jest twoją współrzędną, np. 16 lub 32 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Żyd and Lewak Opublikowano 21 Kwietnia 2013 Autor Udostępnij Opublikowano 21 Kwietnia 2013 współrzędną dajmy że jest x. Ale skąd mam wziąć y i jak mam to zastosować w d3d_draw_block(...,texid,1,1)? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Amaterasu Opublikowano 21 Kwietnia 2013 Udostępnij Opublikowano 21 Kwietnia 2013 W d3d_draw_block nie da się ustawić osobnej tekstury dla każdej ściany. Jeśli chcesz stworzyć nowego sprite'a z kawałka istniejącego, rysujesz go na surface'u i używasz funkcji sprite_create_from_surface z odpowiednimi parametrami, tak powstałego sprite'a możesz wykorzystać jako teksturę dla swojego sześcianu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Żyd and Lewak Opublikowano 21 Kwietnia 2013 Autor Udostępnij Opublikowano 21 Kwietnia 2013 Nie wiem czy dobrze to zrozumiałem, ale: edit: GML (CREATE) BAC=(sprite_get_texture(sprite_create_from_surface(SPR,0,0,4,4,0,1,0,0),0)) I w stawieniu to jako texture w d3d_draw_block, wyskoczył mi błąd(nie gml'owy tylko zwykły.) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ALT Opublikowano 21 Kwietnia 2013 Udostępnij Opublikowano 21 Kwietnia 2013 To może nam go podasz? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Żyd and Lewak Opublikowano 21 Kwietnia 2013 Autor Udostępnij Opublikowano 21 Kwietnia 2013 "Unexpected error occured when running the game." Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 21 Kwietnia 2013 Udostępnij Opublikowano 21 Kwietnia 2013 Zakładam że do funkcji sprite_create_from_surface podałeś id sprita zamiast id surface, zgadza się? xD Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Żyd and Lewak Opublikowano 21 Kwietnia 2013 Autor Udostępnij Opublikowano 21 Kwietnia 2013 :< tak? EDIT: A jak się tworzy te surfejsy? Bo tam jest tylko width i height, lecz nie ma sprite'a A przynajmniej tutaj sprite_create_from_surface() Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 21 Kwietnia 2013 Administratorzy Udostępnij Opublikowano 21 Kwietnia 2013 No bo trzeba coś na surface namalować... przeczytałeś chociaż w dokumentacji co to są te całe surface'y? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Amaterasu Opublikowano 21 Kwietnia 2013 Udostępnij Opublikowano 21 Kwietnia 2013 Bez wiedzy o tym, czym są surface'y, nie jesteśmy w stanie dalej pomóc. Na forum znajdziesz wiele przykładów z surface'ami, w dokumentacji jest opis funkcji, zrób sobie miniprojekcik z używaniem surface'ów, popatrz jak działają, wtedy będziesz wiedział, co zrobić tutaj. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ALT Opublikowano 21 Kwietnia 2013 Udostępnij Opublikowano 21 Kwietnia 2013 Prosz https://gmclan.org/index.php?czytajart=38 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Żyd and Lewak Opublikowano 21 Kwietnia 2013 Autor Udostępnij Opublikowano 21 Kwietnia 2013 Dzięki ALT! Próbowałem coś zrobić w 2d lecz nie wyszło :[ Błąd występuje jak przytrzymam R (funkcja-reset), wyskakują wtedy dziwne obrazki. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ALT Opublikowano 21 Kwietnia 2013 Udostępnij Opublikowano 21 Kwietnia 2013 Unexpected error occured when running the game. Kiedy uruchomiłem twojego gmk'a. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Żyd and Lewak Opublikowano 21 Kwietnia 2013 Autor Udostępnij Opublikowano 21 Kwietnia 2013 O.o nie możliwe. EDIT: Mi działa poprawnie. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
szmalu Opublikowano 21 Kwietnia 2013 Udostępnij Opublikowano 21 Kwietnia 2013 Mi też błędu nie wywala, ale nic ten program nie robi? Wciskam R i co dalej? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Żyd and Lewak Opublikowano 21 Kwietnia 2013 Autor Udostępnij Opublikowano 21 Kwietnia 2013 Wciśnij kilka razy... nawet przytrzymaj. Po pół minucie maksymalnie powinno zmienić teksturę na dziwną. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Amaterasu Opublikowano 21 Kwietnia 2013 Udostępnij Opublikowano 21 Kwietnia 2013 SCR_INI: GML draw_set_color(c_white); //draw_rectangle(0,0,room_width,room_height,0); //czycimy surface'a, rysuj?c na ekranie czarny prostok?t</span></span> zamień na GML draw_clear_alpha(c_white,0) //czyszczenie obszaru rysowania (w tym przypadku surface'a) draw_background(BAC,0,0) //narysuj raz background na surface'u, będziesz z tego korzystał w późniejszych funkcjach</span> Wywal skrypt SCR_STEP. Nic nie zniknie w magiczny sposób z surface'a, jeżeli już raz coś narysowałeś. Tak samo usuń event Step. Restartując grę nie usuwasz stworzonych wcześniej surface'ów, czym szybko zaśmiecisz pamięć karty graficznej. Przed restartem użyj funkcji surface_free(back). Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 21 Kwietnia 2013 Udostępnij Opublikowano 21 Kwietnia 2013 Nic nie zniknie w magiczny sposób z surface'a Pod warunkiem że nie włączy się wygaszacz ekranu albo nie za hibernujesz kompa xD Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Żyd and Lewak Opublikowano 22 Kwietnia 2013 Autor Udostępnij Opublikowano 22 Kwietnia 2013 Amaterasu - mi działa wszystko ładnie ale z stepem, jak wywale stepa to nie działa. Huder - Magia!!!.... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 22 Kwietnia 2013 Administratorzy Udostępnij Opublikowano 22 Kwietnia 2013 Surface może zniknąć w dowolnym momencie tak naprawdę. Warto sprawdzać czy istnieje. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Amaterasu Opublikowano 22 Kwietnia 2013 Udostępnij Opublikowano 22 Kwietnia 2013 Hm, i znowu - nigdy mi się nie zdarzyło, żeby surface zniknął, nawet przy dwugodzinnych sesjach z szukaniem najkrótszej ścieżki w grafie zupełnym. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 22 Kwietnia 2013 Udostępnij Opublikowano 22 Kwietnia 2013 Mój komp słabo je trawi i nieraz znikają. Dlatego staram się używać jak najmniejszych surfaców i wsadzać jak najwięcej sprawdzeń czy istnieją. Zauważyłem że czasem po zniknięciu nic się nie chce na surfejsach rysować chyba że dam po resecie screen_refresh() co mnie bardzo dziwi :D 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ę