LoadMesh(string$) geht nicht???
Übersicht

occideBetreff: LoadMesh(string$) geht nicht??? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
warum funktioniert das obige nich? openfile(string$) funktioniert doch, warum geht das bei loadmesh nicht?? ich krieg zuviel. bitte helft mir | ||
![]() |
Ninja |
![]() Antworten mit Zitat ![]() |
---|---|---|
Schonmal geprüft ob die datei existiert, oder du auch die richtige extension angegeben hast? Wird das format von B3D unterstützt? Was sagt der debugger?
mfg Ninja |
||
occide |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Global test$="fw42lowpoly"
ob\entity=LoadMesh("./2/"+test+".x") geht nicht ob\entity=LoadMesh("./2/fw42lowpoly.x") geht debugger kann ich nich überprüfen, weils zu schnell abstürzt (nach dem absturz meldet er "entity does not exist") greetings |
||
![]() |
Ninja |
![]() Antworten mit Zitat ![]() |
---|---|---|
na da hast du deine antwort, sieh zu warum er meint das das entity nicht existiert. | ||
occide |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
?
also wenn ich den dateinamen von hand eintrage, meldet er das nicht. das bedeutet nach meiner logik, daß er irgendwie mit dem übergebenen string nicht klarkommt, weil dann der fehler kommt.. |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Bist du sicher, dass du in deinem Programm exakt obige Zuweisung machst?
Vielleicht ist dein String an dem Ort wo du ihn verwendest nämlich effektiv "" womit das Mesh nicht existiert. (passiert zb wenn man in einer Funktion einen String erzeugt und draussen auf eine gleichnamige Variable zugreift und dann davon ausgeht, dass diese automatisch auch gesetzt sei) |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
occide |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
also der string der den dateinamen enthält, wird im hauptprogramm als array, also global definiert. das loadmesh wird später in einer funktion aufgerufen.... hab ich da irgendwas übersehn? | ||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wird die Funktion erst aufgerufen, wenn der Dateiname im String Array drin steht? (also dim dateinamen$(xxx) vor dem funktionsaufruf) | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
occide |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
eindeutiges ja.
hab auch mal versuchsweise in der funktion direkt vor loadmesh() einen lokalen string definiert und loadmesh damit aufgerufen, was problemlos funktioniert hat. was hat denn die funktion fürn problem mit diesem angeblich globalen array??? |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Zeig mal den entsprechenden Sourcecode, also wo der Array deklariert wird, wo er mit Werten gefüllt wird und wo daraus ersichtlich ist, wie der Array benutzt wird. | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
occide |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
>hauptprogramm<
Global Dim obj_name$(5) . . . obj_name$(1)="1\fw45" obj_name$(2)="2\fw42" . . . Function xy() ob.objekt = New objekt ob\entity=LoadMesh(""obj_name$(1)".x") (bei bedarf poste ich gerne den kompletten quelltext, ist aber etwas länger. problem hängt auch nur da, weil wiegesagt alles läuft, wenn ich dateinamen direkt angebe statt dem array..) |
||
![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich denke bei LoadMesh brauchts noch 2 "+"s ....
![]() |
||
occide |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
jo, hab ich aufgrund der späten stunde vergessen, aber
ob\entity=LoadMesh(""+obj_name(1)+".x") funktioniert leider immernoch nich im gegensatz hierzu xy$="1\objekt" (direkt in der function vor loadmesh) ob\entity=LoadMesh(""+xy+".x") funktioniert reibungslos |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
1. Was aus dem Source nicht ersichtlich ist: Wo wird die Funktion aufgerufen? Da steht wo sie deklariert ist, jedoch ist das nicht von Bedeutung für die Auswertung des Array Inhaltes. Ich vermute genau dieser Part stimmt nicht.
Sprich du hast zwar dim obj_name$(5) in folgender Reihenfolge Code: [AUSKLAPPEN] ;das is nur pseudo code dim obj_name$(5) ; ... xy () ;... obj_name$(1)="1\fw45" obj_name$(2)="2\fw42" Andernfalls müsste es nämlich funktionieren, vorausgesetzt Punkt 3 ist erfüllt ![]() 2. Ach ja das "" + kannst du vorne wegnehmen, dass braucht es nicht. 3. Der Pfad stimmt ma nehm ich an? (also im Verzeichnis wo die Haupt bb Datei ist hats einen Ordner 1 mit einer Datei fw45.x und einen Ordner 2 mit einer Datei fw42.x) |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
occide |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
vielen dank. ich hätte zwar nicht gedacht, daß mir nach 12 jahren programmieren so n extrem d... fehler passieren kann, aber das wars jetzt tatsächlich, so wies aussieht. hab das array zwar vor dem funktionsaufruf definiert, alllerdings mit daten gefüllt erst hinterher. *handmehrmalsgegenkopfschlag*
![]() danke dir nochmal |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group