ムービーを表示したその上から違う画像を表示することはできますか?
もし出来るのならサンプルプログラムもお願いします。
簡単な質問でスイマセン。
ムービー
Re:ムービー
技術的に問題ないのであれば「可能」です。
しかし、方法は環境によりますので、下記は期待に添える内容かどうかはわかりません。
(自身でサンプルプログラムを書くのは時間的に無理です)
環境が Windows XP 以降、DirectX9 であれば、DirectShow を利用してムービーを再生・表示しながらムービー以外を描画することができます。
(DXライブラリであれば、リファレンスを熟読すればできるかと思います)
下記に大まかな方法を書いておきます。
・DirectShow のカスタムレンダラを用意する。
・そのカスタムレンダラは、 DirectX9 のテクスチャに転送させる。
・そのテクスチャを背景に描画する
上記ができればムービーをテクスチャ代わりに出来るので、いろいろと自由に扱えるはずです。
なお、上記の方法を行っている処理のサンプルプログラムと解説が下記リンクに掲載されてます。
http://www.shader.jp/xoops/html/masafum ... how001.htm
なお、ムービーの形式やサイズなどのよりますが、再生中は10%程度(あるいはそれ以上)のCPU負荷が掛かります。
しかし、方法は環境によりますので、下記は期待に添える内容かどうかはわかりません。
(自身でサンプルプログラムを書くのは時間的に無理です)
環境が Windows XP 以降、DirectX9 であれば、DirectShow を利用してムービーを再生・表示しながらムービー以外を描画することができます。
(DXライブラリであれば、リファレンスを熟読すればできるかと思います)
下記に大まかな方法を書いておきます。
・DirectShow のカスタムレンダラを用意する。
・そのカスタムレンダラは、 DirectX9 のテクスチャに転送させる。
・そのテクスチャを背景に描画する
上記ができればムービーをテクスチャ代わりに出来るので、いろいろと自由に扱えるはずです。
なお、上記の方法を行っている処理のサンプルプログラムと解説が下記リンクに掲載されてます。
http://www.shader.jp/xoops/html/masafum ... how001.htm
なお、ムービーの形式やサイズなどのよりますが、再生中は10%程度(あるいはそれ以上)のCPU負荷が掛かります。
Re:ムービー
可能ですし、サンプルプログラムを見るほどの事ではないですよ。
ただ、動画の描画関数の後で画像の描画関数を書けばいいだけです。(合計2行)
書いた順番に描画されるので、後に書いたものが上にきます。
このHPで公開しているゲームAerobeatはまさに動画の上にゲーム画像を描画しています。
(参考)[nico]http://www.nicovideo.jp/watch/sm8808750[/nico]
少し昔までは動画を背景にするなんて考えられませんでしたが、
最近のPCでは割とまともに動きます。
スペックが低いPCで処理落ちする事を覚悟の上であれば採用するのもありかもしれません。
ただ、動画の描画関数の後で画像の描画関数を書けばいいだけです。(合計2行)
書いた順番に描画されるので、後に書いたものが上にきます。
このHPで公開しているゲームAerobeatはまさに動画の上にゲーム画像を描画しています。
(参考)[nico]http://www.nicovideo.jp/watch/sm8808750[/nico]
少し昔までは動画を背景にするなんて考えられませんでしたが、
最近のPCでは割とまともに動きます。
スペックが低いPCで処理落ちする事を覚悟の上であれば採用するのもありかもしれません。