У меня есть массив пикселей, которые составляют 2D-сетку, и я хочу перемещать эти пиксели вправо и влево с течением времени ... постоянно, но цикл, который я придумал, довольно неэффективен и не позволяет для большого расширения с точки зрения изменения движения. Любые идеи о том, как улучшить то, что у меня уже есть, будут высоко оценены.Улучшение эффективности/расширяемости петли
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);
}
}
}
Изменить: К сожалению была ошибка в коде средний цикл должен был быть первым -10 цикл перемещает все пиксели вправо, второй перемещает их обратно в начало координат, а затем налево, третий затем перемещает их обратно в начало координат.
Вы не должны использовать поплавки. – SLaks
Бесконечный цикл - ваша первая проблема ... – JohnFx
, которая в настоящее время просто для простоты, так как x является поплавком и будет изменен. – philbert