ゲームプログラムなら俺に聞けat TECH
ゲームプログラムなら俺に聞け - 暇つぶし2ch240:212
09/05/22 21:47:48
>>201
DXLibralyPortable 見てみた。
DrawRotaGraph() の類を使っているのだな?
リストの線形探索というとても効率の悪い GraphHandle2Ptr() を、
一枚描画するたびに何度も呼ぶことになっているが、同じ画像を
使う描画をまとめることで、実は一度だけでよいようにできる。
当然、SetTexture() も一度でよくなる。

また、sceGuGetMemory() を毎回呼び出しているが、事前に枚数が
分かっているのなら、これも一度でよい。
ついでにいうと、GuListSafety() はうんこだ。
sceGuGetMemory() の直前に必要量が足りるかを判定して、足り
ない場合に不ラッシュするようにすべきだ。
さらにいうと、この処理を見れば分かるように、パケットエリアが
足りなくなると sceGuSync() を呼ぶことになるが、これは処理速度
の観点から好ましくないので、sceGuGetMemory() 直前に、パケット
エリアが足りなければ assert() するようにした方が良いかも知れない。
メモリ効率が重要ならリングバッファに。

double は論外。
どうしても必要な場合だけにしなさい。
float <-> double の変換だけでかなりの時間を使う。

まず間違いなく、atan は無罪だ。
DrawRotaGraph() を引数を含めて最適化したほうがずっと効果が
高いだろうと思われる。

あとお前、212 のテイラー展開とか正規化で sin, cos とか無視しやがったな。
進行方向修正だけなら(九十度回転)内積だけで済むとかも。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch