Adriann Opublikowano 25 Sierpnia 2018 Udostępnij Opublikowano 25 Sierpnia 2018 Uszanowanko misiaczki! Mam malutki problemik, a dokładniej dodałem shader modyfikujący grafikę, znajduje się on w najbardziej wysuniętym do przodu obiekcie. Wszystko działa doskonale do momentu dodania drugiego obiektu rysującego coś również w Draw_Gui, kiedy znajduje się nad shaderem to nie działa a pod w ogóle się nie rysuje. Zwykłe draw w stylu animacji gracza czy tekstem nad nim działa wyśmienicie. Co poradzić mogę na to? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 25 Sierpnia 2018 Administratorzy Udostępnij Opublikowano 25 Sierpnia 2018 Na pewno robisz dobrze shader_set i shader_reset ? no i pytanie jakie mają depth te oba obiekty (przypominam, że nawet jak wszystkie mają 0, to draw gui rysuje się dopiero po wszystkich normalnych draw). Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Adriann Opublikowano 25 Sierpnia 2018 Autor Udostępnij Opublikowano 25 Sierpnia 2018 Obiekt z shaderem ma -999, jak obiekt rysujący ustawię na -9999 to nie zniekształca a jak np -99 to w ogóle nic nie rysuje. Przypominam jedno i drugie znajduje się w Draw_GUI. A co do poprawności shaderu to nie wiem, chyba ok skoro działa wszystko poza tym jednym eventem;) Całość działa mniej więcej tak: if shader_on=1 { surface_set_target(surf0) draw_surface_part(application_surface, 0, 0, 400, 256,view_xview[0],view_yview[0]) surface_reset_target() shader_set(shd_xbr_0); shader_set_uniform_f(uni_0_resolution, var_view_width*1, var_view_height*1); surface_set_target(surf1) draw_surface_stretched(surf0, 0, 0, var_view_width*scale, var_view_height*scale); surface_reset_target() shader_reset(); shader_set(shd_xbr_1); shader_set_uniform_f(uni_1_resolution, var_view_width*scale, var_view_height*scale); surface_set_target(surf2) draw_surface(surf1, 0, 0); surface_reset_target() shader_reset(); shader_set(shd_xbr_2); shader_set_uniform_f(uni_2_resolution, var_view_width*scale, var_view_height*scale); surface_set_target(surf3) draw_surface(surf2, 0, 0); surface_reset_target() shader_reset(); shader_set(shd_sharper); shader_set_uniform_f(uni_sh_resolution, var_view_width*scale, var_view_height*scale); draw_surface_stretched(surf3, 0, 0, var_view_width*force_scale, var_view_height*force_scale); shader_reset(); view_surface_id[0]=surf0 } else { draw_surface_stretched(surf0, 0, 0, var_view_width*force_scale, var_view_height*force_scale); view_surface_id[0]=surf0 } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 27 Sierpnia 2018 Administratorzy Udostępnij Opublikowano 27 Sierpnia 2018 Jak przypisujesz surface do view, to w ogóle nie powinno kolidować z GUI. Chyba, że robisz to w evencie draw gui, to robisz to wtedy źle, bo GUI jest niezależne od view jeśli dobrze kojarzę. Może tutaj jest problem. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Adriann Opublikowano 27 Sierpnia 2018 Autor Udostępnij Opublikowano 27 Sierpnia 2018 Jest w draw_gui bo w zwykłym drawie rysowanie shadera kończy się czarnym ekranem:P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 29 Sierpnia 2018 Administratorzy Udostępnij Opublikowano 29 Sierpnia 2018 a nie możesz na application surface w post draw zrobić ? (i wyłączyć automatyczne rysowanie application surface). 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ę