フレームワークの修正を行っていたけど、どうもUnityの関数バグを踏んだ可能性がある
自分の場合、テクスチャの大きさ・座標・マテリアル・UVの大きさを指定して、MaterialPropertyBlockという言ってしまうと「マテリアルの設定差分」を用いたうえで描画命令を発行している。
このMaterialPropertyBlockで指定した部分について、テクスチャの指定がうまくいかない。
具体的には「テクスチャが逆方向にオフセットされる」というもの。このままでも指定は可能だけど、直してしまうほうが混乱は少いのでさっさと対応。
ただ、元々機械的にプログラムを書いたが、結果が数理に沿わない指定のため調査してみたところ上記のようなテクスチャの指定になっていたという。
ちなみに値をマイナス取ると限度があったりなかったりして、そのくせXのOffsetをマイナスにすると結果が変わったり、なかなか怪しい挙動してくれるorz
もちろん上記の通りUVの大きさや座標も指定しているので、他でも間違っている可能性があるが、テクスチャの根本部分の改修なので割と影響が大きいし、何より特段おかしいところがないんだよな・・・
ということで、内部で補正しておくことにした。また、今後改修で同じような不具合が出た場合に備えて関数を切り出しておいた。