コガネブログ

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

2016-01-01から1ヶ月間の記事一覧

【Unity】ルートに存在するゲームオブジェクトの配列を返す関数

using System.Linq; using UnityEngine; public static class GameObjectUtils { /// <summary> /// ルートに存在するゲームオブジェクトの配列を返します /// </summary> public static GameObject[] GetRootList() { return GameObject .FindObjectsOfType<GameObject>() .Where( c => c.t</gameobject>…

【Unity】Supplied NxActorDesc is not valid. createActor returns NULL.

Supplied NxActorDesc is not valid. createActor returns NULL. NGUIでUIを作成しておりゲームを開始したところ 上記のエラーログが出力されることがありました NGUIのオブジェクトのスケーリング値に0.0001を設定していたところを 0.001に変更したところ上…

【Unity】Unity 5.2 新機能 「Selection.selectionChanged」

Unity 5.2 から「Selection.selectionChanged」が追加されました このイベントにコールバック関数を登録しておくと エディタ上で選択中の項目が変更された時に呼び出されます using UnityEditor; using UnityEngine; public static class ExampleClass { [In…

【Unity】動画再生アセット「Easy Movie Texture」紹介($65.00)

使用目的 アプリでムービー再生中にバックグラウンドで アセットバンドルのダウンロードを行うこと Unityに標準で用意されている動画再生用のAPIである Handheld.PlayFullScreenMovieを使用すると 動画再生中にスレッドの処理を止めてしまう Unityの処理を止…

【Unity】iOSアプリの申請時に発生したエラー「ERROR ITMS-90339」

ERROR ITMS-90339: "This bundle is invalid. The Info.plist contains an invalid key 'CFBundleResourceSpecification’in bundle XXXX [XXXX.app] iOSアプリの申請時に遭遇しました Unity 5.2.2f1で作成したiOSアプリを申請すると発生するようです Unityを…

【Unity】iOSアプリの申請時に発生したエラー「ERROR ITMS-90122」

ERROR ITMS-90122: "Invalid Executable Size. The size of your app's executable file 'XXXX.app/XXXX' is 81477632 bytes, which exceeds the maximum allowed size of 80MB" Unity 5.2.2p1で作成したiOSアプリの申請時に遭遇しました アプリの容量が80MB…

【Unity】iOSアプリの申請時に発生したエラー「ERROR ITMS-90474」

ERROR ITMS-90474: "Invalid Bundle. iPad Multitasking support requires these orientations: 'UIInterfaceOrientationPortrait,UIInterfaceOrientationPortraitUpsideDown, UIInterfaceOrientationLandscapeLeft,UIInterfaceOrientationLandscapeRight'. …

【Unity】JsonUtility でログ出力の効率化

概要 public class Character { public int Id; public string Name; public int[] SkillIdList; } 例えばこのクラスのインスタンスが存在して、 Debug.Log で各パラメータの情報を出力する場合 Debug.Log( chara.Id ); Debug.Log( chara.Name ); foreach ( …

【Unity】Unity 5.3 新機能「ISerializationCallbackReceiver」

Unity 5.3 から「UnityEngine.ISerializationCallbackReceiver」が追加されました このインターフェイスを実装することで JsonUtilityでシリアライズした時やデシリアライズした時に呼び出される コールバック関数を実装することができます public class Cha…

【Unity】Unity 5.3 新機能「ColorUtility」

Unity 5.3 から「UnityEngine.ColorUtility」が追加されました Color型のインスタンスをカラーコードの文字列に変換したり カラーコードの文字列をColor型のインスタンスに変換したりできます ToHtmlStringRGB Debug.Log( ColorUtility.ToHtmlStringRGB( Col…

【Unity】Unity 5.3 新機能「DelayedAttribute」

Unity 5.3 から「UnityEngine.DelayedAttribute」が追加されました using UnityEngine; public class ExampleClass : MonoBehaviour { public int value; void Update() { Debug.Log( value ); } } 例えば上記のようなクラスをオブジェクトにアタッチして エ…

【Unity】Unity 5.3 新機能「WaitUntil」

Unity 5.3 から「UnityEngine.WaitUntil」が追加されました 条件を満たさない間コルーチンの実行を中断できます using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { int frame; IEnumerator Start() { yield return…

【Unity】Unity 5.3 新機能「WaitWhile」

Unity 5.3 から「UnityEngine.WaitWhile」が追加されました 条件を満たす間コルーチンの実行を中断できます using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { int frame; IEnumerator Start() { yield return new…

【Unity】CSV と ScriptableObject どちらの形式でマスターデータを管理したほうが読み込み速度が高速になるか検証しました

はじめに 現在開発中のゲームでマスターデータをCSVで管理しているのですが、 マスターデータをCSVで管理する方法と ScriptableObjectで管理する方法のどちらがより高速に データを読み込むことができるのかが気になったので調査してみました 検証環境 Unity…

【Unity】Unity 5.3 新機能「Preserve」

Unity 5.3 から「UnityEngine.Scripting.Preserve」が追加されました Unityはビルド開始時にプロジェクト内の未使用のコードを削除しますが 例えばリフレクションを使用して呼び出している関数が存在する場合 その関数も削除されてしまう可能性があります Pr…

【Unity】Unity 5.3 新機能「SceneAsset」

Unity 5.3 から「UnityEditor.SceneAsset」が追加されました このクラスを使用してエディタ拡張を行うことで シーンファイルのInspectorを拡張したり EditorGUILayout.ObjectFieldと併用することで Inspectorでシーンファイルをドラッグ&ドロップできるよう…

【Unity】Unity 5.3 新機能「ILogHandler」

Unity 5.3 から「UnityEngine.ILogHandler」が追加されました ILogHandlerを実装したクラスをLoggerクラスに設定することで ログ出力時の挙動を変えることができます public class MyLogHandler : ILogHandler { public void LogException( Exception except…

【Unity】Unity 5.3 新機能「Logger」

Unity 5.3 から「UnityEngine.Logger」が追加されました Debugクラス同様にログ出力が可能なクラスですが Debugクラスと比べると下記のような違いがあります ログにタグを付与することができる ログにフィルターをかけることができる ログ出力の機能のON/OFF…

【Unity】どんな型でも簡単に保存と読み込みができるPlayerPrefsの関数を定義する

概要 Unity 5.3 から追加された「UnityEngine.JsonUtility」と 「UnityEngine.PlayerPrefs」を組み合わせることで どんな型でも簡単に保存と読み込みができる PlayerPrefsの関数を定義することができます using UnityEngine; public static class PlayerPref…