рисование SDL_Rect не работает

Я пытаюсь построить RTS в C ++ с использованием SDL. Сейчас я пытаюсь сделать прямоугольник, который будет выбирать единицы (изменяемый размер поля выбора). Это будет прозрачный желтый прямоугольник.
Когда я запускаю программу и пытаюсь выбрать несколько модулей. Ничего не происходит (я имею в виду рисование прямоугольника. Выбор еще не сделан)

Это код (в main.cpp):

...
Uint32 selection_colour;
SDL_Rect box_rect;
int M1X = 0;
int M1Y = 0;
int M2X = 0;
int M2Y = 0;

int W;
int H;
...
void init()
{
...
selection_colour = SDL_MapRGBA(screen->format, 0xFF, 0xFF, 0, 0.3);
...
}
...
while(running)
{
while(SDL_PollEvent(&event))
{
if(event.type == SDL_MOUSEBUTTONDOWN)
{

if(event.button.button == SDL_BUTTON_LEFT)
{

M2X = event.motion.x;
M2Y = event.motion.y;

W = M2X - M1X;
H = M2Y - M1Y;

box_rect.x = M1X;
box_rect.y = M1Y;
box_rect.w = W;
box_rect.h = H;

}

}else
{
M1X = event.motion.x;
M1Y = event.motion.y;
}
}

SDL_FillRect(screen, &box_rect, selection_colour);

SDL_Flip(screen);
}

какие-либо предложения??

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]