【3Dゲームエンジン】Unity質問スレッド33at GAMEDEV【3Dゲームエンジン】Unity質問スレッド33 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト133:名前は開発中のものです。 17/12/27 01:19:10.80 2+M/n1Lm.net public static class RGBto { public static void HSL(int R, int G, int B, out int H, out int S, out int L){ int Max = Mathf.Max (R, G, B); int Min = Mathf.Min (R, G, B); if (Max == Min) { H = 360; } else if (G == Max) { H = 60 * (B - R) / (Max - Min) + 120; } else if (B == Max) { H = 60 * (R - G) / (Max - Min) + 240; } else { H = 60 * (G - B) / (Max - Min); if (H < 0) H = H + 360; } if (Max == 0 || Min == 255){ S = 0; } else { S = 255 * (Max - Min) / (255 - Mathf.Abs(Max + Min - 255)); } L = (Max + Min)/2; } 134:名前は開発中のものです。 17/12/27 01:19:30.81 2+M/n1Lm.net public static void HSV(int R, int G, int B, out int H, out int S, out int V){ int Max = Mathf.Max (R, G, B); int Min = Mathf.Min (R, G, B); if (Max == Min) { H = 360; } else if (G == Max) { H = 60 * (B - R) / (Max - Min) + 120; } else if (B == Max) { H = 60 * (R - G) / (Max - Min) + 240; } else { H = 60 * (G - B) / (Max - Min); if (H < 0) H = H + 360; } if (Max == 0){ S = 0; } else { S = 255 * (Max - Min) / Max; } V = Max; } } Hを求めるところはもっとまとめられるかも・・・ Hのみ0~360(360で色相未定義) RGB,SLVは0~255 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch