Nach vielen durchgehenden Testversuchen habe ich nun die Lösung des Problems erarbeiten können und möchte nun meine erschreckenden Ergebnisse veröffentlichen um alle anderen Entwickler vor diesem Problem zu warnen!
Es scheint sich bei dem beschriebenen Verhalten tatsächlich um einen Fehler der RPG-Maker-Klassen für Sprites und Viewports zu handeln.
Bei meiner Fehleranalyse kam ich letzten Endes zu folgendem vereinfachten Script welches den Fehler sehr eindeutig aufzeigen kann:
Um das Verhalten einmal zu erklären:
Ich erstelle einen Viewport und einen Sprite. Der Sprite ist dem Viewport zugeordnet.
Der Sprite besitzt die korrekten Angaben zu Position, src_rect, Bitmap, ox,oy und allem anderen.
Periodisch wird der Parameter "Sprite.angle" um 1 erhöht.
Die Versuche haben ergeben, dass die Drehung korrekt funktioniert solange die ox / oy Position des Viewports nicht geändert wird!
Setzen wir nun für den Viewport einen ox und einen oy Wert und verschieben den Sprite entsprechend zu der korrespondierenden Position so wird der Sprite unsichtbar sobald wir den Winkel beginnen zu verändern.
Das heist das drehen eines Sprites funktioniert mit den Standardklassen für Viewports und Sprites nur solange das ox und oy des Viewports nicht verändert wird.
Das kann sehr einfach ausgetestet werden indem ALLE Scripte in einem Projekt gelöscht werden, einschließlich Main, und durch das angegebene ersetzt werden. (* Sicherstellen, dass ein Bitmap mit Namen "a" im Ordner vorhanden ist.)
In der derzeitigen Konfiguration wird der Sprite korrekt angezeigt und dreht sich auch.
Entfernt man die Kommentar-Markierungen in dem Script (#) und testet erneut dann sieht man den Sprite nur einmal für einen Bruchteil einer Sekunde aufblinken und anschließend verschwindet er.
Das ist unvorstellbar für mich wie solch ein Fehler überhaupt existieren kann.
Ich muss nun noch daran arbeiten eine Lösung hierfür zu finden. Im schlimmsten Fall muss man wahrscheinlich anstatt den Viewport zu scrollen alle weiteren Sprites innerhalb des Viewports in entgegen gesetzte Richtung bewegen.
Ich bin nach wie vor sehr dankbar für jeden Tipp welchen man mir zu dieser Angelegenheit geben kann.