Optcarrotの実行
デモの実行
まず、GraalVMをインストールします。
次に、PATH
にGraalVM/binを追加します(またはRubyマネージャを使用します):
export PATH="/path/to/graalvm/bin:$PATH"
また、SDL2もインストールする必要があります:
- macOSの場合は
brew install sdl2
- RedHatベースのLinuxの場合は
sudo yum install SDL2-devel
- DebianベースのLinuxの場合は
sudo apt-get install libsdl2-dev
次に、optcarrotリポジトリをクローニングします:
git clone https://github.com/eregon/optcarrot.git
cd optcarrot
その後、Lan Masterゲームをプレイできます。
Linuxの場合:
ruby --jvm bin/optcarrot --print-fps --sdl2 --audio=none examples/Lan_Master.nes
macOSの場合は、GUIを表示するために追加のフラグ--vm.XstartOnFirstThread
が必要です:
ruby --jvm --vm.XstartOnFirstThread bin/optcarrot --print-fps --sdl2 --audio=none examples/Lan_Master.nes
ノート: --audio=none
を使用するのは、60FPS以外の速度ではオーディオが正常でないためです。
プレイするには、画面を拡大する場合はキー[1]
…[7]
(テンキーにあるものではない)を、OKの場合または右に回転する場合は[X]
を、左に回転する場合は[S]
を、移動する場合は矢印を、終了する場合は[Q]
を使用します。
詳細は、このブログ投稿を参照してください。
TruffleRubyおよびMRIでのデモの実行に関する講演の記録はここにあります。
他のRuby実装での実行
比較のためにMRIでこれを実行することもできます。次を使用してFFI gemをインストールする必要があります:
gem install --user ffi
ruby bin/optcarrot --print-fps --sdl2 --audio=none examples/Lan_Master.nes
必要に応じて、JRubyでこれを実行することもできます:
jruby bin/optcarrot --print-fps --sdl2 --audio=none examples/Lan_Master.nes
TruffleRubyリポジトリからのベンチマークとしての実行
TruffleRubyのローカル・チェックアウトがある場合は、bench/optcarrot
にあるOptCarrotのバージョンを使用することもできます。詳細は、ベンチマークのドキュメントを参照してください。