名古屋でアプリ・VR開発を行っています
ワクワクできるゲームをガンガン開発リリース中!

【Unity】スクリプトファイルの文字コードを直したい話

こんにちは、SAT-BOXのコアラです

最近、スクリプトをUnityから見た時に日本語が文字化けしているのに気が付きました
f:id:sat-box:20210202084234p:plain

これだけなら実害はあまりないので放置してたんですが、Macでプロジェクトを開いたらエラーが吐かれてしまい、直す羽目になりました

調べたところ、Unity2020.2系列で作成したC#スクリプト文字コードが、UTF-8じゃなくなっていたのが原因でした
Unity2020.2以前のバージョンで作成したものは文字化けしなかったので、Unity2020.2からの謎変更と決めつけて話を進めます

原因が分かったところで、2つ対策をする必要があります

対策1

まず1つは、作成されるスクリプトファイルの文字コードUTF-8に変更することですが、こちらのブログの方法で完全に対策することができました
DEBUG.LOG (スクリプトファイルのutf-8変換)

スクリプトを作成した時に文字コードUTF-8に設定してくれます
ありがとうございます

これで新規のスクリプトは直るんですが、既存のスクリプトは変わっていません

対策2

2つ目の対策として、手動で文字コードを変えていきます
文字コードが変えれるテキストエディタなら何でもいいですが、今回はVisual Studioを使います

手順1
ファイル>保存オプションの詳細設定 を開く(英語だとAdvanced Save Options...)
f:id:sat-box:20210202091150p:plain
普段は、Visual Studio Community 2017を使っているんですが、「保存オプションの詳細設定」がなかったのでVisual Studio Community 2015で行いました

手順2
文字コードUTF-8に変更して上書き保存
f:id:sat-box:20210202091213p:plain

これでUnityから見た時に文字化けしていなければ完了です
多いと面倒なので、新しくプロジェクトを作ったら対策1をすぐにしておきたいですね

以上です