J'ai un tableau de pixels qui constitue une grille 2D et je veux déplacer ces pixels à droite et à gauche avec le temps ... en permanence, mais la boucle que j'ai créée est assez inefficace et ne permet pas pour beaucoup d'expansion en termes de changement de mouvement. Toute idée sur la façon d'améliorer ce que j'ai déjà serait très appréciée.Amélioration de l'efficacité/de l'extensibilité de la boucle
while (true)
{
for (float i = 0; i < x; i++)
{
foreach (Pixel p in pixels)
{
p.move(10, 0);
}
}
for (float i = 0; i < x * 2; i++)
{
foreach (Pixel p in pixels)
{
p.move(-10, 0);
}
}
for (float i = 0; i < x; i++)
{
foreach (Pixel p in pixels)
{
p.move(10, 0);
}
}
}
Edit: Désolé avait une erreur dans le code de la boucle intermédiaire nécessaire pour être -10 la première boucle se déplace tous les pixels à droite, le second les déplace de nouveau à l'origine, puis vers la gauche, la troisième boucle puis les ramène à l'origine. Vous ne pouvez pas utiliser une seule boucle et utiliser int?
Vous ne devriez pas utiliser de flotteurs. – SLaks
La boucle infinie est votre premier problème ... – JohnFx
qui est actuellement juste pour la simplicité car x est un flottant, et sera changé. – philbert