Instanzierte Objekte schneller ohne Types?

Übersicht BlitzBasic Blitz3D

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen

 

MrJack

Betreff: Instanzierte Objekte schneller ohne Types?

BeitragDi, Aug 29, 2006 22:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich wollte fragen ob ein Mesh, das man per LoadEntity läd,
schneller ist, wenn man es ohne referenzvariable läd.

Das heißt es gibt für mein Spiel 2 Möglichkeiten
Ich erstelle für bestimmte Objekte types um spezielle
Interaktionen möglich zu machen, bei vielen objekten wird es
daher langsammer.
Wenn ich jetzt aber objekte wie z.b. Bäume immer in die gleiche
Variable lade:
Code: [AUSKLAPPEN]
For i=0 to 100
 test = LoadEntity("baum.x")
Next


Beim Zweiten werden ebenfalls alle Objekte geladen. Wie ist es aber
mit der Geschwindigkeit?
Was ist die beste Möglichkeit viele Objekte zu Laden.

BladeRunner

Moderator

BeitragDi, Aug 29, 2006 22:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Du müllst dir so den speicher mit nicht mehr referenzierbaren Objekten voll. Halte ich für mehr als fragwürdig.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

MrJack

BeitragDi, Aug 29, 2006 22:18
Antworten mit Zitat
Benutzer-Profile anzeigen
wieso nicht referenzierbar?
 

Dreamora

BeitragDi, Aug 29, 2006 22:19
Antworten mit Zitat
Benutzer-Profile anzeigen
weil es auf die ersten 99 kein handle mehr gibt, sie aber immer noch da sind, weil du sie nicht freigegeben hast.

-> du müllst den speicher zu
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.
 

MrJack

BeitragDi, Aug 29, 2006 22:22
Antworten mit Zitat
Benutzer-Profile anzeigen
ich kann drauf zugreifen, zum beispiel wenn sie kollidieren...

BladeRunner

Moderator

BeitragDi, Aug 29, 2006 22:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Blitz sorgt intern für die Kollision, aber Du hast keinerlei Einflussmöglichkeiten mehr auf deine Objekte.Kannst sie nachträglich nicht mehr skalieren, bewegen oder auch einfach freigeben.
Sehr unsauberer Code, das, und deswegen:

Liebe Kinder: Bitte nicht nachmachen. Böser Code.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

MrJack

BeitragDi, Aug 29, 2006 22:32
Antworten mit Zitat
Benutzer-Profile anzeigen
joa, ich weiß schon was du meinst.
Aber aber mir geht es ja um eine möglichkeit vieles darzustellen,
z.b. auch sprites oder bäume.
Sachen die man nachträglich nicht verändern muss.

Wenn ich sie per Array oder Type erstelle muss
Blitz ja diese auch noch verwalten bzw. Speichern.

Wie gehts also schneller?
 

Dreamora

BeitragDi, Aug 29, 2006 22:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Single Surface

Das ganze gebastel so ändert nämlich rein garnichts am Rendering Speed

Was du brauchst um mit vielen Bäumen und so rumhantieren zu können sind 2 Dinge:

- Single Surface oder möglichst wenige surfaces
- Ein intelligentes system das ganze blöcke hided (via hideentity) oder zumindest in eine niedriger detailierten zustand versetzt durch hideentity und showentity der "niedrigqualitätsversion"
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.
 

MrJack

BeitragDi, Aug 29, 2006 23:22
Antworten mit Zitat
Benutzer-Profile anzeigen
das mit dem lod models ist cool.
aber mit single surface kann ich in dem zusammenhang nicht
viel anfangen. Wenn ich alles zu einer Surface zusammenfüge
kann ich die objekte ja nicht dynamisch ansteuern oder ne
blitz-kollision machen, oder?
 

Dreamora

BeitragDi, Aug 29, 2006 23:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Ne polygonkollision kannst du sowieso nicht machen, dafür hast du, wenn du sowas brauchst, ohnehin schon viel zu viele Polygone.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.
 

MrJack

BeitragDi, Aug 29, 2006 23:34
Antworten mit Zitat
Benutzer-Profile anzeigen
jo das ist klar, aber ich kann ja die einzelnen bäume auch nicht mehr ansprechen.

haste vielleicht nen link zu so einem system parat?

man könnte die bäume auch in weiter entfernung in sprites umwandeln,
dan wären die polygone minimiert...
 

Dreamora

BeitragDi, Aug 29, 2006 23:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Jo in ganz weiter entfernung macht man das am besten.

Das einzige was es gibt ist BlitzTree3D und das kostete zuletzt rund 50$.

Ansonsten kannste die Suchfunktion verwenden mit Single Surface.
Standardanwendungsbereich für die meisten hier sind dabei Partikelsysteme Smile (grass ist ja eigentlich auch nix anderes als ein Partikelsystem)
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.
 

MrJack

BeitragDi, Aug 29, 2006 23:40
Antworten mit Zitat
Benutzer-Profile anzeigen
ok dann werde ich mich daran machen thx...
 

MrJack

BeitragDi, Aug 29, 2006 23:54
Antworten mit Zitat
Benutzer-Profile anzeigen
hmm hab mir das blitztree mal angesehen und krieg direkt nen memory error.
gibts da einen trick?
 

Dreamora

BeitragMi, Aug 30, 2006 7:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Jopp
Neustart - Bios - DEP ausschalten.

Das Problem ist, das diese Demo nicht Teil der Vollversion ist, weswegen ich die nicht einfach mal rasch neu kompilieren kann ...
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.
 

MrJack

BeitragMi, Aug 30, 2006 8:43
Antworten mit Zitat
Benutzer-Profile anzeigen
wie du? Hast du das gemacht?
 

Dreamora

BeitragMi, Aug 30, 2006 8:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Nein, aber ich besitze BlitzGrass3D und BlitzTree3D schon seit langem.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.
 

MrJack

BeitragMi, Aug 30, 2006 8:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Hm, was heißt DEP? Bei mir find ich nix im BIOS.
Warum muss ich das hierfür ausschalten?
 

Dreamora

BeitragMi, Aug 30, 2006 9:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Nunja, die Demos sind, wenn ich mich recht erinner, mit Blitz3D 1.8 oder so gemacht. Danach kam aber WinXP SP2 welches die Sicherheitsfeatures von Prozessoren unterstützt (weiss nicht wie es in den jeweiligen Bios heisst, AMD müsste es glaub NX Extension sein oder so).
Diese hat aber zur Folge das Exe Dateien mit einer B3D Version vor dem DEP Patch nimmer laufen und dann eben beginnen solche Fehler zu spucken.

Ich hab bei meinem Chip das ganze ausgeschalten. Nicht weil ich gerne sicherheitsprobleme habe, sondern weil unzählige Programme nicht / noch nicht entsprechend angepasst wurden, das sie unter WinXP SP2 + entsprechender chip überhaupt noch laufen.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.
 

MrJack

BeitragMi, Aug 30, 2006 9:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe nichts der gleichen gefunden... Habe ein ASUS board und
Amd Athlon 64...
Ich habe das SP2 nicht installiert...
Was mache ich nun?

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group