Video sur un sprites!
Publié : mer. 01/déc./2004 19:37
Quelqu'un a déjà réussi à faire fonctionner la commande RenderMovieFrame(), parce que pour moi, ça plante quelle que soit la manière dont le l'utilise.
Comme je n'ai trouvé aucune doc ou exemple concernant cette fonction, voilà le code que j'utilise.
Chez moi, ça plante à tous les coups 
Comme je n'ai trouvé aucune doc ou exemple concernant cette fonction, voilà le code que j'utilise.
Code : Tout sélectionner
#Window = 0
#Width = 600
#Height = 600
;- Initialisation de DirectX
If InitSprite() = 0 Or InitKeyboard() = 0 Or InitMouse() = 0 Or InitMovie() = 0 Or InitSprite3D() = 0
MessageRequester("Erreur", "Impossible d'initialiser DirectX", 0)
End
EndIf
;- Ouverture de la fenêtre et de l'écran
hwnd = OpenWindow(#Window, 0, 0, #Width, #Height, #PB_Window_TitleBar | #PB_Window_ScreenCentered, "")
OpenWindowedScreen(hwnd, 0, 0, #Width, #Height, 0, 0, 0)
Movie$ = OpenFileRequester("Choisir votre film", "", "Fichiers vidéo|*.mpg;|All Files|*.*", 0)
If Movie$
hMovie = LoadMovie(#PB_Any, Movie$)
If hMovie = 0
MessageRequester("Erreur","Format de fichier inconnu")
Else
Spr = CreateSprite(#PB_Any,MovieWidth(),MovieHeight(),#PB_Sprite_Texture)
If Spr
Spr3D = CreateSprite3D(#PB_Any,Spr)
EndIf
EndIf
EndIf
PlayMovie(hMovie,#PB_Movie_Rendered)
;- Début de la boucle
Repeat
ClearScreen(0, 0, 0) : ExamineKeyboard() : FlipBuffers()
RenderMovieFrame(Spr3D)
Start3D()
DisplaySprite3D(Spr3D,0,0)
Stop3D()
Delay(1)
If KeyboardPushed(#PB_Key_Escape) : quit = 1 : EndIf
While WindowEvent():Wend
Until quit = 1
