コガネブログ

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

【Unity】Currently selected scripting backend (IL2CPP) is not installed

概要 PC ビルドしようとした時に、Build Settings ウィンドウに Currently selected scripting backend (IL2CPP) is not installed と表示されている場合、 Unity Hub の Installs タブから「Add Component」を選択して 「Window Build Support (IL2CPP)」を…

【Unity】UnityException: Can not sign the application, Unable to sign the application; please provide passwords!

概要 UnityException: Can not sign the application Unable to sign the application; please provide passwords! Android ビルド時に上記のエラーが発生する場合、 Player Settings で keystore のパスワードを入力してからビルドする必要があります

【Unity】EditorUtility.SetDirty が正常に動作しない場合

概要 Undo.RecordObject( tilemap, "Refresh All Tiles" ); tilemap.RefreshAllTiles(); EditorUtility.SetDirty( tilemap ); Undo.RecordObject を併用すると正常に動作する模様 参考サイト様 https://forum.unity.com/threads/editorutility-setdirty-brok…

【Unity】TextMesh Pro でハイパーリンクが正常に動作しない場合

概要 Canvas の Render Mode が Screen Space - Overlay の場合は var index = TMP_TextUtilities.FindIntersectingLink( text, position, null ); TMP_TextUtilities.FindIntersectingLink の第3引数に null を設定します Canvas の Render Mode が Screen …

【Unity】Script 'XXXX' will not be compiled because it exists outside the Assets folder and does not to belong to any assembly definition file.

概要 Script 'XXXX' will not be compiled because it exists outside the Assets folder and does not to belong to any assembly definition file. Packages に存在するスクリプトが Assembly Definition File に属していない場合 上記の警告が出力されま…

【Unity】The character used for Ellipsis is not available in font asset [XXXX].

はじめに The character used for Ellipsis is not available in font asset [XXXX]. TextMesh Pro を使用していたら上記の警告が出力される現象に遭遇した 解決方法 TextMesh Pro に含まれている LineBreaking Following Characters.txt LineBreaking Leadi…

【Unity】ScriptableObject のクラス名を変更すると AssetDatabase.FindAssets( "t:XXXX" ) でヒットしなくなる

検証環境 Unity 2018.4.8f1 概要 リネーム前 using UnityEngine; public class Example : ScriptableObject { } 例えば Example という名前の ScriptableObject のクラスを定義して すでにアセットを作成している場合、 Project ビューで「t:Example」形式で…

【Unity】ScriptableObject の private 変数に設定した値は Unity エディタの再生を停止しても保持されてしまう

