@wikiメニュー編集表示ツールヘルプブックマーク登録RSS登録
このウィキに参加ログイン
新規ページ作成
すでにあるページをコピーして新規ページを作成 スレッドフロート型掲示板から引用して新規ページ作成(α版) ブログの内容から引用して新規ページ作成(α版) ファイルをアップロードして新規ページ作成(α版) 他のホームページから引用して新規ページ作成(α版)
[PR] 無料ホームページ @PAGES [PR] オークション@pedia [PR] 2ch型無料レンタル掲示板 @chs
@wikiで新規wikiを作成
このページを編集 このページを編集(メニュー非表示編集;α) このページをコピーして新規ページを作成 このページのページ名を変更 このページの編集モードを変更 このページの閲覧/編集権限の変更
このページにファイルをアップロード
このウィキにファイルをアップロード(FTP機能/管理者のみ利用可)
メニューを編集(メニュー部分は非表示で編集) 右メニューを編集(メニュー部分は非表示で編集)
このページの最新版変更点 このページの編集履歴(バックアップ) このページへのリンク元 このページへのトラックバック
このページをPDFで表示(α版)
関連ページ(α版) 関連ホットワード(α版)
このwikiのページ一覧 編集履歴(バックアップ)のあるページ一覧 このwikiのタグ一覧 このwikiの更新情報RSSこのwikiの更新情報RSS このwikiの新着ページRSSこのwikiの新着ページRSS
このwiki内を検索 @wikiパーツ▶  @wiki便利ツール▶  このwikiの管理者に連絡
@wiki助け合いコミュニティ @wiki助け合い掲示板
wiki(ウィキ)って何?
初心者ガイド
ご利用ガイド 良くある質問 プラグイン一覧 編集モードの違いについて 不具合や障害を見つけたら 管理・設定マニュアル
はてなブックマークする FC2ブックマークに追加 Livedoor クリップに追加 Yahoo!ブックマークに登録 del.icio.usに追加
はてなRSSに追加 livedoor ReaderにRSSフィードを登録 Yahoo!にRSSフィードを登録 BloglinesにRSSフィードを登録 NewsGator OnlineにRSSフィードを登録 iGoogleにRSSを追加
@wikiパーツ:あなたのサイトにWikiデータを簡単表示!
最近更新したページの一覧を表示する 最近作成したページの一覧を表示する このwiki内を検索するフォームを表示する このwikiのタグクラウドを表示する 自動リンク辞書を利用する
@wiki便利ツール:トップページ
まとめサイト作成支援ツール RSSかんたん作成 興味キーワードをチェック!!(RSSナビ) いろんなblogのRSSかんたん作成ページ アマゾン商品検索(簡単アフィリエイト) wikiに株式情報(日本)を表示 wikiに株式情報(中国)を表示 かんたんHTML直接入力 Q&Aサイトかんたん連携作成 wikiに為替情報を表示 はてなアンテナと簡単連携
(有)胡桃沢製作所 made in "naha"

(一応)プロフィール


HN:naha(沖縄県の某市とは一切関係ありません)

分類:動物界脊索動物門哺乳網サル目ヒト科ヒト属の雄(つまり人間の男)

仕事:まだ学生

得意分野:哲学、生化学、技術家庭(文系にも理系にもなれない困ったちゃん)

趣味:ラノベ作り、料理(主に製菓)



トップページ > Ruby > level5



動画再生

来るところまで来てしまいましたw
MyGameの親ライブラリと言えるSDLには、MPEGを再生させる機能が付いています
ただし、使用方法が少し複雑なのと、インタプリタ故の遅さが難点です
まあ、exeファイルに変換してしまえばそれまでですがw

下準備

動画再生を行う前に、ある程度の準備(新出メソッドの勉強)が必要です
まずは順番に見ていきましょう

SDL.init(SDL::INIT_VIDEO|SDL::INIT_AUDIO)

initは初期化を表します
本来なら、動画の映像と音源のON/OFFの設定をしなければならないのですが、
これを使えば全てONで初期化してくれます

screen = SDL.setVideoMode(640, 480, 32, SDL::SWSURFACE)

右辺に注目して下さい
MyGameでは自動で行っていましたが、SDLではsetVideoModeでウィンドウを生成します
引数は左から横幅、縦幅、画面の色(ビット)、ウィンドウタイプです
ウィンドウタイプについては、後々説明する予定です
そして生成したウィンドウの情報を、screenに代入します

オブジェクトを作る

まずはいつも通り、MPEGのオブジェクトを作りましょう

mov = SDL::MPEG.load('パス名')

オブジェクト指向のページを見た人なら、ティーンと来たはずですwww
これは「SDLクラスの中のメンバ関数を呼び出す」と言う意味です

再生サイズを設定する

取り込んだ動画を再生させるには、再生サイズを設定する必要があります
とは言え、それほど難しくはありません

mov.setDisplay(screen)

setDisplayで、動画オブジェクトの再生サイズを設定します
引数に先ほどのscreenを代入すれば、ウィンドウ全体で再生出来ます

動画を再生させる

オブジェクトさえ出来れば、再生させるのは簡単です

mov.play

これでOK、簡単でしょ?

動画を止める

動画を途中で止めるには、次のメソッドを呼び出します

mov.stop

…あまりにも分かりやすいメソッドですw

exeにする

Rubyの弱点である遅さを克服するために、完成したファイルをexeにしましょう
ちなみに、今回は例としてhello.rbをexeに変換します

mkexyファイルを作る

exeの前段階として、mkexyファイルを作成します
まずは、変換したいファイルのあるディレクトリ(フォルダ)でコマンドプロンプトを開きます
そこで次のように入力します

mkexy hello.rb

ファイルが実行されるので終了させます
するとhello.exyというファイルが作られます

プロンプトを開けさせない

exeに変換する前に、exyファイルをメモ帳なりで開きます
そこにある「core: cui」を「core: gui」に書き換えます
こうすると、exeファイルにして実行したときにプロンプト窓が開かなくなります

exe化

さて、色々準備も終わったところで、いよいよexeに変換です
もう一度プロンプトを開いて、以下を実行します

exerb hello.exy

これでhello.exeが完成しました!

注意点

exeにしましたが、これだけでは動きません
「C:\Program Files\ruby-1.8\bin」内にあるdllファイルを
exeファイルのあるディレクトリの中にコピーする必要があります
また、文字列表示などをした場合は、
「C:\Program Files\ruby-1.8\share\mygame」内にあるフォントファイルもコピーしてください