Skocz do zawartości

Poradnik: Jak dodać kolor do GM'a


Rekomendowane odpowiedzi

Napisałem taki króciutki poradnik, który tym co nie wiedzą - pokaże jak dodać kolory np. takie jak brązowy lub pomarańczowy (bo takowych w GM'ie nie ma) lub dowolnych odcieni kolorów etc.

 

No więc start:

 

1. Trzeba sobie w kodzie szesnastkowym wybrać kolor. Dla tych co nie wiedzą skąd takowy wytrzasnąć daję linki do dwóch generatorów i zbioru dwustu szesnastu podstawowych gotowców:

Rozbudowany generator (download, osobiście polecam, podejrzewam również, że otrzymać kod dziesiętny można bezpośrednio w tym programie, ale nie jestem pewien): KLIK

Prymitywny generator (online): KLIK

Gotowce (online): KLIK

2. Gdy już mamy kolor w kodzie szesnastkowym to teraz trzeba go przekonwertować na kod dziesiętny, który właśnie obsługuje GM. Jak to zrobić?

Wchodzimy TU, wpisujemy nasz kod szesnastkowym w pierwszym polu od góry (Hexadecimal) i klikamy pierwszy od góry button (Hex to Dec). Wynik (kod dziesiętny) otrzymujemy w pierwszym polu od dołu (Decimal).

 

I co teraz? Mamy już kod dziesiętny naszego koloru. Jak go użyć? To proste. Podam 3 sposoby:

 

Sposób ze stałą (wygodniejszy na masowe używanie koloru):

1. Wchodzimy w Global Game Settings --> Zakładka "Constants"

2. Klikamy Add.

3. W pole name wpisujemy nazwe swojego koloru, np. c_superkoloro

4. W pole value wpisujemy kod dziesiętny koloru

No i gotowe teraz po prostu gdy chcemy go użyć to dajemy:

GML
draw_set_color(c_superkoloro);

Ba, i nawet będzie zabarwiony na brązowo (tak jak inne kolory) :P

 

 

Sposób ze zmienną (też wygodniejszy na masowe używanie koloru, ale mniej praktyczny i nie zabarwia się na brązowo :D):

GML
//Create:

mojsuperkolor= //<-- tutaj kod dziesietny ktory otrzymalismy</span></span></span></span>

Lub jeżeli chcemy tak bardziej, żeby pasowało do reszty to:

GML
//Create:

c_mojsuperkolor=//<-- tutaj kod dziesietny</span></span></span></span>

No i potem żeby użyć:

GML
draw_set_color(mojsuperkolor);

Lub zależy jak kto dał:

GML
draw_set_color(c_mojsuperkolor);

 

 

Sposób bezpośredni (dobry na jednorazowe używanie), tutaj po prostu i jak sama nazwa mówi - bezpośrednio dajemy:

GML
draw_set_color(kod dziesietny koloru ktory otrzymalismy);

 

Pozdrawiam, i liczę na to że chociaż jakiejś jednej osobie się to przyda :P

 

 

Duże P.S. - Przeoczyłem jedną istotną rzecz: w konwerterze z kodu szesnastkowego należy usunąć znak '#' i zastąpić go znakiem '$' !!!

Odnośnik do komentarza
Udostępnij na innych stronach

zanim zaczniecie go besztać, po prostu uznajcie to za przykład używania stałych w GMie, których nie każdy umie lub nawet nie wie co i po co to jest :)

Odnośnik do komentarza
Udostępnij na innych stronach

  • Administratorzy

Nie, wygodniej jest napisać tak:

 

GML
draw_set_color($FFCC00);

 

GM przyjmuje wartości szesnastkowo, można więc normalnie kolory jak w HTMLu podawać :) Ew. z painta, do tego wystarczy kalkulator windowsa który zamienia Dec na Hex :)

 

 

2. Gdy już mamy kolor w kodzie szesnastkowym to teraz trzeba go przekonwertować na kod dziesiętny, który właśnie obsługuje GM. Jak to zrobić?

 

Jak napisałem, GM obsługuje szesnastkowe liczby, z prefixem $ :)

