From the log:
Code: Select all
15:58:36: Viewport for camera 'System_Movie_Camera', actual dimensions L: 0 T: 0 W: 1280 H: 1016
15:58:36: [DSHOW] Loading movie named 'C:/Ugly.Betty.S01E14.HDTV.XviD-XOR.avi'.
15:58:36: [DSHOW] -> This movie has dimensions: 608x336.
(Ugly Betty is for my gf to watch! Although it is an interesting show
)
I am re-using code from my splash window, but I went ahead and verified that applied another plan material (Just a jpg file) covered the whole screen correctly.
This is my code at the moment:
Code: Select all
mOverlayMaterial = Ogre::MaterialManager::getSingletonPtr()->create("MovieMaterial",Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
mOverlayMaterial->getTechnique(0)->getPass(0)->createTextureUnitState();
mOverlayMaterial->load();
mDShowMovieTexture = new OgreUtils::DirectShowMovieTexture(mWindow->getWidth(), mWindow->getHeight(), false);
mOverlayMaterial->getTechnique(0)->getPass(0)->getTextureUnitState(0)->setTextureName(mDShowMovieTexture->getMovieTexture()->getName());
...
// Create Panel, Overlay, and Show the Overlay
Ogre::OverlayManager* OM = Ogre::OverlayManager::getSingletonPtr();
if( mOPanel == NULL )
{
// Create a panel
mOPanel = static_cast<Ogre::OverlayContainer*>(
OM->createOverlayElement("Panel", "MoviePanel"));
}
mOPanel->setPosition(0.0,0.0);
mOPanel->setDimensions(1.0,1.0);
mOPanel->setColour(Ogre::ColourValue(1.0,1.0,1.0,1.0));
mDShowMovieTexture->loadMovie(mMoviePath);
Ogre::Vector2 v2 = mDShowMovieTexture->getMovieDimensions();
mOPanel->setMaterialName(mOverlayMaterial.get()->getName());
// mOPanel->setMaterialName("UV_FirstSplash");
mDShowMovieTexture->playMovie();
/*
// Set Size to be the whole window
dynamic_cast<Ogre::PanelOverlayElement*>(mOPanel)->setUV(0,0,
(Ogre::Real) mWindow->getWidth() / mDShowMovieTexture->getMovieTexture()->getWidth(),
(Ogre::Real) mWindow->getHeight() / mDShowMovieTexture->getMovieTexture()->getHeight());
*/
// Create an overlay, and add the panel
if( mOverlay == NULL )
mOverlay = OM->create("MovieOverlay");
mOverlay->add2D(mOPanel);
mOverlay->show();
Also, I have a possible dumb question. I didn't install the Win 2003 SDK, instead I used required pieces I found from the wmv plugin which included dshow.h, and the lib I needed to link to. Could this be the problem?
The reason I did this is because I need to know exactly what libs/includes are used, as I update a personal SDK for others on my team to use. I'm unsure what the 2003 SDK installs, and it would seem difficult to browse through and figure out what bits belong to dshow and its dependencies. I could just force everybody to install this 2003 SDK..
KungFooMasta
-For reassurance, this 2003 R2 SDK is appropriate for winXP using VS2005SP1 + update?