中高生むけの Rubyプログラミング教室をお手伝いすることになりそうなので、前回のテキストを見せてもらっておさらいをしてみた。
環境としては DXRuby というライブラリを使用していたので、調べてみると Windows固有の機能を使っているので、macOSでは動作しないものだった。
仕方ないので仮想マシン上の Windows 11 で環境構築して、テキストどおりプログラミングしてみた経過を備忘録を兼ねて記録しておく。
(なお、macOS の Ruby で動作するゲーム作成用ライブラリ「Gosu」を見つけたので、それは後半に記載しておく)
■ Ruby + DXRuby 環境の構築
Rubyで2Dゲームプログラミングを実行するための開発環境を用意する手順
次のサイトから、環境構築ファイルをダウンロードして構築する
「Ruby実行環境のダウンロード – EastBack Archives」
(https://www.eastback.co.jp/archives/ruby-download/)から
Rubyの実行環境(Windows版、DXRubyインストール済み)zip 形式のファイルをダウンロードする。(https://download.eastback.co.jp/ruby/ruby_lecture.zip)
- ダウンロードしたruby_lecture.zipを、Cドライブ直下に展開
- エクスプローラーでC:\ruby_lecture\code.batをダブルクリックして、Visual Studio Codeを起動
- 作業フォルダは、 C:\ruby_lecture\codeに設定済み
- ターミナルのデフォルトは、【Ruby】Command Promptで、Rubyのパスを通してあり、Rubyがそのまま使用できる
- 【Ruby】PowerShellは、PowerShellでRubyが使用できる
- C:\ruby_lecture\codeフォルダを作成して、作業フォルダとする
(注意)詳細は上記サイトを参照
■ Rubyでプログラミング
C:\ruby_lecture\code.batをダブルクリックしてVSCodeを起動
(作業フォルダはC:\ruby_lecture\codeに設定されている)
codeディレクトリの中に新規にディレクトリを作って、その中にプログラムを置くようにする。
以下、VSCode を使用して Ruby プログラムをコーディング、実行する方法の詳細は、
EastBack Archives の「Rubyの基礎」のサイトを参照
(https://www.eastback.co.jp/archives/ruby/ruby-basics/)
■ 落ちものゲームの作成
おさらいしてみたテキストで作成するゲームは、このサイトのものと似ている。ただ、このサイトのものは DXRuby にある Sprite クラスを使用していて、こちらの方がエレガントだったので、テキストのゲームを Spriteクラスを使用して作り直してみた。Spriteクラスでは #shot と#hit メソッドが使えるので、当たりの判定が簡単になるので、このサイトを参考にすると良いと思ったので、メモしておく。
https://www.eastback.co.jp/archives/dxruby/create-falling-objects-game/
■ macOS X で Ruby
macOS では DXRuby が使えないので、他の似たような機能を持つライブラリを探した。
Gosu は 2D ゲーム開発用のライブラリで Ruby と C++ に対応していて macOS, Windows, Linux, iOS (iPadOS) で、MIT ライセンス下で利用できるとあった。
https://www.libgosu.org/ <– 公式サイト
日本語で Gosuのインストールとサンプルコードがあって参考になるサイト「Ruby Gosu でゲームを開発入門」
https://hawksnowlog.blogspot.com/2019/09/game-development-with-ruby-gosu.html
この環境では「bundler」という Ruby のバージョンを管理するシステムを使って関係ファイル等をインストール、実行します。このため Ruby プログラムの実行は $ Ruby …
ではなく、$ bundle exec ruby app.rb
というコマンドで行うことになります。
ruby bundler については、このサイトが参考になります。
「【Ruby入門】今更聞けない!Ruby bundlerとは」 https://www.sejuku.net/blog/19426
Gosu-examples のインストールと実行
Gemfile に 「gem “gosu-examples”」を追記して保存、$ bundle install --path vendor
コマンドでインストールした後、$ bundle exec gosu-examples
コマンドでサンプルが動作する。
Gosu の git リポジトリ
https://github.com/gosu/gosu
■ Ruby の学習に役立つサイト
- Ruby Assosiation のチュートリアル https://www.ruby.or.jp/ja/tech/development/ruby/
- Rubyの歩き方(日本語) https://magazine.rubyist.net/articles/first_step_ruby/FirstStepRuby.html
- 逆引き Ruby(日本語) https://sites.google.com/site/gyakuhikiruby/
- Ruby 入門 https://www.javadrive.jp/ruby/
- るびま(Rubyist Magazine) https://magazine.rubyist.net/articles/first_step_ruby/FirstStepRuby.html
- Try Ruby (ブラウザーでRubyが実行できるサイト) https://try.ruby-lang.org/