Du bist nicht angemeldet.
Der Hausmeister ist derartig breit, dass er selbst die von mir gesetzten 512er Texturbreiten sprengt... ansonsten passen immer 2 Figuren nebeneinander, aber mit dem Hausmeister muesste ich alles "durcheinandergewuerfelt" im Bild speichern um Platz zu sparen ... so ist alles fein untereinander und geordnet.
Da gerade Figuren fuer "modding" interessant sind (geringer Aufwand) hab ich da die Ordnung drinbehalten (verglichen mit den gepackten Buerografiken ;D).
bye
Ron
Schön, den aktuellen Stand zu wissen.
- CHG: Alle Figuren (außer Hausmeister) in ein Bild gesetzt und TFigures auf TGW_Sprites umgesetzt. Hierdurch werden beim Zeichnen der Figuren Textur-Switches vermieden und Grafik-RAM gespart.
Hat das mit dem Hausmeister einen besonderen Grund?
Um hier mal etwas aktuelles vom Fortschritt TVTs zu berichten.
Zusammengefasste Aenderungen:
Speicherstaende werden per XML gespeichert und dann komprimiert.
Objekte werden nun per Reflection gespeichert, diese neue BlitzMax-Funktion verkuerzt die notwendigen
Funktionen in dem es alle Variablen/Felder eines Types kennt und in einer Schleife abarbeiten laesst (mit dem Wissen ueber Art des Feldes usw.).
Zusammengehoerige Bilder (Figuren im Hochhaus, Hintergruende im Hochhaus) in grosse Bilder gepackt, dies erspart
den Texturwechsel bei OGL/DX und holt einige FPS heraus. Ausserdem wird Grafikspeicher gespart (momentan ca. 45MB bei allen derzeitig implementierten Raeumen).
Die Ladezeit des Spieles wurde um einiges reduziert, da nun weniger als 100 Grafiken geladen werden muessen (anstatt von >150).
Einige Grafiken wurden erneuert (Interface) auch wenn das bspweise bei Ritschl auf wenig Gegenliebe gestossen ist ;D.
Hier die aktuelle Changelog:
10.10.2007 Ronny
- CHG: DX9-Modus deaktiviert, da er in der BlitzMax Version 1.26 noch Inkompatibilitäten zu "Reflection" aufweist
09.11.2007 Ronny
- FIX: TTooltips: Interface-Tooltips (und alle anderen Nicht-Raum-Tooltips) wurden immer wieder erneuert, was
vorallem im DX9-Modus mit konstant sinkenden FPS-Raten quittiert wurde
- CHG: TTooltips benoetigen keinen "own"-Parameter mehr
- CHG: DX9-Modus wieder eingebaut. Er profitiert momentan noch nicht von Render-To-Texture (wie DX7 und OGL)
Hierfuer die DrawImageToArea-Funktion umgeschrieben. TObjectList scheint Probleme mit DX9 in Kombination
mit Reflection zu haben
08.11.2007 Ronny
- CHG: Sprites der Hochhausanzeige (Häuser, Türen, Pflanzen ...) zusammengefasst
- CHG: Bundeslaender (für Kollisionscheck im Sendemastplaner) werden nun aus OfficePack geladen.
-> zu ladende Dateien auf 103 reduziert)
07.11.2007 Ronny
- CHG: Zu ladende Bilder von 135 auf 119 reduziert (GrafikRam um 4MB verringert)
- CHG: Alle Figuren (außer Hausmeister) in ein Bild gesetzt und TFigures auf TGW_Sprites umgesetzt.
Hierdurch werden beim Zeichnen der Figuren Textur-Switches vermieden und Grafik-RAM gespart.
- CHG: ChangeTarget-Berechnungen vereinfacht
01.11.2007 Ronny
- CHG: Weitere Sprites zusammengefasst
26.10.2007 Ronny
- CHG: Einige Sprites/TImages im Programmplaner wurden zusammengefasst (da intern das Genre-Bild eh mit
256x512 Pixeln im Speicher lag) ... erspart einige KB an Ram und brachte 10FPS (~480 auf ~490) mehr
im Programmplaner.
- CHG: TPPButtons und TButtons umgeschrieben um auch mit TGW_Sprites klarzukommen
- NEW: DrawOnPixmap() hat nun zwei neue Parameter: alpha (1.0 = volle Deckkraft) und light (0.5=halbierte
Helligkeit) des zu aufzuzeichnenden TImages
- CHG: Die Blockhintergründe im Programmplaner fallen weg, Normale Programmblöcke ersetzen sie (abgedunkelt und
geringe Deckkraft). Gleiches gilt für abgearbeitete Blöcke mit Sendeausfall
- NEW: Neue Typen: TGW_Sprites und TGW_Spritepack - Bilder gleicher Art in einer Textur gespeichert (mit Angabe
der Koordinaten und Dimensionen) - Einsparungen beim Videospeicher möglich (auch wenn noch in geringem
Ausmaß). Erstes Spritepack: Audience (Opa, Kind und Teenie)
- CHG: Zusammenlegung einiger Sprites (interface links und rechts bspweise)
24.10.2007 Ronny
- CHG: Weitere Versuche mit Render-To-Texture-Varianten ... Bottom-Interface wird nun bei Aenderung neugezeichnet,
ansonsten wird nur ein Composite-Bild gezeichnet (von ~460fps auf 480fps im Hochhaus)
- CHG: Zusammenfassung einiger Bilder zu einem (loadingbar, newsbuttons) und dynamisch erstellte (Newsticker-
Hintergruende) um wieder etwas RAM zu sparen
22.10.2007 Ronny
- FIX: GetRandomMovie/Serie/Programme setzten auch bei NULL-Rückgabe den Besitzer des letzten Objektes
- CHG: bei TProgramme unnötige lokale Variablen entfernt, das Feld "maxepisodes" wurde gestrichen (bereits von
episodeCount zur Verfügung gestellt)
- CHG: bis heute - Objekte TStationMap/TStations, TAudienceQuotes, TProgramme auf XML-Speicherung umgesetzt
05.10.2007 Ronny
- CHG: Beginn der Umstellung auf XML-Speicherstände - TGame, TFigures, TPlayer
- CHG: Die Zip-Komponente musste geändert werden, da keine Dekomprimierung im Speicher möglich war (vorher
Auslagerung auf Festplatte, die wiederum zu Fehlern (nur 0Bytes-Zeichen in der Datei) führen konnte).
25.09.2007 Ronny
- CHG: Kodierung der database.xml in ANSI (von UTF-8) umgewandelt, da sonst Umlaute immer noch Probleme machen.
Dennoch sind die Inhalte UTF-8 kodiert (nur der Dateityp ist geaendert).
12.09.2007 Ronny
- CHG: Wolken mit besseren Pixel-Comic-Wolken ersetzt (Wolkenstreifen statt Einzelwolken -> 3 statt 30 Stueck)
- CHG: Die Darstellung des Gebaeudes vereinfacht (ueberarbeitet), davon betroffene Objekte (Figuren, Tueren,
Fahrstuhl) ebenfalls entschlackt. Y-Koordinatenberechnung nun besser nachvollziehbar
- CHG: Die Gebaeudegrafik ist nun wieder nur 1024Pixel gross ... obige Anpassungen deswegen notwendig
- FIX: Die Fahrstuhlbewegung hatte ein paar Grafik-Versetzer die etwas unschoen aussahen
- CHG: Der Fahrstuhl ueberprueft nun beim Hinzufuegen einer Fahrtroute, ob derselbe Nutzer auf derselben Etage
bereits den Knopf gedrueckt hat, nun wird der Fahrstuhl nicht nochmals dorthin geschickt
(neue funktion: elevator.ElevatorCallIsDuplicate:int(floornumber,who) )
10.09.2007 Ronny
- CHG: weiter den Code umformatiert und uebersichtlicher gemacht
- CHG: mit dem neuen Codeprofiler von BLIde unnoetige Variablen geloescht und unzureichend initialisierten
einen Wert gegeben
18.08.2007 Ronny
- CHG: Interface runderneuert - bessere Symbole und TV-Geraet neugezeichnet (Original vor langer Zeit verschollen)
- CHG: Texte im Interface per Parameter einfaerbbar
07.08.2007 Ronny
- CHG: erneute Experimente mit Singlesurface-Modellen der Spritezeichnung, leider keine Performanceschuebe fuer
alte Onboard-Grafikchips, dafuer Grafikfehler. Neuere Karten wuerden bis zu 10% mehr FPS schaffen
25.07.2007 Ronny
- NEW: Supermarkt: Bettygeschenke - Kreuzfahrt
12.07.2007 Ronny
- CHG: Der momentan eingebaute Profiler (Messungen von Aufrufen und Dauer einer Funktion) laesst sich mit "P"
ein- und ausschalten. Ist er aktiviert, steigt der "Mem"-Bedarf kontinuierlich, da alle Aufrufe einer
Funktion protokolliert werden.
- CHG: PhysikFPS auf 50 heruntergesetzt - erspart etwas CPU-Last und muesste bei aelteren Systemen fluessiger
laufen. Die Begrenzung auf 30FPS empfinde ich als etwas mehr "ruckelnd" in der Darstellung.
- CHG: Die Figurenbewegung wird nun 0 gesetzt, wenn die Position + deltaabhaengige Bewegung kleiner der
ZielX-PosX-Differenz ist. Dadurch kann die PhysikFPS nun auch bei <60 genaue Ergebnisse liefern.
Vorher konnten Figuren bei bspweise 30PhysikFPS auf der Stelle Links/Rechts/Links...-Animationen zeigen.
bye
Ron