Comprendre et Appliquer la Mise en Cache Bitmap
Objectifs
Les objectifs de cette vidéo sont :
- Apprendre à utiliser la mise en cache bitmap dans Flash Player.
- Comprendre les conditions où cette optimisation est efficace.
- Optimiser les animations vectorielles en termes de performance et de ressources CPU.
Résumé
Découvrez comment optimiser l'utilisation des formes vectorielles et la mise en cache sous forme de bitmap pour améliorer les performances de vos animations dans Flash Player.
Description
Lorsque nous avons optimisé nos formes vectorielles, nous avons réussi à gagner quelques pourcents sur le nombre de courbes de cette forme. Ce n'est pas forcément suffisant, et nous avons ensuite une autre possibilité, possibilité qui peut donner des résultats énormes mais qui est aussi limitée à un certain cas d'utilisation. Cette possibilité est accessible dans les propriétés du clip et se nomme la mise en cache sous forme de bitmap. Lorsque nous cochons cette case, le flash player va entre guillemets prendre une photo de notre clip sous forme de bitmap puis l'animer au niveau du rendu du flash player cette photo plutôt que l'élément vectoriel de base. Cela fera gagner beaucoup de performance au flash player puisque animer un élément bitmap lui demande moins de calcul qu'un élément vectoriel.
Nota Bene: Dès que l'aspect de notre clip est amené à changer, Flash doit reprendre une nouvelle photo du clip de manière à refléter le changement. A partir du moment où il reprend une nouvelle photo, il refait fonctionner son moteur vectoriel de manière à faire un rendu de l'image vectorielle pour ensuite le stocker en bitmap, ce qui au lieu de faire gagner des performances ne peut qu'en faire perdre un petit peu plus que de ne pas avoir utilisé la mise en cache.
Dans quel cas est-ce que le clip change d'aspect ? Lorsqu'il subit une rotation, un changement d'échelle ou lorsqu'il y a un changement graphique interne. Donc cette mise en cache sous forme de bitmap, nous ne l'utiliserons que pour un clip qui est animé en translation. L'animation en translation sur l'axe Y permet de gagner des performances importantes, voire essentielles, surtout quand on passe de l'utilisation autour de 80-90% à 30% du CPU. Nous avons ainsi économisé du poids parce que nous avons conservé notre élément vectoriel et économisé des performances en demandant de rendre cet élément vectoriel en bitmap. Notez que cette option de cache sous forme de bitmap est accessible pour le symbole bouton et en code ActionScript via la propriété cache-as-bitmap.