Categories: Blog未分類

Ruby のお勉強

中高生むけの 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

  1. ダウンロードしたruby_lecture.zipを、Cドライブ直下に展開
  2. エクスプローラーでC:\ruby_lecture\code.batをダブルクリックして、Visual Studio Codeを起動
  3. 作業フォルダは、 C:\ruby_lecture\codeに設定済み
  4. ターミナルのデフォルトは、【Ruby】Command Promptで、Rubyのパスを通してあり、Rubyがそのまま使用できる
  5. 【Ruby】PowerShellは、PowerShellでRubyが使用できる
  6. 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 のサンプルプログラムの動作画面

Gosu の git リポジトリ
https://github.com/gosu/gosu

■ Ruby の学習に役立つサイト

ynomura

Recent Posts

飛行メモアプリを作った

ドローンを飛行させたらその記録…

22時間 ago

前後一週間の気象情報をグラフ表示するアプリ

世界中の気象情報を API で…

1週間 ago

日の出・日の入り時刻を表示するアプリを公開

ドローン飛行の包括申請が許可さ…

1か月 ago

無人航空機の法規制をまとめた動画を公開

無人航空機(ドローン)について…

2か月 ago

Radikoプレーヤーのベースを作った

robo8080 さんが公開し…

3年 ago

「スタックチャン」を作ってみた

M5Stack 社製 Core…

3年 ago

This website uses cookies.