iczigo Opublikowano 19 Grudnia 2010 Opublikowano 19 Grudnia 2010 Dajmy na to że mamy kolor w GM 1212311 i można pozyskać z niego wartości R, G i B. Ale jak później te wartości złączyć z powrotem tak aby otrzymać ciąg liczb oznaczający początkowy kolor?
kt1117 Opublikowano 19 Grudnia 2010 Opublikowano 19 Grudnia 2010 Proszę: GML make_color_rgb(czerwony , zielony , niebieski)
Konrad-GM Opublikowano 19 Grudnia 2010 Opublikowano 19 Grudnia 2010 Wystarczą operacje bitowe. #define c_rgba(r, g, b, a) (((r&0xff)<<24)|((g&0xff)<<16)|((b&0xff)<<8)|((a&0xff)<<0))
TheMarcQ Opublikowano 19 Grudnia 2010 Opublikowano 19 Grudnia 2010 jesli gml to: wl_kolor=string( R )+string( G )+string( B )
Konrad-GM Opublikowano 19 Grudnia 2010 Opublikowano 19 Grudnia 2010 jesli gml to: wl_kolor=string( R )+string( G )+string( B ) LOL Raczej nie chodziło o formę '255255255' (biały) tylko '16777215' (Także biały [RGB])
Administratorzy gnysek Opublikowano 19 Grudnia 2010 Administratorzy Opublikowano 19 Grudnia 2010 jesli gml to: wl_kolor=string( R )+string( G )+string( B ) Raczej R * 65 536 + G * 256 + B.
iczigo Opublikowano 19 Grudnia 2010 Autor Opublikowano 19 Grudnia 2010 Dzięki wszystkim coś pokombinuje.
Tymon Opublikowano 19 Grudnia 2010 Opublikowano 19 Grudnia 2010 #define c_rgba(r, g, b, a) (((r&0xff)<<24)|((g&0xff)<<16)|((b&0xff)<<8)|((a&0xff)<<0)) Raczej R * 65 536 + G * 256 + B.Macie szczęście, że chodzi o grafikę 32 bitową - inaczej bym się przyczepił.
Administratorzy gnysek Opublikowano 20 Grudnia 2010 Administratorzy Opublikowano 20 Grudnia 2010 Dzięki wszystkim coś pokombinuje. Nie kombinuj, tylko masz: r = kolor >> 16; g = (kolor & $FF00) >> 8; b = kolor & $FF; Jedna z optymalniejszych wersji.
pablo1517 Opublikowano 20 Grudnia 2010 Opublikowano 20 Grudnia 2010 Wystarczą operacje bitowe. #define c_rgba(r, g, b, a) (((r&0xff)<<24)|((g&0xff)<<16)|((b&0xff)<<8)|((a&0xff)<<0)) Przecież on pyta o GML o.O
Konrad-GM Opublikowano 20 Grudnia 2010 Opublikowano 20 Grudnia 2010 Przecież on pyta o GML o.O GML także obsługuje operacje bitowe, na jedno wychodzi :)
Administratorzy gnysek Opublikowano 20 Grudnia 2010 Administratorzy Opublikowano 20 Grudnia 2010 tylko zamiast 0x dajemy $
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ę