Historique des modifications - Message

Message #11240

Sujet: Cinématique


TypeDateAuteurContenu
Dernière modification10-05-2013 09:18:23Neckara
Bonjour,

J'ai réussi à corriger les erreurs "deprecied", mais en toute sincérité, ton code a pas mal de choses qui produisent des comportements indéterminés comme des variables non-initialisées etc.

Là j'arrive à jouer les 4 premières frames d'une vidéo mais la vidéo s'arrête juste après, il faut donc que je continue à creuser.

Sinon dans ce code :
bool CGUIVideo::refreshByTime()
        {
            bool rf;
            if(data->Play
                    #if defined   SDL_SUPPORT
                        && SDL_GetTicks() - lastTime > videoFPS*1000
                    #elif defined SFML_SUPPORT
                        && timer.GetElapsedTime() > videoFPS
                    #elif defined IRRLICHT_SUPPORT
                        && Timer->getRealTime() - lastTime > data->videoFPS*1000
                    #endif
              )
            {
                #if defined SDL_SUPPORT
                    lastTime = SDL_GetTicks();
                #elif defined SFML_SUPPORT
                    timer.Reset();
                #elif defined IRRLICHT_SUPPORT
                    lastTime = Timer->getRealTime();
                #endif
                return refresh();
            }
        }

On ne retourne rien si la condition du if est fausse, que devrait-on retourner dans ce cas là?
Il faut en fait retourner true, mais là j'ai maintenant des "flash" d'écrans noirs, je pense savoir comment résoudre le problème, sinon le code fonctionne très bienwink

Je vais essayer de rendre le code fonctionnel puis je relirais pour corriger tout ce qui pourrait provoquer des comportements indéterminés.
Création du message10-05-2013 09:13:05Neckara
Bonjour,

J'ai réussi à corriger les erreurs "deprecied", mais en toute sincérité, ton code a pas mal de choses qui produisent des comportements indéterminés comme des variables non-initialisées etc.

Là j'arrive à jouer les 4 premières frames d'une vidéo mais la vidéo s'arrête juste après, il faut donc que je continue à creuser.

Sinon dans ce code :
bool CGUIVideo::refreshByTime()
        {
            bool rf;
            if(data->Play
                    #if defined   SDL_SUPPORT
                        && SDL_GetTicks() - lastTime > videoFPS*1000
                    #elif defined SFML_SUPPORT
                        && timer.GetElapsedTime() > videoFPS
                    #elif defined IRRLICHT_SUPPORT
                        && Timer->getRealTime() - lastTime > data->videoFPS*1000
                    #endif
              )
            {
                #if defined SDL_SUPPORT
                    lastTime = SDL_GetTicks();
                #elif defined SFML_SUPPORT
                    timer.Reset();
                #elif defined IRRLICHT_SUPPORT
                    lastTime = Timer->getRealTime();
                #endif
                return refresh();
            }
        }

On ne retourne rien si la condition du if est fausse, que devrait-on retourner dans ce cas là?
Il faut en fait retourner true, mais là j'ai maintenant des "flash" d'écrans noirs, je pense savoir comment résoudre le problème, sinon le code fonctionne très bienwink

Je vais essayer de rendre le code fonctionnel puis je relirais pour corriger tout ce qui pourrait provoquer des comportements indéterminés.

Retour

OptionsLiens officielsCaractéristiquesStatistiquesCommunauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1441 sujets
11339 messages
Dernier membre inscrit: Saidov17
274 invités en ligne
membre en ligne: -
RSS Feed