Help us understand the problem. What is going on with this article?

FungusのLocalizationで日本語を取り扱う方法

Fungusを使った複数言語対応

Fungusとは、会話イベントをGUIで作成可能なUnityアセットです。このアセットでは、ローカライズを手軽に行うことができる仕組みが取り入れられています。基本的な使い方は、以下の公式動画をご参考にしてください。
13 Fungus localisation

ここで、SayダイアログやMenuダイアログに日本語を入力しExport Localization Fileを行った後、Excelで開くと文字化けが起きます。今回はその対処法を記述します。

UTF-8を用いた対処法

文字化けの原因は、文字コードが異なるためです。そのため、UTF-8に指定してcsvファイルを出力します。この際、bom付きのUTF-8にすることで、Excelでスムーズにcsvファイルを読み取ることができます。
Assets/Fungus/Scripts/EditorにあるLocalizationEditor.csを開きます。60行目付近にある
public virtual void ExportLocalizationFile(Localization localization)の中に、追記を行います。

LocalizationEditor.cs
public virtual void ExportLocalizationFile(Localization localization)
        {
            string path = EditorUtility.SaveFilePanelInProject("Export Localization File",
                                                               "localization.csv",
                                                               "csv",
                                                               "Please enter a filename to save the localization file to");
            if (path.Length == 0) 
            {
                return;
            }

            string csvData = localization.GetCSVData();

            ///
            /// 日本語用に追記
            var encoding = new UTF8Encoding(true);
            ///

            File.WriteAllText(path, csvData, encoding);
            AssetDatabase.ImportAsset(path);

            TextAsset textAsset = AssetDatabase.LoadAssetAtPath(path, typeof(TextAsset)) as TextAsset;
            if (textAsset != null)
            {
                localization.LocalizationFile = textAsset;
            }

            ShowNotification(localization);
        }

主な変更点はvar encoding = new UTF8Encoding(true);を追加した点と、File.WriteAllText(path, csvData, encoding);のように第3引数を与えた点です。

変更を保存した後、再度Export Localization Fileボタンをクリックすることで、bom付きUTF-8でcsvファイルが出力され、Excelでそのまま編集が行えます。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした