今回は半分弱が初参加、60人の定員が満員という勢い。 バス一本乗り過ごして、10分ほど遅れて到着。
丸投げシリーズ(3) C
西本さんの発表。
CのライブラリをRubyから使うというもの。
* #include "ruby.h"
* Init_foo
(foo
はrequire 'foo'
される)の中に、クラス情報、あるいはメソッド情報をつらつらと書きつくる。
* mkmfライブラリを使って、Makefileを作る。
* makeする。
* 30倍から100倍程度の高速化ができることも。
実はなかなか踏み出せないでいた領域だけに(いつもRubyレベルでのアルゴリズムの最適化とかで逃げてる。逃げてるのか?)非常に役立つ内容だった。
さんざん最適化した上でNativeにしたら、相当速くなりそうだ。
非CygwinのWindowsコンパイラを探さないと。
大量のマクロとrb_*が次なる壁。
ゲーム用フレームワーク 「Miyako」
サイロス誠さんの発表。スライドの一枚目がCryossになってる気がしたけど。
本人曰く、女性参加者が予想外に多くて、ネタに対する反応が心配だったそうで、確かにちょっとヒヤヒヤ。
(概ね、高飛車な女性がMiyakoのなんたるかを博士&助手に説明するという内容)
僕は前のほうだったのであまり気にならなかったけど、文字のサイズが小さくて後ろのほうの人は見えなかったそうで、途中から、普段勉強会の会計を担当してくださっている、あゆさんが声優をやって、別の意味で盛り上がっていた。
肝心の内容のほうは、発表の形式がシナリオ形式だったので、記憶に残ってるのは主にデモ中心。
紙芝居的なゲーム(呼び方知らない)を作るなら一考の価値あり、だと思います。
Miyako自体のコードはあまりRubyっぽくないので、Rubyっぽい実装になって欲しい。
あと、プレゼンツールとしての使い道に期待する人もいるようで、今後のバージョンアップはそっちの方向に向かうとか。
それなら、フルスクリーン対応は必須になるね。
ライトニングトーク Ruby on Google SketchUP
兼重さんの発表。Googleが発表したブツを早速。 このスピード感がライトニング。 デモは、SketchUpでぐいぐい立体を作って(ここはRubyと関係ない)、PureImage(西本さん作)で作ったテクスチャーを貼り付けるというもの。
西本さん、丸投げばかりじゃなかったのね。
PureImageの回は参加できなかったのですっかり忘れてた。
Rubyと関係ないFollow Meツールがうまくいかないのでちょっとヒヤッとしてた。
Ruby 初級者向けレッスン 7 -ブロックとイテレータ-
最後はかずひこさん・コウザイさんによる発表。 もう七回目になるのか。僕が最初に参加したときは一回目だったかなぁ。 内容は、イテレータ・ブロックを使ってみる、というもの。 今回は、時間がよっぽど足りなかったらしく、途中のキリのいいところ?で終わってしまった。 * injectの引数省略知らなかった * 僕、Ruby歴2年半くらいなんですが・・・ * おじさん向け課題:パスカルの三角形
(1..9).inject([1]){|r,| p r;(r+[0]).zip([0]+r).map{|a| a[0]+a[1]}}
enum_cons
とか勉強になります。
* to_proc
のやつ(.map(&:+)
)、引数一個以上のメソッドを渡しても大丈夫なのか。むむ。
* &:+
が梅干たべたパーマの外国人みたい。
* 偶然か必然か、途中までまったく一緒・・・。1..9 とか、10にすると文字が一文字増えるからだよなぁ。
小波ゼミでは最初からRubyを教え込まれるので、卒業するころにはRuby暦3年とか4年とかざらにいるみたいです。恐るべし。
発表の形式として、壇上で先生と生徒の対話みたいな形がとられていた?(→意図したものだったようで)のは聞いてる方としては入りやすいんじゃないかと思う。
Ruby/SDL上での先生と生徒の対話はちょっと食傷気味だけど。
後半の応用編(ログ解析)は次回に持ち越し?
プリンセスラインに対する京都女子大学の絶大なる影響力(ピポパで臨時便)を目の当たりにしつつ、懇親会へ。
懇親会の内容は日記になるので略。
参考:
トラックバック
トラックバックリンク:
http://blog.netswitch.jp/trackbacks?article_id=98
センスイイ! < 梅干たべたパーマの外国人
なぜか横向きスマイリーは外国人に見えますね。
確かに >横向きスマイリー
一度知るまで、まったく顔文字に見えなかったのも不思議です。
こんばんわ。 フルスクリーン対応ですが、意外とあっさり対応できてしまったので、次期バージョンでリリースします。
あと、640x480以外の解像度にも対応しました。
フルスクリーンはフラグたてるだけですもんね。
多解像度にする場合、フォントサイズとか座標系も変えないといけないのがネックなのかなぁ、と思ってたんですが、その辺りはどうなるんでしょう?
フォントサイズ・座標系は考慮しません。実装者に任せます。 但し、表示範囲を新しい解像度にリセットすることは行います。 PanelとMapは、解像度に依存するので対応策を考えます。
今回のバージョンアップで、「レイアウト」という概念を追加しました。
まぁ、スプライトを特定のシンボル使って解像度が変わっても、その位置に更新されるようになったというわけです。
あと、特定のスプライトの位置によってそのスプライトの位置も更新する「スナップ」というのも付け加えました。
これでもちっとスクリプティングがラクになるかも(^^;
なるほど。
座標やサイズを文字列で(“10%”みたいに)指定するとか、座標を記述しやすいような拡張を施すのもいいかもしれません。
message_box.left = 5.px message_box.width{ 100.percent - 10.px }
とか。
って、もう実装してるんですね。
>って、もう実装してるんですね。 そうですね。 サイズのほうは変わりませんが(出来ないことはないが、一工夫必要。画像ファイルから読み込まれたものも考えると・・・)、座標の方では問題なくできます。