Я пытаюсь воссоздать Space Invaders, и у меня возникают проблемы с отображением моего спрайта захватчика в ряд, а не поверх друг друга.У меня есть STRUCT под названием Sprite, который содержит координаты x, y, ширину, высоту и цвет, и я передаю эту информацию в пользовательскую функцию, которая рисует спрайт.Все работает, если я просто создаю один спрайт.Но я хочу создать несколько (скажем, 5 для тестирования).Таким образом, я создал массив структуры Sprite и в цикле For пытался изменить положение x каждого элемента в массиве, а затем использовал пользовательскую функцию для рисования элемента массива на каждой итерации цикла, но для некоторыхпричина, по которой я не получаю правильный результат.Я вижу в отладчике, что положение x на самом деле меняется, но я думаю, что все еще движется поверх друг друга.
struct INVADER
{
int xPos = 100;
int yPos;
int width;
int height;
D3DCOLOR color;
INVADER()
{
xPos;
yPos;
width = 64;
height = 64;
color = D3DCOLOR_XRGB(255, 255, 255);
}
};
INVADER invaderArmy[5];
for (int index = 0; index < 5; index++)
{
//invaderArmy->xPos = 100;
invaderArmy[index].xPos *= index;
Draw_And_Rotate_Sprite(invaderImage, invaderArmy[index].xPos);
}