Odnośnik do komentarza
Udostępnij na innych stronach

patrzaj Pan:

Sposób ze stałą (wygodniejszy na masowe używanie koloru):

 

1. Wchodzimy w Global Game Settings --> Zakładka "Constants"

2. Klikamy Add.

3. W pole name wpisujemy nazwe swojego koloru, np. c_superkoloro

4. W pole value wpisujemy kod dziesiętny koloru

 

:P

Odnośnik do komentarza
Udostępnij na innych stronach

o fakt!

 

to mnie zmyliło

Sposób ze zmienną (też wygodniejszy na masowe używanie koloru, ale mniej praktyczny i nie zabarwia się na brązowo :D):

GML
//Create:

mojsuperkolor= //<-- tutaj kod dziesietny ktory otrzymalismy</span></span></span></span>

:P

Odnośnik do komentarza
Udostępnij na innych stronach

Chciałeś poszpanić, a tylko pokazałeś swoją niewiedzę... ^_^

 

Jak już gnysek napisał, zamiast konwertować hexy na liczbę, i z liczby robić kolor używając make_color_rgb wystarczy `poprzedzić liczbę szesnastkową dolarem, i nie musisz się męczyć w żadne zamiany, czy używanie make_color_rgb - tylko kopiujesz kod koloru z generatora/z głowy i zamieniasz # na $.

 

No ale niech będzie, ktoś mógł o tym nie wiedzieć.

Masz 7/10 za chęci.

 

Ed: Poza tym, jeśli chcesz nie deklarować koloru jako stałej tylko jako zmienną, to użył byś chociaż globalvara, a nie na lokalnych jedziesz... ;|

Odnośnik do komentarza
Udostępnij na innych stronach

mimo, że to jest jakiś przykład użycia stałych, tytuł tematu mówi "Jak dodać kolor do GMa" (nie rozumiem apostrofu - mamy czytać ga?!)

w tej roli jest bardzo słabo. są takie 3 fajne funkcje: make_color_rgb, make_color_hsv i merge_color. użycie tej pierwszej lub tej ostatniej naprawdę jest niebo prostsze od tych wszystkich zabiegów, które tu proponujesz.

 

make_color_rgb + paint = tada, kolory w GMie.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli wychodzi na to że się przechwalam, to przypadkiem, bo taki mój cel nie jest.

 

Po prostu, lubię wytykiwać najdrobniejsze błędy - taki już jestem.

Może się nie zgodzisz z tym co napisałem :) ?

Obie opcje, które podał, można było zrobić szybciej/lepiej/łatwiej.

 

Plus to, że nie ukrywam - Michał (i Grela/ingen) mnie zawsze wkurzał swoją osobą.

 

Ja Was w sumie też nie rozumiem. Mówię, co można było zrobić lepiej, a od razu mi odwalają że wszytko krytykuję itepe.

Ja tylko wskazuję co można poprawić/zmienić, a to, jak ta rzekoma "krytykę" wykorzystana, to, jak już kiedyś mówiłem, problem autora gry/przykładu/zapowiedzi/czego ja się jeszcze czepiam.

 

W sumie, gdyby autorem tematu nie był Micha, to mój poprzedni post wyglądałby tak samo jak teraz, tylko bez pierwszego zdania (jak to Michał przyznał się chyba w shoutboxie, chce pokazać, że czegoś się nauczył i nie zadaje głupich pytań, ale nikt mu nie chce pomóc (to było chyba w sprawie rozłączanie się 39dlla - i jednak, wystarczyło samemu spokojnie pomyśleć, i sobie z tym poradził)).

 

PS: Michał: nie wiem, zrób tetrisa, ai topdown, drzewka ala almora, czy animację szkieletową ala Soldat.

Możliwości zrobienia czegoś dobrego masz mnóstwo, a starasz się na silę zrobić coś, czego są naprawdę spore szanse, że się ktoś przyczepi (jak ten "remote control").

Odnośnik do komentarza
Udostępnij na innych stronach

Dajcie mi ktoś jakiś ładny zielony w tym zapisany XD

Nie łapie o co biega.

Roki pierwsze 2 zera po '$' są kolorem niebieskim następne zielonym a ostatnie czerwonym

GML
draw_set_color($00FF00); //to jest jaskrawo zielony to samo co make_color_rgb(0,255,0);</span>

jak chcesz zmienić odcień na ciemniejszy to liczbę'FF' zamieniasz na mniejszą np.

GML
draw_set_color($00EE00); //ten jest najjaśniejszy z nich

draw_set_color($00DD00);

draw_set_color($00CC00);

draw_set_color($00BB00);

draw_set_color($00AA00);

draw_set_color($009900);

draw_set_color($008800);

draw_set_color($007700);

draw_set_color($006600);

draw_set_color($005500);

draw_set_color($004400); //ten najciemniejszy</span>

Odnośnik do komentarza
Udostępnij na innych stronach

Jakby co - jeśli chcesz dać jescze jaśniejszy, zwiększasz resztę kolorów.

Czyli np (zapisuje ze spacjami, aby było lepiej widać :P)

//ciemny czerwony

$11 00 00

$22 00 00

$99 00 00

$aa 00 00

$bb 00 00

$ff 00 00 //to jest taki zwykly, "normalny", intensywny czerwony, jaki masz np. w paintcie w palecie kolorow

$ff 11 11

$ff 22 22

$ff 99 99

$ff aa aa

$ff ee ee

//jasny czerwony

Odnośnik do komentarza
Udostępnij na innych stronach

niet nobody, niebieskim, bo hexy (i binarki) "liczymy" od końca :P

a więc w rzeczywistości kolor to BGR w zapisie liczbowym w GMie

Odnośnik do komentarza
Udostępnij na innych stronach

niet nobody, niebieskim, bo hexy (i binarki) "liczymy" od końca tongue2.gif

a więc w rzeczywistości kolor to BGR

Co Ty gadasz... O.o ?

 

W Photoshopie jak i w generatorach online które zarzucił Michał mamy kolory RGB, a nie żadne BGR.

Kolory od tyłu to bmp zapisuje, lol.

 

Dawidds, nie chodzi mi o poprawianie błędów, tego czepić się nie mogę. Chodzi mi o to, że już drugi lub trzeci raz widzę jak piszesz "weź nie szpanuj", co zdradza trochę twój zachwyt czyimiś umiejętnościami. Tyle =) .
Dawaj linki.
Odnośnik do komentarza
Udostępnij na innych stronach

Dawidds:

 

-> Chciałeś poszpanić, a tylko pokazałeś swoją niewiedzę... ^_^

-> A po 2. To nie szpań tak - jedynie przepisałeś to, co powiedział PsichiX na pętlę :3

-> Reszta pozostaje dla myśli, że "jeszcze kiedyś w to zagram", ew. dla szpanu.

-> YYG też szpani - po ... robią jakiekolwiek zabezpieczenia - przecie i tak ktoś je w końcu złamie.

-> Nie szpanuj dry.gif

 

Wiem, bardzo stare niektóre, ale tych dwóch najnowszych odnaleźć nie mogę :( .

Odnośnik do komentarza
Udostępnij na innych stronach

Kolory od tyłu to bmp zapisuje, lol.

Jeśli sposób upakowania pixeli w BMP przelozyc na postac liczbowa to przyjmie ona wtedy wlasciwy dla logicznego toku myslenia wartosc RGB gdzie kolejnosc skladowych zgadza sie z zapisem szesnastowych czesci.

 

A to oznacza, że GM jest naprawdę jakiś dziwny

GM nie jest dziwny, tak juz po prostu w naturze tych liczb jest :)

Odnośnik do komentarza
Udostępnij na innych stronach

Eh, dopiero zrozumiałem, o co Ci chodzi z tym bgr.

 

Slash, tylko zauważ, że te zdania, które podałeś, nie są powiedziane w takim sensie, o jaki Ci chodzi (ew. o jaki mnie oskarżasz).

Drugiego nie bierzemy pod uwagę - to też do Michała było :3

 

Ed: Michał: instance_nearest_ext to było chyba.

No ale dobra, postaram się nie nadużywać tego typu zwrotów, nie wywyższać się i nie obrażać innych ;3

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