Historique des modifications - Message

Message #11240

Sujet: Cinématique


Type Date Auteur Contenu
Dernière modification 10-05-2013 09:18:23 Neckara
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 bien wink

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 message 10-05-2013 09:13:05 Neckara
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 bien wink

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

Retour

Options Liens officiels Caractéristiques Statistiques Communauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1440 sujets
11337 messages
Dernier membre inscrit: Saidov17
145 invités en ligne
membre en ligne: -
RSS Feed