도드넷
도드의 유니티 API#5 - hex 컬러 코드값을 rgb로 반환해서 color 객체만들기!! 본문
Already sold soul to a pony.
도드의 유니티 API#5
- hex 컬러 코드값을 rgb로 반환해서 color 객체만들기!!
39. HEX코드 컬러변경 함수
// HEX COLOR SYSTEM WOOT!!
public static Color hexToColor(string hex)
{
hex = hex.Replace("0x", "");//in case the string is formatted 0xFFFFFF
hex = hex.Replace("#", "");//in case the string is formatted #FFFFFF
byte a = 255;//assume fully visible unless specified in hex
byte r = byte.Parse(hex.Substring(0, 2), System.Globalization.NumberStyles.HexNumber);
byte g = byte.Parse(hex.Substring(2, 2), System.Globalization.NumberStyles.HexNumber);
byte b = byte.Parse(hex.Substring(4, 2), System.Globalization.NumberStyles.HexNumber);
//Only use alpha if the string has enough characters
if (hex.Length == 8)
{
a = byte.Parse(hex.Substring(6, 2), System.Globalization.NumberStyles.HexNumber);
}
return new Color32(r, g, b, a);
}
실행 예시
if (gameObject.tag == "Player")
{
GetComponent<SpriteOutline>().color = hexToColor("16FF6E00");
}
else if (gameObject.tag == "Enemy")
{
GetComponent<SpriteOutline>().color = hexToColor("FF0000FF");
}
다운로드
개ㅋ꿀 그냥 추가해서 쓰면됨. 알파값 버그가 있어서 4,2 -> 6,2로 바꿨는데 별문제없기를...
근데 솔직히 이런함수는 유니티 컬러 부분에서 지원해줘야되는거 아닌가 싶음. 어쨋든 유저 제작 함수로 해결가능.
'창고 > 나만의 게임 제작' 카테고리의 다른 글
유니티 C# LIST ArgumentOutOfRangeException Argument is out of range 에러! (1) | 2016.09.07 |
---|---|
도드의 유니티 API#6 - ONGUI CLICK 만드는 방법 UI 우클릭시 발동 (1) | 2016.09.06 |
유니티 오류 해결법 - Object Reference not set to an instance of an object (0) | 2016.09.04 |
도드의 유니티 API#4 - 유니티 C# 기본중 기본문법 정리 (0) | 2016.09.01 |
도드 게임즈#8 - 유니티 유닛 명령 시스템과 광클-중복실행 금지 디버깅. (0) | 2016.09.01 |