Ruby/SDLとその周辺 大林一平 (ohai) 原 悠 (yhara) 発表内容 z 自己紹介 z Ruby/SDLとは何か z Ruby/SDLでできること、できないこと z 利用例 z Ruby/SDLの周辺 z Ruby/SDLスターターキット 自己紹介 z 大林一平 z 京都大学理学研究科数学数理解析専攻数 学系 z 専門は力学系 z Ruby/SDL, SDLSKK, RRSE, Ruby Refactoring Browser 京大マイコンクラブ(KMC) z 京大のコンピュータサークル z 発表者は両方ともKMC部員 z 歴史は結構長い z Linux/98 z Anthy/uim z http://www.kmc.gr.jp/ Ruby/SDLとは何か z Rubyでゲームをつくるためのライブラリ z SDL (Simple DirectMedia Layer)のラッパ z 様々な環境で動作 z Windows, Linux, FreeBSD, Mac OS X… z http://www.kmc.gr.jp/~ohai/rubysdl.html Ruby/SDLの歴史 z 2000年から開発 z 2001年にversion 0.1を公開 z 2005年10月にversion 1.0を公開 z 最新版はversion 1.3.0 そもそもSDLって? z クロスプラットフォームマルチメディアライブラリ z Linux, Windows, BeOS, MacOS (X), *BSD… z 様々なバックエンド z DirectX、GDI、X… z ゲーム、エミュレータ、動画再生ソフトなど z 基本はC言語用→様々な言語バインディング Perl, Python, Ada, Erlang, ML, Scheme, Java, C#, Ruby, Haskell… http://www.libsdl.org/ z z Ruby/SDLで何ができるのか z グラフィック 2D高速描画 z BMP、PNG、JPEGなどの読み込み z OpenGLと組み合わせて3D描画 z 文字列の描画 z z 音声出力 z キーボード、マウス、ジョイパッド z リアルタイムなものに強い Ruby/SDLで何ができないのか z ×高水準なGUI z ×音声入力 z ×高度な画像加工やPNGの出力 z SDLの守備範囲外 z 自前で実装すれば可能 Ruby/SDLの特徴 z SDLのAPIに比較的忠実 z 高速なAPIと便利だけど遅いAPI z 危険な機能は使えないように z ThreadやCallBack関連 z それ以外はできるだけ機能を網羅 z 高いPortability z 1行も変更せずにWinでもLinuxでも動く! 利用例 z ゲームや簡単なデモなどに使われている z Ruby/SDL Users – 作品リンク z http://mono.kmc.gr.jp/proj/rubysdl/?Works 周辺のはなし z OpenGL z OpenGL Interface、Riko z 高レベルAPI z Miyako z MyGame z その他 z sgl、librend Ruby/SDLの今後 z 半年に1度はバージョンアップ z SDLの開発に追随 z 内部構造の改良 z 英語のドキュメント Ruby/SDLスターターキット 原 悠(yhara) 自己紹介 z原 悠 (yhara) z 滋賀在住 z Ruby歴6年 z るびま記事 z 「Ruby/SDL で始めるゲームプログラミング」 z Ruby勉強会@関西での発表 「Plagger meets Ruby」 z 「30分でわかる継続の使い方」 (来週) z matzがあまり好きではない^^;言語といえば? ○○P matzがあまり好きではない^^;言語といえば? PHP HSP HSPとは z ゲームやGUIアプリを簡単に作れる z 趣味プログラマに広く使われている z 本が7冊以上 z (言語としてはともかく)ツールとしてとても優れ ているからこそ普及した HSPはなぜ普及したか (1) インストールが簡単 (2) 作品の配布が容易 (3) 解説サイトがたくさんある HSPはなぜ普及したか (1) インストールが簡単 (2) 作品の配布が容易 (3) 解説サイトがたくさんある Ruby/SDLでもなんとかできないか? ↓ Ruby/SDLスターターキット (1) インストールが簡単 z ダウンロードして解凍するだけ! z Rubyのインストールがいらない z PATHの設定がいらない z MS-DOSプロンプトがいらない 使い方 z (1) main.rbを編集 z (2) game.exeをダブルクリック 内部の仕組み z Exerb game.exe ruby.exe task.rb start.rb main.rb player.rb items.rb z 画像 音声 Rubyスクリプトをexeにまとめてくれるツール 内部の仕組み z 部分Exerb ↓動的にrequireされる game.exe ruby.exe task.rb start.rb main.rb 画像 player.rb items.rb 音声 z main.rbより先をexeの外に出す z スクリプト部分は自由に書き換え可能に 応用 z VisualuRubyスターターキット z RMagickスターターキット z dRubyスターターキット … etc z インストールが要らない →学校のコンピュータ室で使える →中高生のクラブ活動で使ってもらえる (2) 作品の配布が簡単 z 必要なファイルをzip圧縮するだけ z ランタイム一切不要 z 友達のPCにRubyが入ってなくてもOK (3) 解説サイトがたくさんある z 公式サイト 充実したリファレンスマニュアル z 簡単なチュートリアル z z サンプルプログラム z Ruby/SDLのパッケージに付属(sample/*.rb) z Rubyist z z Magazine(るびま)記事 18号 Ruby/SDL で始めるゲームプログラミング【前編】 19号 Ruby/SDL で始めるゲームプログラミング【後編】 Ruby/SDL Users (Wiki) z http://mono.kmc.gr.jp/proj/rubysdl/ Ruby/SDL Users (Wiki) z http://mono.kmc.gr.jp/proj/rubysdl/ まとめ z 人間、使い慣れた言語を使い続けるもの z 例:最初にPerlを学ぶ→Perl使いに まとめ z 人間、使い慣れた言語を使い続けるもの z 例:最初にPerlを学ぶ→Perl使いに →先手必勝 →中高生重要 →スターターキット重要 →応援してください (^^; ご清聴ありがとうございました
© Copyright 2024 Paperzz