これはRuby 2D Gemです。 Ruby 2D Webサイトをチェックして、Rubyで2Dアプリの構築を開始する方法を学びます。
宝石にローカルに作業するには、最初にこのレポを使用してクローンを作成します。
git clone --recursive https://github.com/ruby2d/ruby2d.gitこのソースコードリポジトリのサイズを小さく保つために、Gitサブモジュールを使用して資産を参照します。 --recursiveフラグは、このリポジトリがクローン化されたときにサブモジュールが初期化され、更新されることを保証します。 --recursive Flagなしでこのリポジトリをクローンでクローンする場合でも、以下を初期化して更新できます。
git submodule init
git submodule update --remote git submodule update --remoteまたはrake updateタスク)を使用して、これらのサブモジュールをいつでも更新します。
次に、 bundle installを実行して開発宝石を取得することにより、バンドラーの依存関係をインストールします。
最後に、 rakeを実行して、宝石をローカルに構築およびインストールします。 rake devを使用して、ユーザーインストールされたライブラリ(SDLなど)を参照します。
Ruby 2Dは、RSPECを介した自動テストの組み合わせと、視覚、オーディオ、および入力機能の正しさを検証するために、インタラクティブなテストのインタラクティブテストを使用しています。宝石を構築し、 rakeコマンドを使用してすべての自動テストを実行します。レーキテストを使用してtest/ディレクトリでインタラクティブテストを構築および実行しますrake test:<target> <name_of_test>など:
# Run `test/testcard.rb` using the standard Ruby interpreter, MRI (CRuby)
rake test:cruby testcard # `test:mri` or just `test` work also
# Build `test/audio.rb` using mruby and run
rake test:mruby audio
# Build `test/mouse.rb` for the web using WebAssembly and run in the default browser
rake test:wasm mouseRuby 2Dは、2Dアプリケーションを作成することは、Ruby言語自体の精神で、2Dアプリケーションを作成することはシンプルで自然で喜びに満ちているべきであると信じている献身的な人々によって構築された完全にオープンソースプロジェクト(その依存関係を含む)です。
参加したい場合は、その方法がいくつかあります。
新機能を提案し、実装します。 ? Ruby 2Dはすでに多くのことをしていますが、それができることはたくさんあります。機能リクエストがある場合、またはドメイン固有の言語を改善する方法、または新しい問題を追加、削除、または変更するための他の何かを開き、それについて教えてください。問題を開くというプレッシャーなしにアイデアをさりげなく話したい場合は、メーリングリストにメモを送るか、ギッターでチャットしてください。
より多くのプラットフォームのサポートを追加します。 Ruby 2Dは、完全にクロスプラットフォームになることを目指しています。既存のプラットフォームでの開発者エクスペリエンスをテストおよび改善し、新しいプラットフォームを追加するのに役立ちます。
問題を見つけて修正します。 ?バグを特定して修正し、途中でパフォーマンスを改善するのに役立つことは、他の人がライブラリを使用して堅実な経験を積むために重要です。問題トラッカーをチェックして、それを持っています!
ドキュメントを書いてレビューします。すべてのオープンソースプロジェクトの成功にとって非常に重要なのはドキュメントです。私たちはまともなスタートを切っていますが、書き込みと編集が常にあります。 Ruby 2D Webサイトを参照して、領域を特定して明確に追加するか、ギャップを埋めてください。ほとんどのページの上部には、Webサイトレポのソースファイルに直接送信される「編集を提案する」へのリンクが表示されます。
例を作成して改善します。 ?現在、サンプルアプリケーションに少し軽いために、人々が始めるのを支援しています。例リポジトリに収集する特定の機能やテクニックをユーザーに導くために、小さなシングルファイルアプリのアイデアを入手したいと思います。ショーケースをチェックして、人々が何を構築しているかを確認し、インスピレーションを得てください。
このようなシンプルさを達成するためには、フードの下で多くのことが起こらなければなりません。機能を追加するかバグを修正するかに関わらず、プルリクエストがマージされるように以下を実行してみてください。これらのいくつかは気が遠くなるように思えるかもしれませんが、私たちは途中で喜んで助けてくれます!
既存の問題があるかどうかを確認し、そうでない場合は、議論を開始するために新しい問題を開いてください。時間とエネルギーをアイデアや修正に捧げる前に、それがプロジェクトの原則と目標と一致していることを確認しましょう。
どこでも機能するRubyのサブセットを使用してください。もちろん、Ruby 2DアプリケーションはRubyで書かれています。一部のユーザーは、標準の実装であるMRIをターゲットとする解釈されたアプリを作成することにより、GEMの言語、標準ライブラリ、およびエコシステムの全力を活用することを選択できます。他の人は、WebAssembly、モバイルデバイス、またはNative Desktopアプリケーションを介してWebをターゲットにしたい場合があります。これは、Mrubyと呼ばれる異なるRuby実装をすべて使用するものです。 Ruby 2Dは、同じアプリコードベースでも、これらすべてのユースケースをサポートすることを目指しています。あなたの貢献は、MRI/CrubyとMrubyで同様に動作するRubyのサブセットをサポートする必要があります。各Ruby実装のドキュメントを読む以外に、それぞれのREPLを使用してコマンドラインのコードスニペットを試すこともできます:MRIのirbとMRUBYのmirb 。
あなたの変化を包括的にテストします。他のRubyライブラリとは異なり、ここのすべてが単体テストだけで簡単にカバーできるわけではありません。また、物事が正しく見えるようにし、入力が期待どおりに機能し、動作がすべてのプラットフォームでRuby 2Dサポートで一貫していることを確認する必要があります。
rake updateを実行して、サブモジュールを更新しますversion.rbのバージョン番号を更新し、変更をコミットしますv#.#.#rake releaseを実行してGEMを構築し、 gem push ruby2d-#.#.#.gemでRubygems.orgにプッシュ