C++でRPGゲームを作成するat GAMEDEVC++でRPGゲームを作成する - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト742:名前は開発中のものです。 06/06/01 01:26:31 1wKUdWEf.net たぶん>>716は釣り師なんだろうなぁ 743:名前は開発中のものです。 06/06/17 01:55:24 gghwP/lw.net >>716 参考にドウゾ。ただコードの構造化が糞だから気をつけたほうがいい。 ttp://www.geocities.jp/amazonium011001/page1.htm 744:716 06/06/17 12:45:56 A7FmLv2E.net ありがとうございます・・・ってどれが参考になりますか? forループをウェイトに使っているのには思わず吹いてしまいました(><) アクションRPGできてきました(><) PDAと互換性保つため自前DIB描画の拡縮やアルファブレンドなので激重です(><) 誰か下のやつ最適化してください(><) 途中で宣言なしに出現する変数は事前に計算されていて、意味は以下のようになっております。 unsigned char alpha・・・アルファ値。 float mag_x、 mag_y・・・X、Y軸の拡大幅 unsinged char* dest_buffer 、 src_buffer・・・転送先,転送元イメージのバッファ。 int dest_offset・・・転送先データのオフセット。 int src_offset・・転送元データのオフセット。 int max_x ,max_y ・・・ 書き込みする範囲の最大バイト数 int bufW、srcW・・・転送先、転送元画像の幅。 unsigned char t = 255-alpha ; for(int i=0;i<max_w;i+=3) { for(int j = 0;j<max_y;j+=3) { base_dest = dest_offset + i + j * bufW; base_src = src_offset + ((int)((i / 3) / mag_x) + (srcW * (int)((j/3) /mag_y )))*3 ; dest_buffer[base_dest] = (( t * dest_buffer[base_dest] ) >> 8) + (( alpha * src_buffer[base_src] ) >> 8 ); dest_buffer[base_dest+1] = (( t *dest_buffer[base_dest+1] ) >> 8) + (( aplhal * src_buffer[base_src+1] ) >> 8 ); dest_buffer[base_dest+2] = (( t * dest_buffer[base_dest+2] ) >> 8) + (( alpha * src_buffer[base_src+2] ) >> 8 ); } } 誤字脱字があるかもしれません(><) 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch