Skocz do zawartości

pozbawienie kolorów


kriso99

Rekomendowane odpowiedzi

Witam,

wskazał by mi ktoś drogę jak zrobić aby wszystko było w barwach czarno-białych, a tylko w niektórych miejscach(tam gdzie by pojawiał sie specjalny object) wszystko było by w normalnych kolorach.

da sie to zrobić jakoś na surface, czy raczej shadery

Odnośnik do komentarza
Udostępnij na innych stronach

bo po to służy GPU, żeby go do takich rzeczy zaprzęgać? jest szybszy, wydajniej procesuje operacje na fragmentach, maniejszy narzut operacji niż CPU.\

 

Topic: https://www.dropbox.com/s/4rcye9ojwip9jzc/G...aleFragment.gmz

Odnośnik do komentarza
Udostępnij na innych stronach

bo po to służy GPU, żeby go do takich rzeczy zaprzęgać? jest szybszy, wydajniej procesuje operacje na fragmentach, maniejszy narzut operacji niż CPU.\
Dajesz młodemu coś czego nie rozumie i nie skorzysta z tego nic po za skopiowaniem i wrzuceniem do swojego projektu. Brawo.
Odnośnik do komentarza
Udostępnij na innych stronach

Dajesz młodemu coś czego nie rozumie i nie skorzysta z tego nic po za skopiowaniem i wrzuceniem do swojego projektu. Brawo.

Dziękuję.

Odnośnik do komentarza
Udostępnij na innych stronach

Przychodzą mi 2 prostsze rozwiązania do głowy by początkujący to zrozumiał, więc nie widzę dlaczego nie da się tego zrobić.

 

Nikomu też nie zabraniam używania gotowców. Róbta co chceta. Zwracam jednak uwagę, że udzielanie odpowiedzi bez wyjaśnienia rozwiązania do niczego nie prowadzi.

Odnośnik do komentarza
Udostępnij na innych stronach

Dajesz młodemu coś czego nie rozumie i nie skorzysta z tego nic po za skopiowaniem i wrzuceniem do swojego projektu. Brawo.

no chyba ty!

w tym momencie mnie uraziłeś, na tym forum to TY jesteś młody, a ja to ładnie w przeciągu miesiąca ogarne i bedę mógł szpanować shaderami w każdym projekcie, ty zostaniesz przy jakichś przestarzałych metodach

pozdrawiam

Odnośnik do komentarza
Udostępnij na innych stronach

  • Filar Społeczności
no chyba ty!

w tym momencie mnie uraziłeś, na tym forum to TY jesteś młody, a ja to ładnie w przeciągu miesiąca ogarne i bedę mógł szpanować shaderami w każdym projekcie, ty zostaniesz przy jakichś przestarzałych metodach

pozdrawiam

podejrzewam, że "młody" = brak skilla w tym wypadku

 

shadery to chyba też nie jest wynalazek 2013 roku, co?

Odnośnik do komentarza
Udostępnij na innych stronach

Przychodzą mi 2 prostsze rozwiązania do głowy by początkujący to zrozumiał, więc nie widzę dlaczego nie da się tego zrobić.

jakie? napisz wać, bądź lepszy :>

i tak to nie zmieni faktu, że shaderami to:

a ) najbardziej wydajny sposób;

b ) najprostrzy do uzyskania (porównaj kod GML mojego przykładu, a tamtego skryptu).

 

Panie, jak trolować to chociaż z klasą, a nie bezmyślne bzdury klepiesz :)

Odnośnik do komentarza
Udostępnij na innych stronach

Dajesz młodemu coś czego nie rozumie i nie skorzysta z tego nic po za skopiowaniem i wrzuceniem do swojego projektu

Słaby argument, skorzystanie z przykładu wymaga, prędzej czy później, zrozumienia jego działania.

+nauczenie się shaderów przyniesie wymierne wyniki z upływem czasu, można uzyskać na nich efekty praktycznie nieosiągalne przy pomocy samego GM-a, więc im wcześniej zacznie się z nich korzystać, tym lepiej.

Odnośnik do komentarza
Udostępnij na innych stronach

podejrzewam, że "młody" = brak skilla w tym wypadku
Dokładnie. :)

 

Panie, jak trolować to chociaż z klasą, a nie bezmyślne bzdury klepiesz :)
Nie rozumiem Cię, wyraziłem swoje zdanie na ten temat dość jasno, nie widzę "bzdury" w tym co napisałem. Również to, że się z Tobą nie zgadzam nie znaczy, że trolluję. Co to, przedszkole?

 

a ) najbardziej wydajny sposób;
Spoko. Zgadzam się, ale nie rozumiesz o co mi dalej chodzi. Bo:
b ) najprostszy do uzyskania (porównaj kod GML mojego przykładu, a tamtego skryptu).
Wcale nie jest najłatwiejszy dla osoby, która nie wie jak pisze się shadery, nie mówiąc nic o tym jak to wszystko działa itd., itp.. Co podejrzewam jest do niczego potrzebne w jego produkcji.

 

jakie? napisz wać, bądź lepszy :>
Jeśli mam to zrobić tylko by próbować Ci coś udowadniać to wybacz, ale nie mam potrzeby bycia lepszym.

 

Słaby argument, skorzystanie z przykładu wymaga, prędzej czy później, zrozumienia jego działania.

+nauczenie się shaderów przyniesie wymierne wyniki z upływem czasu, można uzyskać na nich efekty praktycznie nieosiągalne przy pomocy samego GM-a, więc im wcześniej zacznie się z nich korzystać, tym lepiej.

Zrozumienie wymaga dodatkowej wiedzy, której zdobycie może trochę zająć co niekoniecznie przekłada się na to czego akurat potrzebujemy w swojej produkcji jak i na czas jaki chcemy poświęcić na to.
Odnośnik do komentarza
Udostępnij na innych stronach

[...] podejżewam [...]

Błąd ortograficzny :thumbsup: Co to, przedszkole?

 

@Topic: Shadery to najlepsze rozwiązanie, jednak trzeba pamiętać, że starsze karty graficzne nie obsługują niektórych. W przypadku pisania z myślą o najstarszych komputerach, surface byłyby wtedy bardziej kompatybilne.

 

EDIT: Jestem dumny z twojej poprawy błęda. Co nie oznacza, rze możesz nie zwracać se uwagi na nie potem.

Odnośnik do komentarza
Udostępnij na innych stronach

nie ma już kart graficznych, nie obsługujących shader model 2, a właściwie to na rynku od lat produkuje się karty ze znacznie większym modelem. szansa na to, że jakiś komp nie wspiera shaderów jest tak niska, że nie opłaca się zwracać na nie uwagi, tj. kompy mające dekadę żywotu się nie liczą - shadery to nadal najlepsza i najbardziej odpowiednia metoda. ktoś ich nie rozumie? jak robie przykłady, opisuję kod. w przykładzie do tego tematu opisałem chyba każdą linijkę kodu - da się to ogarnąć.

Odnośnik do komentarza
Udostępnij na innych stronach

nie ma już kart graficznych, nie obsługujących shader model 2, a właściwie to na rynku od lat produkuje się karty ze znacznie większym modelem. szansa na to, że jakiś komp nie wspiera shaderów jest tak niska, że nie opłaca się zwracać na nie uwagi, tj. kompy mające dekadę żywotu się nie liczą - shadery to nadal najlepsza i najbardziej odpowiednia metoda. ktoś ich nie rozumie? jak robie przykłady, opisuję kod. w przykładzie do tego tematu opisałem chyba każdą linijkę kodu - da się to ogarnąć.

Co do kart graficznych - ale za to są takie, co nie obsługują Shader Model 3. Niestety, moja karta graficzna też (ATI Radeon 9550)

Odnośnik do komentarza
Udostępnij na innych stronach

na szczęście GM korzysta i będzie korzystał z shader model 2, gdyż mobile i webgl są z nim bardzo dobrze kompatybilne :)

Odnośnik do komentarza
Udostępnij na innych stronach

  • 1 miesiąc temu...

niwim, nie mam jak testowac HTML5 gdyż nei mam eksportera :/ trza sprawdzic, a jak pojawia sie bledy kompilacji shadera to podsylajcie, wtedy bede mogl w razie czego poprawiac do dzialania z HTML5 :)

Odnośnik do komentarza
Udostępnij na innych stronach

Od groma rozwiązań na oficjalnym forum. Nie wiem po co zaprzęgać do tego GPU.

 

