• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Ruby/SDLの処理を早くしたい)

Ruby/SDLを使ってブロック崩しを制作する方法

このQ&Aのポイント
  • Ruby/SDLを使ってブロック崩しを制作している際に画面いっぱいにブロックを並べたら処理が落ちる問題が発生しています。処理を軽くする方法を教えてください。
  • Ruby/SDLの処理を早くするための方法について教えてください。
  • Ruby/SDLを使ってブロック崩しを制作していると、画面いっぱいのブロックを並べると処理が重くなってしまいます。処理を軽くする方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

ゲームでパフォーマンスが問題になったとき、とにかく描画が重くなっていることが多いです。 お示しになったソースコードを見る限り、毎フレーム画面全体を描き直しているようですので(たしかにそのほうがコーディングは楽なのですが)、 これをボールや消滅したブロックの位置だけを再描画するようにしたらいかがでしょうか? 示されたソースコードは断片ですし未整理のようですのですべてを把握できませんが、 いくら遅いと呼ばれているRubyでもブロック崩し程度の当たり判定なんかが問題になるとは考えにくいです。 自分はRubyからSDLを使ったことはありませんし、Ruby/SDL特有の問題である可能性もありますが、 試してみる価値はあるんじゃないかと思います。 もしどんな場合でもパフォーマンス改善に有効な方法があるとしたら、 それはより高性能な環境で動かすことぐらいでしょうか。

redspore
質問者

お礼

回答ありがとうございます。 screen.fillRect 0, 0, 640, 480, [ 0, 0, 0 ] この処理を無くし、画面の更新だけにしたところとても軽くなりました。ありがとうございました