日記 (2014 年 10 月 28 日)

こんにちは。

私はゲーム開発に (というかそれ以外のものも全て) Ruby を用いているんですが、 動的型付けのスクリプト言語なので、 Java や C# などのコンパイル言語と比べて速度が出ません。 今作っているゲームは私のパソコンでは正常に動作しますが、 7 年前に買った 1 代前のパソコンで試しに動かしてみると、 処理が遅くて FPS を 60 に維持できていませんでした。 最終的にはこのサイトでゲームを配布したいので、 7 年前のものとはいえど、 だいたいのパソコンではそれなりに動いてもらわないと困ります。 そこで、 速度を上げようとコンパイル言語に移植してみました。 言語ですが、 Java は使いづらくて嫌なので、 Scala にしてみました。

結果ですが、 確かに速くなりました。 速度の指標として、 1 フレーム (0.1667 秒) で行うべき処理を行うのにかかった時間の割合を使います。 つまり、 これが 100 % に近づくほど処理が重く、 100 % を超えるといわゆる 「処理落ち」 になります。

結果は、 これまでの Ruby が平均 25 % で、 Scala が平均 17 % です。 思ったより速くはなりませんでした。 では、 今後の開発はどうしましょうか? 使いやすさは断然 Ruby の方が上なんですが