2010-02-03 8 views
0

Dans mon projet de jeu iPhone actuel, j'utilise UIView qui sont des éléments de jeu (ce sont des tuiles). L'animation un par un fonctionne bien, ou dans une petite série (5 UIView animant en même temps). Mais une fois que j'ai décidé d'animer ces mêmes UIView plus massivement ensemble, je commence à avoir un problème de rendu bizarre (tout l'écran tactile de l'iPod devient noir puis revient à la vue du jeu une fois l'animation terminée ou presque, dans d'autres cas, l'écran scintille entre le noir et la vue réelle du jeu pendant qu'il essaie d'animer).Animer plusieurs problèmes UIVIew cause

J'ai fait plusieurs tests et jusqu'ici il semble que jusqu'à 18 UIView étant animés je n'ai aucun problème, mais une fois que j'arrive à 30 UIView, je vois ces problèmes de rendu. Et la transition d'animation que j'utilise est la Flip de droite.

Existe-t-il un maxiumum de thread d'animation pouvant être exécuté en même temps?

J'appelle une méthode sur ma sous-classe UIView qui fait les animations standards de validation d'animation de début. Et je mets le cache à OUI.

Des idées qui pourraient être la cause du bug de rendu?

Merci pour votre collaboration à l'avance.

Répondre

1

Il n'y a pas un maximum explicite d'animations pouvant s'exécuter en même temps. Mais, chaque animation utilisera la mémoire et l'utilisation de l'unité centrale. Cela dépend beaucoup du type d'animation que vous faites. Donc, vous essayez probablement de faire trop d'animation en même temps. L'utilisation de l'animation UIView est idéale pour beaucoup de choses, mais parfois vous devez utiliser quelque chose de plus approprié comme OpenGL. Peut-être que vous êtes dans cette situation.

0

Vous risquez de rencontrer des problèmes de mémoire ou de limite de GPU si vous essayez d'en faire beaucoup avec les animations UIView. Vous voudrez peut-être essayer de le faire avec des couches, mais il y a des limites à ce que le GPU peut gérer.

Questions connexes