Tworzę grę na iOS przy użyciu bibliotek cocos2d.Dodawanie kolorów (kolory) Razem jak farba (niebieski + żółty = zielony itp.)
Powiedzmy, że masz dwa obiekty, które mają dwie oddzielne kolory - zdefiniowane w RGB jako
Blue: 0,0,255
Yellow: 255,255,0
chcę dodać niebieski i żółty do zielonego.
Aby to wszystko skomplikować, powiedzmy, że obiekt Niebieski jest większy niż obiekt Żółty (ze względu na argument, powiedzmy, że stosunek wynosi 2: 1), dodaję dwa razy więcej niebieskiego niż żółtego - jak obliczyć ten nowy (jasnozielony) kolor poprawnie.
Rozumiem LAB * Przestrzeń kolorów jest przydatny dla tego rodzaju „naturalnych kolorów” typu rzeczy, ale nie jestem pewien, jak go używać - szczególnie w kontekście Cocos2d obiektu, który (AFAIK) jest ograniczone do używanie RGB w jego schematach kolorystycznych.
Byłbym wdzięczny za praktyczną pomoc w implementacji tego. Dzięki stosy!
21/4 Aktualizacja: Tak więc w LAB * niebieski + żółty ≠ zielony (co ma sens, gdy widzisz they're at opposite ends of the same channel). To naprawdę trudny problem z dyskusją na temat SO. Wydaje się, że ostateczną odpowiedzią jest użycie metody Kubelka-Munk, której używa kawałek oprogramowania Open Source o nazwie Krita. Nigdzie nie mogę tego znaleźć (ani formuła, ani sam kod).
This question ma a link, który używa HSL do pracy w podobny sposób do malowania. Zamierzam spróbować sprawdzić, czy to działa, i zwrócę tu wynik.
W międzyczasie if anyone knows how to implement Kubelka-Munk lub gdzie mogę znaleźć kod, aby to zrobić, lub inne rozwiązanie, byłbym bardzo, bardzo podekscytowany!
'Niebieski + Yellow' nie jest' Green', jakbyś się, że w przedszkolu. To, o co tak naprawdę chodzi, to prosty, substruktywny model kolorów, taki jak CMYK, gdzie '1 - Cyjan - Żółty ≈ Zielony' (z' Cyan ≈ Niebieski'). – leftaroundabout