Schon wieder eine RAM Frage

Previous topic - Next topic

nabz32

Hallo,

ich habe Unterschiede beim Speicherverbrauch zwischen Debug Modus und normaler Kompilation.

Beim Testen mit dem Debugger fiel mir auf, dass mein Speicherverbrauch sich
erwartungsgemäß geändert hat ( weniger Polygone auf dem Schirm, weniger Speicherbelastung &u. ).


Wenn ich es im normalen Modus kompiliere und teste,
ist der Speicherverbrauch deutlich geringer als im Debug Modus, wenn ich die Karte neu geladen habe,
wächst aber nach einer Reihe von Polygon Erstellungen und Löschungen ( Karten scrolling ) auf den Wert,
welchen ich im Debug Modus beim Laden der Karte beobachtet habe und verhält sich danach
auch so wie im Debug Modus.

Weis jemand woher dieser anfängliche Speichervorteil vom normalen Modus im vergleich zum Debug Modus
kommen kann?

PS: Es wäre auch schön, wenn man überprüfen könnte, ob eine Objekt Nummer frei ist, oder
schon belegt wurde ( durch loadobj, objstart etc. )




Kitty Hello

X_getfaces könnte klappen.

Schranz0r

Wie Gernot schon sagt:
Eine Routine erstellen, die anhand der Faces checkt, ob das Objekt vorhanden ist.
I <3 DGArray's :D

PC:
AMD Ryzen 7 3800X 16@4.5GHz, 16GB Corsair Vengeance LPX DDR4-3200 RAM, ASUS Dual GeForce RTX™ 3060 OC Edition 12GB GDDR6, Windows 11 Pro 64Bit, MSi Tomahawk B350 Mainboard

nabz32

X_NUMFACES() hat gute Dienste geleistet,

jetzt weiß ich wenigstens, dass wirklich nur die gezeichneten Dreiecke gezeichnet werden
( habe die Inhalte meiner DrawMap mit allen Objekten, die er maximal in der gegebenen Reichweite
zeichnen kann, verglichen. Die Dateien stimmen überein und passen auch zu den Situationen in denen
diese Objekt Listen erstellt wurden. )

Trotzdem steigt der Speicherverbrauch, wenn gescrollt wird, an,
bis zu einem bestimmten Wert auf den sich der Verbrauch einpendelt.
( der passt auch immer zu den maximalen Face Situationen die auf der Karte zu erwarten sind. )

Wie gesagt der Speicherverbrauch steigt, selbst wenn die Anzahl der Faces auf der Karte gleich bleibt.
Kommt man zu einer Stelle wo weniger faces erstellt sind ( ein großes Loch zB. )
bleibt der Speicherverbrauch hoch, sinkt dann aber plötzlich ab.
Ich habe meine Testdateien einmal vor der plötzlichen Speicherfreigabe und danach erstellt,
die Anzahl der Terrain Objekte im Speicher ist bei beiden Dateien gleich.

Im Debug Modus scheint der Ram Verbrauch besser die jeweilige Objektsituation auf
der Karte wider zu spiegeln.
( Nutze nicht den Taskmanager, sondern PERFMON um mir den Verbrauch anzeigen zu lassen )