BREW での画像転送(2)
この転送ルーチンの組み合わせ爆発の問題は前も考えていました。
id:melpon:20051124 id:melpon:20051125 id:melpon:20051126 id:melpon:20051127
で、ファイルサイズが大きくなりすぎるってことで、ゲームを実際に作ってるときに、必要になれば関数を作っていくっていう形でやってたんですけど、それでもやはり同じようなルーチンばっかり書くことになって、バグを見つけた場合、全てのルーチンを書き換えるという手間が掛かります。
あと、えんらさんがコメント欄に書いていますが、functor を使用するとインライン展開されない可能性が高いです。仮に --no_inlinemax を付けていたとしても、アセンブラレベルで見ると、直接書いた場合に比べてあまり最適化されていない場合が多いです。
functor が使えないんじゃどうしようもないかなぁとか考えてたんですが、ある日天啓を授かったかのごとくパッと頭に思い浮かびました。
#define 使えばいいじゃん。