UGUI multiple을 통해 분할된 이미지를 동적으로 전환
대상 
· 케민 소프트웨어를 이용한 간편한 스피릿팩커 방법http://caitsithware.com/wordpress/archives/263
• spriteMode를 멀티플렉스로 만들고 싶은 사람
차리다 
· Resources 폴더 만들기
・multiple을 통해 분할된 그림을 상기 폴더에 넣기
 
※ 분할 방법은 생략합니다.원한다면 다시 한 번 보충하겠습니다
넣다 
• 여러 개의 할당된 1장의 그림을 하나하나 분리해서 읽기
・↑ 그리고 Dictionaly로 읽는 것 관리
・ 대상 이미지는 Resuorse 폴더 아래에 있어야 합니다.    static Dictionary<string, Dictionary<string, Sprite>> spriteMstDic 
        = new Dictionary<string, Dictionary<string, Sprite>>();
    //読み込み;
    static void loadSprite(string atlasName)
    {
        if(spriteMstDic.ContainsKey(atlasName))return;
        Sprite[] s = Resources.LoadAll<Sprite>(atlasName);
        int len = s.Length;        
        if(len > 0){
            Dictionary<string , Sprite> sDic = new Dictionary<string,Sprite>();
            for( int i = 0 ; i < len ; i++){
                sDic[s[i].name] = s[i];
            }
            spriteMstDic[atlasName] = sDic;
            Debug.Log(atlasName + "アトラスを読み込みました");
        }
사용 
・ 아틀라스의 이름과 분할된 이름을 원하는 그림 획득하기;
• 예: 아틀라스 이름:sprite Atlas sprite 이름:texture001 ← 파일 이름이 헷갈려서 이해하기 어려워    static Sprite getSprite( string atlasName , string spriteName)
    {
        //既に登録されているならそのまま返す;
        if (spriteMstDic.ContainsKey(atlasName))
        {
            Dictionary<string , Sprite> sDic = spriteMstDic[atlasName];
            if(sDic.ContainsKey(spriteName)){
                return sDic[spriteName];
            }else{
                Debug.Log(atlasName + "に" + spriteName + "は含まれていません");
                return null;
            }
        }
        else
        {
            // 読み込んでおく
            loadAtlas(atlasName);
            //再度呼び出してみる;
            return getSprite(atlasName , spriteName);
        }
    }
                
                    
        
    
    
    
    
    
                
                
                
                
                    
                        
                            
                            
                            Reference
                            
                            이 문제에 관하여(UGUI multiple을 통해 분할된 이미지를 동적으로 전환), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
                                
                                https://qiita.com/yaggi0118/items/04a0419290716f111cce
                            
                            
                            
                                텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                            
                            
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                            
                            
                        
                    
                
                
                
            
· Resources 폴더 만들기
・multiple을 통해 분할된 그림을 상기 폴더에 넣기
 ※ 분할 방법은 생략합니다.원한다면 다시 한 번 보충하겠습니다
넣다 
• 여러 개의 할당된 1장의 그림을 하나하나 분리해서 읽기
・↑ 그리고 Dictionaly로 읽는 것 관리
・ 대상 이미지는 Resuorse 폴더 아래에 있어야 합니다.    static Dictionary<string, Dictionary<string, Sprite>> spriteMstDic 
        = new Dictionary<string, Dictionary<string, Sprite>>();
    //読み込み;
    static void loadSprite(string atlasName)
    {
        if(spriteMstDic.ContainsKey(atlasName))return;
        Sprite[] s = Resources.LoadAll<Sprite>(atlasName);
        int len = s.Length;        
        if(len > 0){
            Dictionary<string , Sprite> sDic = new Dictionary<string,Sprite>();
            for( int i = 0 ; i < len ; i++){
                sDic[s[i].name] = s[i];
            }
            spriteMstDic[atlasName] = sDic;
            Debug.Log(atlasName + "アトラスを読み込みました");
        }
사용 
・ 아틀라스의 이름과 분할된 이름을 원하는 그림 획득하기;
• 예: 아틀라스 이름:sprite Atlas sprite 이름:texture001 ← 파일 이름이 헷갈려서 이해하기 어려워    static Sprite getSprite( string atlasName , string spriteName)
    {
        //既に登録されているならそのまま返す;
        if (spriteMstDic.ContainsKey(atlasName))
        {
            Dictionary<string , Sprite> sDic = spriteMstDic[atlasName];
            if(sDic.ContainsKey(spriteName)){
                return sDic[spriteName];
            }else{
                Debug.Log(atlasName + "に" + spriteName + "は含まれていません");
                return null;
            }
        }
        else
        {
            // 読み込んでおく
            loadAtlas(atlasName);
            //再度呼び出してみる;
            return getSprite(atlasName , spriteName);
        }
    }
                
                    
        
    
    
    
    
    
                
                
                
                
                    
                        
                            
                            
                            Reference
                            
                            이 문제에 관하여(UGUI multiple을 통해 분할된 이미지를 동적으로 전환), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
                                
                                https://qiita.com/yaggi0118/items/04a0419290716f111cce
                            
                            
                            
                                텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                            
                            
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                            
                            
                        
                    
                
                
                
            
    static Dictionary<string, Dictionary<string, Sprite>> spriteMstDic 
        = new Dictionary<string, Dictionary<string, Sprite>>();
    //読み込み;
    static void loadSprite(string atlasName)
    {
        if(spriteMstDic.ContainsKey(atlasName))return;
        Sprite[] s = Resources.LoadAll<Sprite>(atlasName);
        int len = s.Length;        
        if(len > 0){
            Dictionary<string , Sprite> sDic = new Dictionary<string,Sprite>();
            for( int i = 0 ; i < len ; i++){
                sDic[s[i].name] = s[i];
            }
            spriteMstDic[atlasName] = sDic;
            Debug.Log(atlasName + "アトラスを読み込みました");
        }
・ 아틀라스의 이름과 분할된 이름을 원하는 그림 획득하기;
• 예: 아틀라스 이름:sprite Atlas sprite 이름:texture001 ← 파일 이름이 헷갈려서 이해하기 어려워
    static Sprite getSprite( string atlasName , string spriteName)
    {
        //既に登録されているならそのまま返す;
        if (spriteMstDic.ContainsKey(atlasName))
        {
            Dictionary<string , Sprite> sDic = spriteMstDic[atlasName];
            if(sDic.ContainsKey(spriteName)){
                return sDic[spriteName];
            }else{
                Debug.Log(atlasName + "に" + spriteName + "は含まれていません");
                return null;
            }
        }
        else
        {
            // 読み込んでおく
            loadAtlas(atlasName);
            //再度呼び出してみる;
            return getSprite(atlasName , spriteName);
        }
    }
                Reference
이 문제에 관하여(UGUI multiple을 통해 분할된 이미지를 동적으로 전환), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yaggi0118/items/04a0419290716f111cce텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)