コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

2019-03-18から1日間の記事一覧

【Unity】NotSupportedException: Encoding 932 data could not be found. Make sure you have correct international codeset assembly installed and enabled.

はじめに using System.Text; using UnityEngine; public class Example : MonoBehaviour { private void Start() { var encoding = Encoding.GetEncoding( "shift_jis" ); var count = encoding.GetByteCount( "ピカチュウ" ); Debug.Log( count ); } } 上…

【Unity】uGUI で Canvas Renderer の「Cull Transparent Mesh」をオンにすると透明なオブジェクトの描画をスキップできる

概要 例えば uGUI で透明な Image をシーンに配置した場合 画面には何も表示されないですが Overdraw を見てみると、うっすら赤くなっており 描画の処理は走ってしまっていることがわかります (透明な Image を10個重ねてみるとこのようにわかりやすくなり…

【Unity】ゲームオブジェクトにアタッチされているすべての MonoBehaviour の情報を JSON で出力する方法

概要 using System.Linq; using UnityEngine; public class Example : MonoBehaviour { private void Start() { var list = GetComponents<MonoBehaviour>() .Select( c => JsonUtility.ToJson( c, true ) ) ; var str = string.Join( "\n", list ); Debug.Log( str ); } } </monobehaviour>…

【Unity】uGUI の Toggle の isOn をスクリプトから設定する時に onValueChanged を発生しない拡張メソッド

ソースコード using UnityEngine.UI; public static class ToggleExt { public static void SetIsOnWithoutCallback( this Toggle self, bool isOn ) { var onValueChanged = self.onValueChanged; self.onValueChanged = new Toggle.ToggleEvent(); self.is…

【Unity】すべての子オブジェクトを親オブジェクトから切り離す「Transform.DetachChildren」

概要 using UnityEngine; public class Example : MonoBehaviour { private void Start() { transform.DetachChildren(); } } 「Transform.DetachChildren」を使用することで すべての子オブジェクトを 親オブジェクトから切り離すことができます 孫オブジェ…

【Unity】新規プロジェクトを作成する時に選択できるテンプレートを自作する方法

はじめに Unity で新規プロジェクトを作成する時に選択できるテンプレートは自作できます 検証環境 Windows 10 Unity 2018.3.7f1 Unity Hub 1.6.0 作成方法 【Unity のインストール先】\Editor\Data\Resources\PackageManager\ProjectTemplates 上記のフォル…