もちゅるの日常

特に決まっていないざっくばらんなブログ

シェーダ付メッシュに難航中

 前回の予定通り、シェーダ付メッシュを描画するためのコマンドバッファを作成しているけど
予定外のところで難航中。


 シェーダファイルを読み込んだ後、ハンドルを取得させる処理が固定じゃないから、
継承させて各派生先でハンドル取得をさせようって考えていたんだけど、
このシェーダデータを持っている ShaderData クラスの派生先のインスタンスを作る前に
読み込み中のファイルと、派生先クラスをリンクさせる情報がないわけで。。。


 これだけのために2日くらいずっと考えていた。結論は出ていないけど情報をもっと集めるために、
とりあえずガチガチ(絶対同じ派生先を作成する)に作って描画にたどり着いたら再度考えようと思う。



 とりあえずガチガチに組んで先に進めたけど、再度壁にぶつかった。
描画する前にハンドルに対して値を渡す一連の処理だけど、スマートな処理が思いつかない。
とりあえず今思い浮かぶのは、

  • ハンドルに渡す処理をごっそり継承させて、仮引数を使ったりして引数経由で値を渡す。
  • 値を渡す処理のデレゲートを用意して、引数にハンドルのインデックスと、値を渡す。

どちらでも対応は出来ると思うけど、どうも気持ち悪い。納得していない自分がいる。
描画部分ってこともあるから、特殊処理はなるだけ避けてかつ高速な、妙手はないものか?