I recompiled the plugin, but there is a little problem (I fixed that locally):
- You left a merge conflict mark in TheoraMovieClip.h, lines 45ff.
- The same on CEGUI_TheoraDemo/src/Makefile.am, lines 9ff and CEGUI_TheoraDemo/configure.ac, lines 36ff.
The demo still crashes.
:oops: Didn't know I left a merge conflict in there.. I'm too advanced with cvs yet. Are you saying that during an cvs upate it was unable to merge properly? I usually do a clean cvs checkout myself.. But will keep an eye out in the future, and try to avoid that problem.
Awesome you got some video showing up
Ogre has a few different things that apply to materials.. There is the material itself, a technique, a pass, and a texture unit. Now, the plugin will create a textureunit itself. It does not create/destroy materials (even though there is a method named destroyAdvancedMaterial or what not)...
Now, the CEGUI demo creates a material in the movie logic class. Well, since the CEGUI demo always uses the same material to play videos on (even when switching videos), it first checks to see if the material exists. If it doesn't, an exception is thrown from Ogre, which the MovieLogic class catches and then creates a material if one was not found. It also creates the one technique and one pass. Then it creates a textureunit. It also set some state values for the plugin to use when it creates the video texture: void MovieLogic::playMovie( const String& movieName ) of CEGUI demo.
Now, as I said, the TextureUnitSTate (tus) is created in the CEGUI demo.. though, it is deleted from the Plugin.. Now, why I did this, I cannot really recal right this moment, I think it was related to how the material serialiser worked (as my plugin also works through material scripts). I'll have to look into that.
Feel free to ask anymore questions if you still have problems, or are still unsure how it works.