I2 Localization의 내장시 메모
                                            
                                                
                                                
                                                
                                                
                                                
                                                 11148 단어  AssetUnity3Dlocalization
                    
Term은 기준이 되는 언어의 문언 그대로가 편하고, 예 「계속합니까?」
검색하면 버그로 표시됩니다.
어딘가에 낡은 LanguageSource를 컴퍼넌트에 붙인 채로 하면 그쪽이 불리는, 마음대로 업데이트되지 않는다(수수하게 빠졌다)
Localize.cs
string hi = LocalizationManager.GetTranslation( "こんにちは" );
            Localize.MainTranslation = Localize.MainTranslation.Replace("{hoge}", hi);
위와 같은 스크립팅
언어 전환하면 term에 「안녕하세요」의 설정치를 넣고 있으면
영어 : "{hoge} suzuking"이 "Hello suzuking"으로 바뀝니다.
일본어: 「{hoge} 스즈키」는 「안녕 스즈키」로 바뀝니다
Term은 전각? . , 「」등은 사용할 수 없다
대체로 정규 표현식을 사용하여 다음과 같이 대체하면 편리합니다.

검색
더블코테이션+전각+더블코테이션
()가 캡처 범위 $1
"([^\x01-\x7E]+)"
("*[^\x01-\x7E]*")
대체 내용
LocalizationManager.GetTranslation("$1")
LocalizationManager.GetTranslation($1)
동적 텍스트에 대응하는 방법


Canvas_MatchOperation.cs
public string GetL()
        {
             return _selectedNode.Get_LTeamName();
        }
        public string GetR()
        {
            return _selectedNode.Get_RTeamName();
        }
        public bool MatchL;
        private void Select_L()
        {
            MatchL = true;
             var dialog = DartsDialogSC.PopDialog(DartsDialogSC.DialogType.Type_2);
            dialog.SetText_Title(LocalizationManager.GetTranslation("確認"));
            //dialog.SetText_TpicUp("「" + _selectedNode.Get_LTeamName() + "」の勝利でよろしいですか?");
          //GetTranslationの第四引数applyParameters = true, 第五引数GameObject localParametersRoot = nullにRegisterGlobalParameters書き換えたの設定するとGetParameterValueメソッドで設定した値が反映される
            dialog.SetText_TpicUp(LocalizationManager.GetTranslation("の勝利でよろしいですか",true,0,true,true,I2Para,null));
            dialog.SetText_TpicUnder("<color=#ff0000><size=18>"+LocalizationManager.GetTranslation("この操作は戻せません")+"</size></color>");
            dialog.OnCloseEndEvent_Button01 += Operation_L;
        }
        private void Select_R()
        {
            MatchL = false;
           var dialog = DartsDialogSC.PopDialog(DartsDialogSC.DialogType.Type_2);
            dialog.SetText_Title(LocalizationManager.GetTranslation("確認"));
            dialog.SetText_TpicUp(LocalizationManager.GetTranslation("の勝利でよろしいですか", true, 0, true, true, I2Para, null));
            //dialog.SetText_TpicUp("「" + _selectedNode.Get_RTeamName() + "」の勝利でよろしいですか?");
            dialog.SetText_TpicUnder("<color=#ff0000><size=18>" + LocalizationManager.GetTranslation("この操作は戻せません") + "</size></color>");
            dialog.OnCloseEndEvent_Button01 += Operation_R;
        }
LocalizationGlobalParameters.cs
public class LocalizationGlobalParameters : RegisterGlobalParameters
{
    [SerializeField]
    private GameObject match;
    public override string GetParameterValue(string ParamName)
    {
        if (ParamName == "PLAYER")
            {
            if (match.GetComponent<Canvas_MatchOperation>().MatchL)
            {
                return match.GetComponent<Canvas_MatchOperation>().GetL();
            }else
            {![uploading-0]()
                return match.GetComponent<Canvas_MatchOperation>().GetR();
            }
        }
        if (ParamName == "NUM PLAYERS")
            return 5.ToString();
        return null;
    }
}
요약
public string GetR()
        {
            return "太郎";
}
↓
{[PLAYER]}="太郎";
↓
``
//GetTranslation의 네 번째 인수 applyParameters = true, 다섯 번째 인수
dialog.SetText_TpicUp(LocalizationManager.GetTranslation("승리를 원하십니까?",true,0,true,true,I2Para,null));
``
{[PLAYER]}의 승리를 원하십니까? → 타로의 승리로 좋습니까?
Are you sure you want {[PLAYER]} to win?→Are you sure you want 타로 to win?
로 지역화됨
Reference
이 문제에 관하여(I2 Localization의 내장시 메모), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/monolith8/items/6da2f7f737c45674774d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)