Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
FreePascal / Lazarus
|
Re: Optimierung einer SpriteEngine
4. Dez 2007, 18:49
etwas spät ich weiß, aber ich bin schon vor einiger Zeit auf diesen Interessanten Beitrag von dir gestoßen und habe einige fragen.
Was Passiert bei dir wenn sich mehrer Objekte Bewegen ?
Ich habe jetzt eine eigene Engine Angefangen die nutzt Intern nur TCanvas und TBitmap....
sie Besteht aus drei Klassen:
TPluto2DEngine
TPlutoSpritmanger
TPluto2DSprite
Wenn ein Sprite gezeichnet wird, löst es ein event aus, das von der Engine aufgefangen wird, und wiederum alle Sprits in allen Spritmangern neuzeichnet.
Damit sich das Programm nicht "Aufhängt" Gibt es bei der Draw Methode einen Default Paramter der besagt das der Event nicht ausgelöst wird.
Damit es zu keinen Grafik Fehler kommt, wird dieser Event ausgelöst.
Weil wenn sich zwei Sprite überscheiden, würde es ja zu einem Grafik Fehler kommen, wenn einer von den Sprite sich Weg-Bewegt.
Der Sprit hat zugief auf die 2DEngine und auf den Spritmanger, jeder Sprit muss einen angehören.
Jetzt gibt es noch eine Imagelist die das alle Grafiken lädt und den eine ID, einen Namen und einem Typ zuordnen z.b. ID=id001 Name=Player1 Typ=Spieler
geht dein ansatzt auch in dieser Richtung ?
Michael Springwald MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
|