J'ai quelques animations assez simples (déplacer du texte, déplacer des ellipses, etc.) et tourner en plein écran (1920x1080 moins la barre des tâches) la suite WPF Performance rapporte un bon framerate autour de 50 FPS tout au long de l'animation. Dirty Rect Addition est quelque part autour de 300 rect/s, les trames SW sont entre 0 et 4 et les trames HW sont entre 3 et 5. L'utilisation de la mémoire vidéo est d'environ 80 Mo.Comment savoir pourquoi une animation bégaie?
Le problème est que les animations bégaie tous les demi-seconde. Il n'est certainement pas fluide :-(
Mon appareil est un nouvel ordinateur portable Dell XPS 15 avec le GeForce GT 435 avec 2 Go de mémoire - Les pilotes sont à jour (le même comportement se produit sur mon netbook (en plein écran) et donc je ne pense pas qu'il est lié au matériel)
Si je fais la petite fenêtre le bégaiement disparaît
le bégaiement se produit avec le plus simple des animations -.. même avec seulement quelques éléments mais ajouter plus d'éléments le rend certainement plus visible
Comment puis-je savoir quelle cause s ce bégaiement?
Quand je pense à cela, je n'ai pas vu d'animations WPF qui fonctionnent correctement en plein écran. Est-ce seulement possible?
Peut-être que vous repeignez trop? C'est à dire. les pixels qui n'ont pas changé entre deux images sont marqués comme sales même s'ils ne le sont pas. –
bonne question! En tant que test, avez-vous essayé de ne laisser qu'un seul contrôle animé pour voir si le bégaiement continue? si ce n'est pas le cas, comment mettez-vous à jour les données pour tous les contrôles, c'est-à-dire tout sur le même thread, ou générez-vous des tâches/méthodes parallèles et ensuite mettez à jour l'interface utilisateur? –
> Quand je pense à cela, je n'ai pas vu d'animations WPF qui fonctionnent correctement en plein écran. Aha! WPF est très lent. Le mieux que vous puissiez faire est d'animer une interface utilisateur moins complexe, de réduire le framerate ou d'attendre le framework WTF qui résoudra tous ces problèmes; P –