【初心者】スレを立てる前にココで質問を【Part13】at GAMEDEV【初心者】スレを立てる前にココで質問を【Part13】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト200:名前は開発中のものです。 06/12/05 16:27:54 h2Aa6mdb DirectXの使えない16ビットカラーのPDA用ソフトを開発しているのですが、質問です。 スプライトの拡大縮小を整数の演算だけでできますか?ループの中だけでも整数だと助かるのですが・・・。 ↓こんな感じでやっていますが、おそすぎます。倍率1.0で40*64サイズのスプライト40個程度描画するとFPSが10まで落ちます(CPUのクロックは500Mhz)。 void Draw(IMAGE* src , int x, int y, int src_x , int src_y,int src_w,int src_h , float mag_x , float mag_y) { //省略 float add_x = ((float) src_w/(float)(max_x - x));//max_x = src_w * mag_x + x float add_y =((float) src_h/(float)(max_y - y)); float tx=0,ty=0; for( i = x ; i< max_x ;++i) { ty = 0; for(j=y;j<max_y;j++) { base_src = bs + (int)tx * 3 + (int)ty * src_w * 3 ; base_dest = i*buf_xPitch + j * buf_yPitch; *(backBuffer+base_dest) = (unsigned short)( ( srcData[base_src+2] >> 3) << 11 | ( srcData[base_src+1]>> 3) << 6| ( srcData[base_src] >> 3)); //24ビット→16ビット cy += add_y; } tx += add_x; } } 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch