iron rubyとsilverlightとゲームと

27
IronRubySilverlightゲームと kumaryu IronRuby, Silverlight, and Game

Upload: kumaryu

Post on 21-Jun-2015

1.301 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Iron rubyとsilverlightとゲームと

IronRubyとSilverlightとゲームと

kumaryu

IronRuby, Silverlight, and Game

Page 2: Iron rubyとsilverlightとゲームと

2/27

自己紹介● kumaryu (坂本龍一)● Rubyゲーム会議2010主催者● 組み込みっぽいことやってます● (rsdlェ…)

Page 3: Iron rubyとsilverlightとゲームと

3/27

概要● IronRubyとSilverlightについて● ゲーム作った● Silverlightとゲームについて● まとめと今後

Page 4: Iron rubyとsilverlightとゲームと

4/27

IronRubyについて● .NET版Ruby● 1.8.6ベース● .NETのクラスをそのまま使える● 午後のセッションを見よう● http://ironruby.net/

Page 5: Iron rubyとsilverlightとゲームと

5/27

Silverlightについて● MS版Flash● Windows・Mac・Linux (Moonlight)● ActionScriptのかわりに.NET

● IronRubyも動く● http://msdn.microsoft.com/ja-

jp/silverlight/

Page 6: Iron rubyとsilverlightとゲームと

6/27

ゲーム作った

デモ

Page 7: Iron rubyとsilverlightとゲームと

7/27

ゲーム作った● STGぽいもの

● 半リアルタイム?● 1ボタンでできる

● ブラウザ上でも遊びやすい

Page 8: Iron rubyとsilverlightとゲームと

8/27

画面

Page 9: Iron rubyとsilverlightとゲームと

9/27

Silverlightの描画● コントロールを置いて描画● Imageをたくさん配置が基本● アルファブレンドできる

● 加算や減算がない…

Page 10: Iron rubyとsilverlightとゲームと

10/27

WriteableBitmap● オフスクリーン描画● コントロールなんでも描ける● 増減しそうなものを描く

● 背景● キャラ● 弾

Page 11: Iron rubyとsilverlightとゲームと

11/27

WriteableBitmap

Page 12: Iron rubyとsilverlightとゲームと

12/27

UI● 標準コントロールを改造● リソースをいじるだけ

Page 13: Iron rubyとsilverlightとゲームと

13/27

UIProgressBar

ListBox

Button

Page 14: Iron rubyとsilverlightとゲームと

14/27

更新処理● 描画時に呼ばれるイベント● CompositionTarget.Rendering● 60fps…?

Page 15: Iron rubyとsilverlightとゲームと

15/27

更新処理の中身● 至って普通のRubyコード● REXMLやRaccもそのまま使える

Page 16: Iron rubyとsilverlightとゲームと

16/27

衝突判定● 見た目で衝突判定● VisualTreeHelper.FindElementsInHostC

oordinates● 背景との衝突判定に使用● 良い子はマネしない

Page 17: Iron rubyとsilverlightとゲームと

17/27

アニメーション● リソースにアニメーション定義● イベントに応じて再生● 非同期再生● 表示にだけ使える

Page 18: Iron rubyとsilverlightとゲームと

18/27

パフォーマンス● IronRubyはそこそこ● 描画もそこそこ● HWアクセラレーション

Page 19: Iron rubyとsilverlightとゲームと

19/27

ハードウェアアクセラレーション● 使える状況が限定される● Windowsのみ● WriteableBitmap不可● そこまでしなくてもいいかも

Page 20: Iron rubyとsilverlightとゲームと

20/27

開発環境● Chiron● VisualStudio

Page 21: Iron rubyとsilverlightとゲームと

21/27

Chironで● コマンドライン起動の開発用サーバ● rbファイルを書くだけ● デバッグはやりづらい● monoを使えばMacやLinuxでも

Page 22: Iron rubyとsilverlightとゲームと

22/27

VisualStudioで● 変数の中身も見れる● ブレークポイントも張れる● デバッグ起動が遅い?

Page 23: Iron rubyとsilverlightとゲームと

23/27

VisualStudioで

Page 24: Iron rubyとsilverlightとゲームと

24/27

まとめ

Page 25: Iron rubyとsilverlightとゲームと

25/27

いいところ● UI作成がすごい便利● いろんな所で動く● VisualStudioでRuby…?

Page 26: Iron rubyとsilverlightとゲームと

26/27

残念なところ● 描画がゲーム向きでない● キーボードとマウスのみ● デバッグめんどい

Page 27: Iron rubyとsilverlightとゲームと

27/27

おすすめ● UIが複雑なゲームにおすすめ● Expression BlendはゲームUIに便利● Visual StudioのIronRubyサポート拡大に期待