http://gmc.yoyogames.com/index.php?showtop...61#entry3584424

http://www.gmlscripts.com/script/sprite_desaturate_gm8

 

Ten pierwszy to przerobka tego drugiego. Niestety pierwszy nie dziala pod GM:S, tzn. działa ale efekt jest zupełnie inny (coś jakby "negatyw" zamiast desaturyzacji). Ktoś może podpowiedzieć dlaczego? W GM8 działa prawidłowo.

Odnośnik do komentarza
Udostępnij na innych stronach

niwim, nie mam jak testowac HTML5 gdyż nei mam eksportera :/ trza sprawdzic, a jak pojawia sie bledy kompilacji shadera to podsylajcie, wtedy bede mogl w razie czego poprawiac do dzialania z HTML5 :)

Efekt jest taki, że czy to na FF czy na Chromie jest szare okno, które reaguje zmianą koloru na żółty po najechaniu kursorem myszy w lewej dolnej części okna.

Kompilator pokazuje:

GML
"C:\Users\tomek\AppData\Roaming\GameMaker-Studio\GMAssetCompiler.exe" /c /m=html5 /nodnd /obfuscate /wt /html5folder="html5game" /nocache_html5 /o="C:\Users\tomek\AppData\Local\Temp\gm_ttt_42001\GrayScaleFragment" /HTMLRunner="C:\Users\tomek\AppData\Roaming\GameMaker-Studio\scripts.html5.zip" /debug /config="Default" /tgt=32 /tg="C:\Users\tomek\AppData\Local\Temp\gm_ttt_42001\\TextureGroups.txt" /to="C:\Users\tomek\AppData\Local\Temp\gm_ttt_42001\\TextureOptions.txt" /obob=True /obpp=False /obru=True /obes=False /i=3 /cvm /tp=2048 /mv=1 /iv=0 /rv=0 /bv=1224 /gn="GrayScaleFragment" /td="C:\Users\tomek\AppData\Local\Temp" /cd="C:\Users\tomek\Documents\GameMaker\Cache" /optionsini="C:\Users\tomek\AppData\Local\Temp\gm_ttt_42001\GrayScaleFragment.ini" "F:\Documents and Settings\tomek1234\Pulpit\ROBOTKI\Puzzle\przyklady\GrayScaleFragment.gmx\GrayScaleFragment.project.gmx"

 

Saving HTML5 file... C:\Users\tomek\AppData\Local\Temp\gm_ttt_42001\GrayScaleFragment\html5game\GrayScaleFragment.js

0 Compressing texture... writing texture GrayScaleFragment_texture_0.png...

Compiling - gml_Object_objImage_Draw_0

Compiling - gml_Object_objOverlay_Create_0

Compiling - gml_Object_objOverlay_Draw_0

Compiling - gml_Object_objFilter_Create_0

Compiling - gml_Object_objFilter_Step_0

Compiling - gml_Object_objFilter_Draw_0

Compiling - gml_Room_roomStart_Create

Debug version skipping obfuscation...

Done!

Stats : GMA : Instance=2, Global=0

-----------------------------------------------------------

executing C:\Users\tomek\AppData\Local\Temp\gm_ttt_42001\GrayScaleFragment\index.html

-----------------------------------------------------------

Compile finished: 20:56:32

 

Debugger pokazuje coś takiego:

GML
WebGL Enabled!

Max Texture Size=null

Windows Detected(0)

Firefox detected

Browser CAN play OGG

Loading: html5game/GrayScaleFragment_texture_0.png

Loading: html5game/particles/IDR_GIF2.png

Loading: html5game/particles/IDR_GIF3.png

Loading: html5game/particles/IDR_GIF4.png

Loading: html5game/particles/IDR_GIF5.png

Loading: html5game/particles/IDR_GIF6.png

Loading: html5game/particles/IDR_GIF7.png

Loading: html5game/particles/IDR_GIF8.png

Loading: html5game/particles/IDR_GIF9.png

Loading: html5game/particles/IDR_GIF10.png

Loading: html5game/particles/IDR_GIF11.png

Loading: html5game/particles/IDR_GIF12.png

Loading: html5game/particles/IDR_GIF13.png

Loading: html5game/particles/IDR_GIF14.png

Loading: html5game/particles/IDR_GIF15.png

