2022.09.04
Diary
初回表示だけが妙につっかかるんでキャッシュされてないからかなーと思ったけど違うみたいで GPU に先にテクスチャ送っとけばだいじょぶかなーと思ったけど違うみたいでログ見てると初回だけなんかエラー出てるんだけどググってもいまいちコレって感じの解決法がみつからなくって全然どうしていいかわからんのだけどこれを解決しないと一期一会な体験の質が下がるのでなんとかしたい。
初回表示だけが妙につっかかるんでキャッシュされてないからかなーと思ったけど違うみたいで GPU に先にテクスチャ送っとけばだいじょぶかなーと思ったけど違うみたいでログ見てると初回だけなんかエラー出てるんだけどググってもいまいちコレって感じの解決法がみつからなくって全然どうしていいかわからんのだけどこれを解決しないと一期一会な体験の質が下がるのでなんとかしたい。
はみ出たとこを描かないようにマスクするのはステンシルだなってことで SceneKit でのやり方を調べて SCNTechnique にそれらしきものがあるのを発見したので具体的にどうすんのかなーとググってみても全く情報がなくってわずかに見つかったかなり昔のコードとドキュメントをたよりに書いてみるも謎エラーで動かなくてどうも SCNView がデフォルトで用意してる render target は stencil attachment が設定されてないっぽくて設定する方法もなくってどうやってもステンシル使えないくさくてつらい…
けっきょく SCNTechnique のでステンシルバッファは諦めて普通の color render texture にマスク描いて自分でシェーダーで合成するようにしたらいけたけど同じことを ARSCNView でやろうとしたらやっぱりすんなりいかなくてそこでも時間くったけど Xcode の GPU Tracing で細かく描画ステップが見れてどの render texture がどうつながってるのかも見れたりするのがわかったのでそこは収穫。