土屋つかさの技術ブログは今か無しか

土屋つかさが主にプログラミングについて語るブログです。

#unity 小ネタ:RectTransform.sizeDeltaの初期値について

ここ1週間くらいcanvasの挙動に嵌まっていて、ようやく解決出来たのでメモ。結果的には自分の単純な見落としで反省しました。 趣味でテキストレイヤフレームワークを作っています(そんな趣味ある?*1)。canvas上で動作する物で、1文字ずつオブジェクトを…

#unity ツカサ式スタック型ステートマシンの紹介(ゲーム向きのステートマシン実装)

現在、テキストウィンドウ描画ライブラリを作ってまして*1、その過程でスタック型のステートマシンを実装しました。このステートマシンは土屋が頻繁に使うロジックで、仲間内では「ツカサ式(つかさしき)」と呼んでいます。今回はこのツカサ式ステートマシ…

#unity 小ネタ:Explicitレイアウトミスの話

ちょっと試したい事があってコードを書いていたら、普通に実行した時は問題無く動くのに、Visual Studioでアタッチしている時だけUnityが100%実行時エラーを出して落ちる(!)という、出来れば遭遇したくない事態に陥りました。 最初は意味がわからなす…

#unity 小ネタ:実行中にマテリアルを複製する

ネットで検索してスパッと記事が見つけられなかったのでメモっておく小ネタシリーズ。 「実行中にマテリアルを生成したい」「可能ならアセットから読み込んだマテリアルをベースに一時的なコピーを作りたい」という状況に遭遇しました。 なんでコピーを作り…

#Unity 何故PlayModeに入った時にOnValidate()が2回呼ばれるのか問題(その2:完結編)

前回の記事の続きです。 someiyoshino.info OnValidate()タイミングにRectTransform.setDelta()を更新するコードを実装した所、Edit ModeからPlay Modeに移行した時(以下これを「Enter Play Mode時」と呼びます)にNull参照例外が発生してしまうという話で…

#Unity 何故PlayModeに入った時にOnValidate()が2回呼ばれるのか問題(その1)

現在Canvas用のコンポーネントを作っていて、その最中、Unity初期化時のMonoBehaviour.OnValidate()の挙動に悩まされまして、折角なのでちゃんと調べて記事にしました。 今回は前半戦で、実は表題にした「何故OnValidate()は2回呼ばれるのか」に到達してい…

「node.jsにtextlintをインストールして」「ルールをtypescriptで記述して」「VSCode上でステップ実行でデバッグしたい」をする

近年の大規模プログラム開発環境では、ソースコードを共有する前にlinterと呼ばれるツールを使ってコード検証をするのが一般的です。linterでは決められたコーディングルールに沿っているかについて、コンパイラよりも厳格なチェックを行い、場合によっては…