hibitekitou
VideoTextureで2つのムービーをテクスチャとして貼付けた
cg |2012-12-04
Blenderにて2つのムービーをテクスチャとしてはりつけ、ゲームモードにてムービーを再生する方法。
こちら [blenderartists.org] を参考に、やってみた。
2つのポリゴンで構成されたオブジェクトにそれぞれのポリゴンにUVを設定し、それぞれにマテリアルを設定し、それぞれにテクスチャを設定してます。
マテリアルは片方にはvideo、もう片方にはvideoBと名付けています。
この状態で、Logic Editorの内容をこんな感じに設定しています。
ActuatorsのSoundで指定しているファイルは、この後のスクリプトで設定しているムービーファイルの1つと同じファイルです。
ControllersでPythonを設定して、Modulの内容を video.init_worldやvideo.update としているのは video.pyというファイルにinit_world()やupdate()関数を用意しているからでして、Text Editor上でこんな感じにスクリプトを記述しました。
こんな感じです。
Pキーを押して再生するとこんな感じで無事ムービーが流れました。
たぶん、音の時間で2つのムービーの時間は同期しているんだろうと思います。
とりあえず、メモでした。
なんでこんな事やってんだろw Blender、わけわかんねぇよ。
<追記>
うがっ、再生したらムービーが途中で止まる…。
追記>
こちら [blenderartists.org] を参考に、やってみた。
2つのポリゴンで構成されたオブジェクトにそれぞれのポリゴンにUVを設定し、それぞれにマテリアルを設定し、それぞれにテクスチャを設定してます。
マテリアルは片方にはvideo、もう片方にはvideoBと名付けています。
この状態で、Logic Editorの内容をこんな感じに設定しています。
ActuatorsのSoundで指定しているファイルは、この後のスクリプトで設定しているムービーファイルの1つと同じファイルです。
ControllersでPythonを設定して、Modulの内容を video.init_worldやvideo.update としているのは video.pyというファイルにinit_world()やupdate()関数を用意しているからでして、Text Editor上でこんな感じにスクリプトを記述しました。
import GameLogic as G import VideoTexture as VT def init_world(): ctrl = G.getCurrentController() obj = ctrl.owner if not hasattr(G, 'video0'): matID0 = VT.materialID(obj,"MAvideo") matID1 = VT.materialID(obj,"MAvideoB") G.video0 = VT.Texture(obj, matID0) G.video1 = VT.Texture(obj, matID1) S1 = G.expandPath("//byousoku.mov") S2 = G.expandPath("//byousokuB.mov") G.video0.source = VT.VideoFFmpeg(S1) G.video0.source.repeat = -1 G.video0.source.scale = True G.video0.source.flip = True G.video0.source.play() G.video1.source = VT.VideoFFmpeg(S2) G.video1.source.repeat = -1 G.video1.source.scale = True G.video1.source.flip = True G.video1.source.play() sound = ctrl.actuators["a_sound"] ctrl.activate(sound) G.sound = sound def update(): if hasattr(G, 'video0'): G.video0.refresh(True, G.sound.time) G.video1.refresh(True, G.sound.time)
こんな感じです。
Pキーを押して再生するとこんな感じで無事ムービーが流れました。
たぶん、音の時間で2つのムービーの時間は同期しているんだろうと思います。
とりあえず、メモでした。
なんでこんな事やってんだろw Blender、わけわかんねぇよ。
<追記>
うがっ、再生したらムービーが途中で止まる…。
追記>
コメント ( 0 )|Trackback ( )
・