Ich habe ein einfaches SDL2-Fenster, auf dem ich versuche, einen Pfad zu zeichnen.SDL_RenderDrawLines mit einer Ghost Line
Ich kann zehn Mal klicken und
if (button == SDL_BUTTON_LEFT)
{
if (Path.size() == Clicks) return;
// Clicks is set by the initializer
// Path is a vector of SDL_Points
SDL_Point p;
p.x = x;
p.y = y;
Path.push_back(p);
}
SDL_Point *points = new SDL_Point[Clicks];
for (int i = 0; i < Path.size(); i++)
{
if (i == Clicks) break;
points[i] = Path[i];
}
SDL_RenderClear(ren);
SDL_SetRenderDrawColor(ren, 0, 255, 0, 255);
SDL_RenderDrawLines(ren, points, Clicks);
eine Linie mit diesem Code ziehen, der gut arbeitet, erlaubt es mir ohne Frage einen Weg zu zeichnen, aber es schafft eine Art Geisterlinie, fliegt oben auf dem Bildschirm.
Gibt es etwas, was ich tun kann loswerden dieser Linie zu bekommen und SDL_RenderDrawLines verwenden? Wenn nicht, welchen Anruf sollte ich verwenden?
Ja, die Punkte provozieren jedes Mal, wenn ich auf eins klicke und Clicks behält seine Größe von 10, die ich während der Initialisierung der Klasse gesetzt habe. – rudes
Martin, danke, ich fing an, daran herumzubasteln und fand heraus, dass das Ändern von Clicks in RenderDrawLines in vector.size() es komplett reparierte! – rudes