goo

コワリス壊のネットワーク対戦が重い原因

いろいろ試した結果、「プログラムそのもの」は、とても軽いことがわかりました。
一番重い連鎖落下の部分の処理ですら、0.00001~0.002秒の処理時間でした。
コードの最適化をした結果、ここまで軽くなったのかもしれませんけどね。

負荷を計算すると、以下のようになります。
60フレームで必要な処理時間は0.016666秒以下(1/60秒)なので、
最大負荷でも 7人(最大人数) × 0.002秒(最大負荷) = 0.014秒(全体の最大負荷)
つまり、プログラム自体は7人対戦でもそこそこ耐えられます。

それで、肝心の重い原因は何かというと、「ブロックのフレーム変え」でした。
ブロックのフレームが変わるたびに、0.051~0.112秒もかかっており、
全体としてカクカクになる理由がこれでした。

これに対し、メモリを多めに消費する代わりに、
スムーズな描写を可能にする技術の搭載の検討をはじめています。
実装したプログラムでは、消費メモリが500MBくらいですので、
プレイには1GB以上のRAMを搭載したPCが必要になります。
といっても、最近のPCなら、2GB以上当たり前ですね。
コメント ( 1 ) | Trackback ( 0 )