ImageLoaded: http://127.0.0.1:51268/html5game/GrayScaleFragment_texture_0.png

ImageLoaded: http://127.0.0.1:51268/html5game/particles/IDR_GIF2.png

ImageLoaded: http://127.0.0.1:51268/html5game/particles/IDR_GIF3.png

ImageLoaded: http://127.0.0.1:51268/html5game/particles/IDR_GIF5.png

ImageLoaded: http://127.0.0.1:51268/html5game/particles/IDR_GIF4.png

ImageLoaded: http://127.0.0.1:51268/html5game/particles/IDR_GIF6.png

ImageLoaded: http://127.0.0.1:51268/html5game/particles/IDR_GIF7.png

ImageLoaded: http://127.0.0.1:51268/html5game/particles/IDR_GIF8.png

ImageLoaded: http://127.0.0.1:51268/html5game/particles/IDR_GIF9.png

ImageLoaded: http://127.0.0.1:51268/html5game/particles/IDR_GIF10.png

ImageLoaded: http://127.0.0.1:51268/html5game/particles/IDR_GIF11.png

ImageLoaded: http://127.0.0.1:51268/html5game/particles/IDR_GIF12.png

ImageLoaded: http://127.0.0.1:51268/html5game/particles/IDR_GIF13.png

ImageLoaded: http://127.0.0.1:51268/html5game/particles/IDR_GIF14.png

ImageLoaded: http://127.0.0.1:51268/html5game/particles/IDR_GIF15.png</span>

 

i trzy obiekty:

100000 (z widocznym kolorowym sprajtem)

GML
Object objImage

x 0.000

y 0.000

depth 0.000

visible true

persistent false

vspeed 0.000

direction 0.000

speed 0.000

friction 0.000

gravity 0.000

gravity_direction 270.000

sprite_index sprImage

image_index 0.000

image_speed 1.000

image_blend -1

image_alpha 1.000

image_xscale 1.000

image_yscale 1.000

mask_index -1.000

path_index -1.000

path_position 0.000

path_speed 0.000

path_scale 1.000

path_orientation 0.000

path_endaction 0.000

path_end 0.000

path_xstart 0.000

path_ystart 0.000

alarm[0] -1

alarm[1] -1

alarm[2] -1

alarm[3] -1

alarm[4] -1

alarm[5] -1

alarm[6] -1

alarm[7] -1

alarm[8] -1

alarm[9] -1

alarm[10] -1

alarm[11] -1

 

1000000

GML
Object objOverlay

x 0.000

y 0.000

depth -1000.000

visible true

persistent false

vspeed 0.000

direction 0.000

speed 0.000

friction 0.000

gravity 0.000

gravity_direction 270.000

sprite_index

image_index 496.000

image_speed 1.000

image_blend 16777215

image_alpha 1.000

image_xscale 1.000

image_yscale 1.000

mask_index -1.000

path_index -1.000

path_position 0.000

path_speed 0.000

path_scale 1.000

path_orientation 0.000

path_endaction 0.000

path_end 0.000

path_xstart 0.000

path_ystart 0.000

alarm[0] -1

alarm[1] -1

alarm[2] -1

alarm[3] -1

alarm[4] -1

alarm[5] -1

alarm[6] -1

alarm[7] -1

alarm[8] -1

alarm[9] -1

alarm[10] -1

alarm[11] -1

 

i trzeci 1000001

GML
Object objFilter

x 610.000

y 281.000

depth -100.000

visible true

persistent false

vspeed 0.000

direction 0.000

speed 0.000

friction 0.000

gravity 0.000

gravity_direction 270.000

sprite_index sprFilter

image_index 0.000

image_speed 1.000

image_blend 16777215

image_alpha 1.000

image_xscale 3.000

image_yscale 3.000

mask_index -1.000

path_index -1.000

path_position 0.000

path_speed 0.000

path_scale 1.000

path_orientation 0.000

path_endaction 0.000

path_end 0.000

path_xstart 0.000

path_ystart 0.000

alarm[0] -1

alarm[1] -1

alarm[2] -1

alarm[3] -1

alarm[4] -1

alarm[5] -1

alarm[6] -1

alarm[7] -1

alarm[8] -1

alarm[9] -1

alarm[10] -1

alarm[11] -1

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