1 #ifndef FMV_H 2 #define FMV_H 3 4 typedef struct 5 { 6 IMAGEHEADER *ImagePtr; 7 int SoundVolume; 8 int IsTriggeredPlotFMV; 9 int StaticImageDrawn; 10 11 int MessageNumber; 12 13 // disabled direct3d stuff 14 //LPDIRECTDRAWSURFACE SrcSurface; 15 //LPDIRECT3DTEXTURE SrcTexture; 16 //LPDIRECT3DTEXTURE DestTexture; 17 PALETTEENTRY SrcPalette[256]; 18 19 // buffer used for opengl texture uploads 20 unsigned char* PalettedBuf; 21 unsigned char* RGBBuf; 22 23 int RedScale; 24 int GreenScale; 25 int BlueScale; 26 27 } FMVTEXTURE; 28 29 30 extern int NextFMVTextureFrame(FMVTEXTURE *ftPtr, void *bufferPtr); 31 extern void UpdateFMVTexturePalette(FMVTEXTURE *ftPtr); 32 extern void InitialiseTriggeredFMVs(void); 33 extern void StartTriggerPlotFMV(int number); 34 35 extern void StartFMVAtFrame(int number, int frame); 36 extern void GetFMVInformation(int *messageNumberPtr, int *frameNumberPtr); 37 38 void UpdateAllFMVTextures(void); 39 void ScanImagesForFMVs(void); 40 void ReleaseAllFMVTextures(void); 41 42 void PlayBinkedFMV(char *filenamePtr); 43 44 #endif 45