なつねこメモ

主にプログラミング関連のメモ帳 ♪(✿╹ヮ╹)ノ 書いてあるコードは自己責任でご自由にどうぞ。記事本文の無断転載は禁止です。

Unity 2018.x で自動的に UPM パッケージをインストールしたい

BOOTH とかで商品を配布していて、共通の部分とかを配布するときに、 UPM 経由で依存を入れたいときとかの方法。 UnityPackage に含めると他のと被った場合、古いものをインポートされると困る!的な場合、 (個人的には) UPM 経由でインストールさせるのがよ…

Unity で EBUSY: resource busy or locked とでてパッケージがインポートできない

UPM 経由でパッケージ入れたり、再構成したりするとタイトル通りのエラーが出て、 まともにインポートされなくなってしまいました。 修正は簡単で、とりあえずディレクトリのロックを取っているプロセスが何処かにあるので、 競合するものを閉じてあげれば動…

Unity で monorepo っぽいものをなんとかしたい

なんやかんやあって Unity のパッケージで、1 レポジトリで複数のパッケージを管理しているのですが、 もろもろ自動化したかったので、 Node.js 界隈でよく見る monorepo 風に管理してみました。 誰か正しい方法知ってたら教えてください。 ~だって package.…

Unity のカスタムシェーダー GUI で、Tiling & Offset を良い感じに表示したい

最近は Toon Shader の勉強をしている私です。 Unity のシェーダーでは C# コードで GUI を自分で組めるのですが、 Tiling と Offset に対応していると、邪魔だと感じるときがあるので、良い感じに表示するための方法。 普通に作るとこんな感じになるとおも…

Git の各種コマンドで条件を満たすパスを非表示にしたい

Git

git status だとか git diff だとかで、たまに Git でトラッキングはしたいけども、 コマンド実行結果上は一時的に非表示にしたいファイルがあるときがあります。 そういうときは、 pathspec を指定することで、表示するファイルを制御することが可能です。 …

Canvas Image を Mesh に変換したい

なんでそんな必要があるのかって? Canvas 使いまくったものが送ってこられて Vket 入稿できなかったからです。 そういう需要があるにはあるので、放流します。 以下ソースコード全文 /*------------------------------------------------------------------…

UdonSharp コンポーネントをエディターから動的生成したい

Prefab からのセットアップ自動化みたいな想定で、 UdonBehaviour (U#) の中身をいじりたい。 そんなときのいじりかた。 といっても、基本は Unity で Component 変更するのと変わらない。 private static void AttachUSharpComponent(GameObject gameObject…

UdonSharp の特定のクラスのみを受け入れる入力フィールドを作りたい

そんなことをする必要があるかどうかはさておき、やりたくなったので。 ということでいつもの前提環境 Unity 2018.4.20f1 UdonSharp 0.18.6 といっても、実装は簡単で、こんな感じ。 もしかしたらこんなことしなくても良いカモだけど。 [SerializeField] [Ud…

ReSharper で EditorBrowsable が付いたものを非表示にしたい

なぜデフォルトで ON になっていないのかは知らないのですが、下のようなコードがあったとき、 [EditorBrowsable(EditorBrowsableState.Never)] public void HogeHoge() { // noop } なぜか ReSharper の IntelliSense を使っていると表示されてしまいます。…

Unity でカメラが近づいたら消えていくシェーダーを作る

最近シェーダーを書くことが増えてきた私です。 ということで今回は「近づくと消える」シェーダーを書きました。 Vertex Shader は変わりないので、 Fragment Shader のみ float4 fs(v2f i) : SV_TARGET { const float d = abs(length(i.worldPos - _WorldSp…