Ich schreibe eine Turtle-Klasse, die Bewegung für das Zeichnen ermöglicht. Ich benutze keine Spielschleife dafür. Benutzer dieser Schildkröte Objekt wird Thema Kommando:SDL2 und C++ in Bezug auf Bildanimation nach einer Zeile
Turtle t;
t.forward(50);
t.left(90);
Der Turtle-Konstruktor Sorgen des Fensters und Renderer Schöpfung nimmt. Alle Interaktion erfolgt durch Programmierung. Keine Abfrage von Tastaturereignissen jeglicher Art. Im Moment bin ich in der Lage eine Spirale Animation mit dem folgenden Code zu machen:
int main(int argc, char* args[]){
Turtle t;
t.clear();
t.color("red");
int numofside = 100;
t.shape("seaturtle");
for (int i=0; i<numofside; i++)
{
t.forward(i + 5);
t.left(75);
SDL_RenderPresent(m_pRenderer);
SDL_Delay(50);
}
SDL_Delay(5000);
IMG_Quit();
SDL_Quit();
}
Die große Frage ist nun, wie die seaturtle Bild haben, die Linie folgen, die gerendert wird?
Ich verstehe das Konzept zu tun, Animation in SDL2 mit Rahmen (Schleife) dh klaren Bildschirm, Render bei der aktuellen Position, erhöhen x, y-Position.
Aber ich kann den Bildschirm nicht löschen, da es meine vorhandenen Zeilen gelöscht, die gezeichnet wurden.
Gibt es eine SDL-Texturfunktion, die ein Bild ein- und ausblenden kann, ohne den gesamten Bildschirm zu löschen? oder irgendeine Idee, es zu tun?