Okay, ich habe jetzt ein paar Stunden debuggt und folgendes ist dabei rausgekommen:
Im ersten Frame(relativ zur Schussabgabe) verhält sich der Schuss wie er soll (wird gerendert)
Beim Update des Frameworks am Anfang des zweiten Frames wird er aber gründlich zerschossen,
d.h. Zeiger auf Image auf 0 gesetzt, Positionen in gigantisch winzige Werte geändert usw.
Den Fehler konnte ich auf eine Funktion zurückführen nämlich: EventLoop():
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
|
void CFramework::EventLoop()
{
while (App->GetEvent(Event))
{
if (Event.Type == sf::Event::Closed)
App->Close();
}
}
|
Innerhalb dieser Zeilen (oder jedenfalls passiert esimmer dann, wenn die Funktion ausgeführt wird)
muss der Fehler liegen.
Eigentlich müssten sie richtig sein, aber es produziert immer wieder den selben Müll.
Ich bin langsam mit meinem Debuggerlatein am Ende, es wäre also nett, wenn ihr mir sagt,
wie ich weitersuchen soll.
Danke schonmal bis hierhin