速度アップと色と


重いのは描画ではなく、Rubyの処理だ。DXRubyの描画は十分速い。
というのがいつもの俺の主張なので、DXRubyFrameworkに加速度などを設定できるよう機能追加して、それを使って動かしてみた。
複数の色を使うには別々のテクスチャが必要で、描画順も問題になるからソートさせていて、色々と負荷は増えてしまっているが、とりあえず同じCPU負荷で3倍ほどの星が動くようにはなった。
ざっと計算するとこれぐらいがWindow.draw系での描画の限界速度だろう。
点が2*2pixelだから、dor.rbの実行速度から考えるとImageオブジェクトに点を描き込む手を使ってもこれより速くはならない。
こういったポイントスプライトを1つ1つポリゴンで描こうというのが根本的に間違っているとは思うのだが、DXRubyには代替手段は無い。
用途が違うということだ。
ひょっとするとStarRubyとかのほうがこの手の描画は速いかもしれない。


しかし、こんなもんだと、例えば尾を引く星とかは作れなさそうだ。
そういったものまで高速にできる柔軟な仕組みというのも思いつかない。
花火専用の拡張ライブラリを作るのは意味が無いわけで。
ん?そういう意味不明な拡張ライブラリがあってもいいかも?