検証環境 Unity 2018.4.8f1 概要 using UnityEngine; public class Example : ScriptableObject { private string[] m_list; public string[] List { get { // はじめてアクセスされたら配列を作成する if ( m_list == null || m_list.Length <= 0 ) { m_lis…

【Unity】ScriptableObject の private な文字列や配列は初期値が null ではなく空文字列や空配列になる

検証環境 Unity 2018.4.8f1 概要 using UnityEngine; public class TestScene : MonoBehaviour { private string m_text; private string[] m_array; private void OnEnable() { Debug.Log( m_text == null ); // True Debug.Log( m_array == null ); // Tru…

【Unity】strings.xml を配置してもアプリ名がローカライズされない場合

概要 I2 Localization を Unity プロジェクトに追加している場合、 strings.xml を配置してもアプリ名がローカライズされません I2 Localization でアプリ名のローカライズ方法を指定する必要があります

【Unity】Found null component in ZenjectBinding on object 'XXXX'

概要 Null なコンポーネントを Zenject でバインド使用とした場合、 Found null component in ZenjectBinding on object 'XXXX' 上記の警告が出力されます

【Unity】Unity 2019.2.2f1 でシーンファイルを開く時に VSCode が起動してしまう場合の対処方法

概要 Unity 2019.2.2f1 でシーンファイルを開く時に VSCode が起動してしまう場合、 Unity メニューの「Window > Package Manager」を選択して 「Visual Studio Code Editor」の項目を開いて「1.1.2」を選択して 「Update to 1.1.2」ボタンを押すと直る もし…

【Unity】GitHub で管理しているパッケージのライセンス表記が「View license」になってしまう場合の対処方法

はじめに MIT ライセンスを適用した Unity のパッケージのライセンス表記が 「View license」になってしまったり、 shields.io の表記が「not identifiable by github」になってしまう現象に遭遇した 対処方法 「LICENSE.meta」を削除したら正常に表示される…

【Unity】Unity IAP を正常にインポートできない場合

概要 コンパイルエラーが存在する場合は Unity IAP を正常にインポートできないので、 コンパイルエラーを修正してからインポートする必要がある

【Unity】error CS0115: 'XXXX.Reset()': no suitable method found to override

概要 using UnityEngine.UI; public class Example : InputField { protected override void Reset() { } } 上記のようなコードを書いてアプリをビルドしたら error CS0115: 'XXXX.Reset()': no suitable method found to override 上記のビルドエラーが発生…

【Unity】コンパイル完了時や Unity 再生時に Game ビューの Scale が 1 にリセットされる現象を防ぐエディタ拡張

はじめに 上記のフォーラムで公開されているスクリプトを使用することで コンパイル完了時や Unity 再生時に Game ビューの Scale が 1 にリセットされる現象を防ぐことができます ソースコード 上記のスクリプトを Unity プロジェクトの「Editor」フォルダ…

【Unity】シェーダにおける UV スクロールがカクつく場合、計算式を頂点シェーダからフラグメントシェーダに移動すると直る

概要 例えば、上記のように頂点シェーダで UV スクロールの計算を行うと マテリアルを割り当てたオブジェクトによっては UV スクロールがカクついてしまいます その場合は、フラグメントシェーダで UV スクロールの計算を行うと直ります

【Unity】Shader warning in 'XXXX': Output value 'XXXX' is not completely initialized at XXXX

概要 例えば、上記のシェーダのように、初期化されていない構造体のパラメータが存在すると Shader warning in 'Unlit/NewUnlitShader': Output value 'vert' is not completely initialized at line 36 (on d3d11) このような警告が出力されます

【Unity】iOS ビルドで Automatically Sign をオンにしても Xcode プロジェクトの Automatically manage signing がオンにならない時に暫定対応したこと

概要 iOS の PlayerSettings で Automatically Sign をオンにして iOS ビルドしても Xcode プロジェクトの Automatically manage signing がオンにならない現象に遭遇した TEAM_ID="【Signing Team ID】" PBXPROJ_PATH="【Xcode プロジェクトのビルド先】/Un…

【Unity】Unity Hub が勝手にアップデートされないようにする方法

概要 Unity Hub 2.0.0 が個人的に使いづらかったので、 Unity Hub 1.6.1 にダウングレードしたが、 Unity Hub 終了時に勝手にアップデートされてしまう状態だった C:\Program Files\Unity Hub\resources 上記フォルダ内の「app-update.yml」を削除したら Uni…

【Unity】Splash Screen に指定した画像が引き伸ばされて表示されてしまう場合の対処法

概要 Splash Screen に指定した画像が引き伸ばされて表示されてしまう場合 画像の Mesh Type を「Full Rect」に変更すると 正しいサイズで表示されるようになります 参考サイト様 https://forum.unity.com/threads/why-is-my-splash-screen-logo-stretched.4…

【Unity】Could not create asset from Assets/XXXX: File could not be read

概要 Could not create asset from Assets/XXXX: File could not be read ImportFBX Errors: Couldn't read file YYYY Unexpected file type Mac に Jenkins 環境を構築して、Git から Unity プロジェクトを Clone してビルドしたところ 3D モデルやテクスチ…

【Unity】error: exportArchive: No valid iOS Distribution certificate found.

はじめに error: exportArchive: No valid iOS Distribution certificate found. error: exportArchive: No profiles for 'com.XXXX.XXXX' were found xcodebuild で -exportArchive する時に上記のエラーが発生する現象に遭遇したので 修正するためにどんな…

【Unity】Unity プロジェクトが開けなくなった時に対応したこと

はじめに Unity Hub から古い Unity プロジェクト(Unity 5 時代)が開けなくなった Unity プロジェクトの「Library」フォルダや「Temp」フォルダを削除しても開けない 調査 Editor.log を見てみた LICENSE SYSTEM [20190101 0:0:0] Received XXXX LICENSE S…

【Unity】Detected multiple Library folders within your project.

概要 Detected multiple Library folders within your project. Did you copy a project into this project? Use "Export Package" to move assets between projects. You need to remove the followinf Library folder(s) from your project you can open i…

【Unity】The shader is null or unsupported on this device

アセット はじめに using Colorful; using UnityEngine; public class Example : MonoBehaviour { private void Start() { var camera = Camera.main; var filter = camera.gameObject.AddComponent<LookupFilter3D>(); var tex = Resources.Load<Texture2D>( "InstagramFast/Inkwell" )</texture2d></lookupfilter3d>…

【Unity】Unity 5.4.4f1 で Android ビルドしようとしたらできなかった

概要 CommandInvokationFailure: Unable to list target platforms. Please make sure the android sdk path is correct. See the Console for more details. C:/Program Files/Java/jdk1.8.0_65\bin\java.exe -Xmx2048M -Dcom.android.sdkmanager.toolsdir=…

【Unity】incorrect number of arguments to numeric-type constructor

概要 incorrect number of arguments to numeric-type constructor シェーダで上記のエラーが発生した場合は float3 col = float3(_Color); コンストラクタの引数の指定が float3 col = float3(_Color.r, _Color.g, _Color.b); 間違っている可能性があります…

【Unity】Error: Error while saving blame file, build will continue

概要 Error: Error while saving blame file, build will continue Error: 隕∫エ?繧ソ繧、繝?uses-sdk"縺ォ髢「騾」莉倥¢繧峨l縺ヲ縺?k螻樊?ァ"tools:overrideLibrary"縺ョ謗・鬆ュ霎?tools"縺後ヰ繧、繝ウ繝峨&繧後※縺?∪縺帙s縲? UnityEngine.GUIUtility:ProcessEve…

【Unity】'vert': output parameter 'o' not completely initialized

概要 'vert': output parameter 'o' not completely initialized 上記のエラーが発生した場合は void vert(inout appdata_full v, out Input o) { UNITY_INITIALIZE_OUTPUT(Input, o); 頂点シェーダに UNITY_INITIALIZE_OUTPUT の呼び出しを追加する必要があ…