バッテラが如く

プログラミングしましょ!

Unity

【Unity】Unity2022にアップグレードしたらInstantiateAttachedAssetでうまくプレハブが生成できなくなった件について

Unity (2022.1.23f1) はじめに エディタスクリプトで使うInstantiateAttachedAssetですが、 Unity2021 から2022にアップグレードしたら、うまく動作しなかったのでメモ。 事象 InstantiateAttachedAssetでプレハブ生成したゲームオブジェクトをクリックした…

【Unity】Unity2022にアップグレードしたら updateArtifactID is not valid for guidというのが出た件について

事象 Unity2022にアップグレートした時に以下のエラーログが発生していました。 updateArtifactID is not valid for guid 解決策 調べても分からなかったのですがReimportant Allで治りました。 古いプロジェクトのゴミが残っていたのだろうか。。謎ですが無…

【Unity】シーンビューのFieldOfViewが変えられない時の解決策

Unity (2021.3.2f1) はじめに シーンビューのカメラアイコンをクリックしたときに表示されるパネルに「Field of View」という項目がありますが、 いつの間にか何故かグレーアウトされて変更できなくなっていました。 これを変更できるようにするにはどうした…

【Unity】UniRXはプレイ状態でコンパイル(ホットリロード)すると動かない件

Unity (2021.3.2f1} UniRX (7.1.0) プレイ状態でコンパイル(ホットリロード)すると動かない 例としてUpdateを毎フレーム実行するUpdateAsObservableのコードで解説します。 this.UpdateAsObservable() .Subscribe(_ => { Debug.Log("Update!!!"); }, () => {…

【Unity】 The referenced script (Unknown) on this Behaviour is missing! が再コンパイル時のみ発生するよくわからない現象

事象 実行中に再コンパイルすると以下の警告が発生しました。 アタッチされていないときに出るやつですが今回のは特殊でした。 あと普通はダブルクリックで該当スクリプトに飛べるはずなのですが、 ダブルクリックするとエラーが発生するという恐ろしい現象…

【Unity】多重階層になっているオブジェクトを階層を開きつつ全選択する方法

右クリック → Select Children ※ショートカットキーなら(Shift + C) いちいち開くのだるかったので助かります。

【Unity】ヒエラルキーウィンドウで親オブジェクトが選択されないようにする方法

Unity (2021.3.2f1) はじめに 例えばこのように空のゲームオブジェクトに複数の子オブジェクトを持ってるとした場合 子オブジェクトをクリックすると親オブジェクトが選択状態になります。 その状態でもう1回クリックすると子オブジェクトが選択状態になり…

【Unity】ShaderGraphでOut(3)をOut(4)にしたい場合

Unity (2021.3.2f1) はじめに ShaderGraphのノードでOut(3)をOut(4)にして出力したい場合あったらどうしたらいいかというやつです。 端子を減らすのはSwizzleを使えば簡単にできたりしますが、増やすのは見つかりませんでした。 まぁ増やす時のデフォ値をど…

【Unity】シングルスデーセールが始まったぞ!幅広いカテゴリから選りすぐったアセットが50%オフ!! 人気の2D素材をピックアップ

はじめに 購入時は「クーポンコード」を必ず適用しよう 3700 Fantasy RPG Icons Pack Damage Numbers Pro D RPG topdown tilesets- pixelart assets MEGA BUNDLE 2D Hand Painted Tilesets BUNDLE 2D Platformer Tileset Dark - Complete Horror UI Dark Lan…

【Unity】シングルスデーセールが始まったぞ!幅広いカテゴリから選りすぐったアセットが50%オフ!! 人気の3D素材をピックアップ

はじめに 購入時は「クーポンコード」を必ず適用しよう Tokyo Stree K-POP SERIES: Mina Realistic House Interior&Exterio POLYGON Prototype - Low Poly 3D Art by Synt Low Poly Resort. Islandville Low Poly City. Asheville Low Poly Farm. HappyLifev…

【Unity】変数や関数を参照しているやつを一覧にして表示する方法 (VisualStudio)

Unity (2021.3.2f1) VisualStudio for Mac (v17.3.8) はじめに (旧)これまではどうしてたか? (新) すべての参照を検索 を使おう あとがき はじめに コードが肥大化してくると作った変数や関数がどこで参照されているかがよくわからなくなってきませんか? V…

【Unity】コンソールの表示行数を変える方法

Unity (2021.3.2f1) はじめに Debug.Logなどで表示されるコンソールさんですが、 デフォルトだとこのように2行1セットになっていると思います。 しかし2行目が毎回同じ文章になっていて正直1行表示したいなぁと思っていました。(UnityEngine・・・てやつ…

【Unity】Enumはulong(64bit)に型指定したらシリアライズできない件について

Enum型は少し変な仕様があったので備忘録として。 ulong指定はダメ 参考 あとがき ulong指定はダメ Enum型は型指定できるのですがulong(64bit)だとなぜかシリアライズできないということがわかりました。 enum EnumShort: ushort { A, } enum EnumULong : ul…

【Unity】重力をゲームオブジェクト個別に設定する方法

Unity (2021.3.2f1) はじめに rigidbodyで重量を有効すると全Rigidbodyに共通の重力がかかります。 これを一部のゲームオブジェクトに対して重量をかけるにはどうしたらいいかという話です。 重力を自前でかける useGravityをオフにし、仮想重力を毎フレーム…

【DoTween】DOTweenAnimationで終了後に別のDOTweenAnimationを実行したい場合

Unity (2021.3.2f1) はじめに DOTWeenPRO(有料版)ではインスペクターでアニメーションをセットすることができます(下図)。 さらにDOTWeenAnimationを複数アタッチすることもできるので、 拡大やフェードを同時にするといったことも簡単にできたりします。 し…

【Unity】自分自身を削除するスクリプトを作る (UIのイベントで削除する時に使える)

Unity (2021.3.2f1) はじめに Unity標準で自身を削除するというスクリプトがないので作ってみました。 スクリプトから使うことはないのですがインスペクター上から呼び出しもできるようになります。 スクリプトの実装 Destroy(gameObject)メソッドを使うと自…

【Unity】複数のCavasで表示順番を変えるには?

Unity (2021.3.2f1) はじめに ヒエラルキー上に複数のCanvasが存在しているときに表示順番を変えたいときがあります。 これをどうやるのかという記事です。 Sort Order を変える Canvasには[Sort Order]というパラメータがあり、この値を大きいほど手前にき…

【UniRX】UpdateAsObservableとAddToを併用した場合で破棄されたらOnCompletedは呼ばれるのか?

Unity (2021.3.2f1) はじめに UpdateAsObservableは破棄されるとOnCompletedを発行します。 AddToは破棄されるとOnCompletedを発行せずストリームを終了します。 これを併用した場合にどっちが優先されるのかを検証してみました。 結論 OnCompletedが呼ばれ…

【Unity】インスペクターに表示できるデータ型を調べてみる

Unity (2021.3.2f1) はじめに 基本型 配列 空の状態と要素の追加方法 newは不要 Dictionaryは使えません(まだ) その他 enumの初期値 Null許容値型は使えない 構造体やクラスはSerializableが必要 はじめに よく使うであろう各データ型がインスペクタで使える…

【Unity】スクリプトでマテリアルを変更する方法

いまさら感が強いですが忘れるのでメモしておきます。 スクリプトでマテリアルを変更 GetComponent<MeshRenderer>().material = マテリアル; MeshRendererを持つゲームオブジェクトであることが条件 Unity (2021.3.2f1)</meshrenderer>

【Unity】UVLayoutでメッシュのUVマップを確認できるようになった

Unity (2021.3.2f1) はじめに Unity上でメッシュのUVがどういう風にマッピングされているのか不明なため正しくテクスチャ表示できない時に原因探しが大変でした。 Blender上などのモデリングソフトが必要と思いきやUnity上で確認できることを知りました。 そ…

【Unity】POLYGON PrototypeのアセットがUPR環境だとピンクになる件について

Unity (2021.3.2f1 - URP12) はじめに 結構な頻度でセールをやってるPOLYGON Prototypeですが、購入して使おうとしたらURP環境だとこのようになりました。 ピンクだねー。 まぁシェーダーだろうなと思いながら調べていたら解決方法分かったので共有したいと…

【Unity】ゲームオブジェクトを複製した時の名前が ...(1) を _1 の形式に変える方法

Unity (2021.3.2f1) はじめに 作業効率化に関する記事です。 エディタ上でゲームオブジェクトを複製するとこのように (1) (2) (3) ・・・といった風に ( )がついた命名になります。 (1)ってなんか気持ち悪い気がしてあれだったので、 1, 2 こういう連番形式…

【Unity】モデルの1面だけにテクスチャを貼りたい

Unity (2021.3.2f1 - ビルトイン) はじめに モデルの1面だけにテクスチャを貼りたい場合にどうすればいいか?というのをずっと悩んでいました。 普通はそんな人はいないと思う(笑) その1つの手法を解説したいと思います。 何をしたいのか? 例えばCubeにテ…

【Unity】URP環境だとUnityChanがピンクになっちゃう件について

Unity (2021.3.2f1 / URP12) URP環境でUnityChanを表示しようとしたら、このようにピンクになってしまいました。 元はこれなんですけどね。 ビルトイン環境では問題なかったのでURP移行による弊害です。これを解決するには?という内容です。 このキャラクタ…

【Unity】ビルトインのShaderGraphで作成したシェーダーをURPに対応させる

Unity (2021.3.2f1) はじめに URPに対応できていないとこうなる ShaderGraphのターゲットを追加する あとがき はじめに 前回ビルトインのプロジェクトを後からURPに対応するための記事を出しました。 www.m2game.net その中でShaderGraphだけはうまくコンバ…

【Unity】ビルトインのプロジェクトを後からURPにコンバートする方法

Unity (2021.3.2f1) はじめに URPとは? 今回やりたい事 UlRPパッケージをインストール URP環境構築 ビルトインのマテリアルをURP用に変換 標準マテリアルは「Lit」に置き換える ShaderGraphで作ったシェーダーをURPでも使えるようにする うまくいかなかった…

【Unity】ShaderGraphでBlackboardのカテゴリー分けを使うとインスペクターでプロパティが見やすくなった

ShaderGraphの小ネタでございます。 ■開発環境 MacOS Monterey (12.1) Unity (2021.3.2f1) はじめに BlackboardでCategoryを追加する はじめに Blackboardのプロパティをインペクタで表示するとこのようになります。 これが普通なんですが、 関連性がよくわ…

【Unity】ShaderGraphでノードをプロパティに変換する方法

ShaderGraphのちょっとした時短テクの紹介です。 ■開発環境 MacOS Monterey (12.1) Unity (2021.3.2f1) ノードをプロパティに変換 参考 ノードをプロパティに変換 ノード上で右クリック → Convert To → Property とします。 これで接続状態は維持しつつノー…

【Unity】ShaderGraphでテクスチャとカラーを合成できるシェーダーを作る (第4弾)

Unity (2021.3.2f1) はじめに ゴール ShaderGraphを新規作成 色を変えれる機能を実装 テクスチャを貼れる機能を実装 色を合成するノードを追加 (Multiply) 確認 はじめに 第1弾でやった色を変えるシェーダーと第3弾でやったテクスチャを貼れるシェーダーを…