Mesh Fläche erstellen

Übersicht BlitzBasic Beginners-Corner

Gehe zu Seite Zurück  1, 2

Neue Antwort erstellen

dav3d

BeitragSo, Feb 26, 2006 1:51
Antworten mit Zitat
Benutzer-Profile anzeigen
sry hab grad ne Pause gemacht Embarassed , war mir gewohnt dass man ein Tag warten muss bis ne Antwort kommt Sad (von Früher, deshalb hab ich gedacht ihr nehmt das nicht so ernst hier) .


Nun erstens echt vielen Dank für die Codes!! Razz Funktionieren beide , nur wie ich durch Hectic's Hinweis erfuhr muss ich bei deinem Dreamora den Debugger ausschalten, sonst geht garnichts. Das ist mir eben auch immer passiert.

wege dem:"ich sollte eure Codes auch mal versuchen zu verstehen"und "du hast mein Zitat definitiv nicht gelesen". Erstens hab ich jeden einzelnen Tipp, Code , Hinweis,... etc ausprobiert und mich damit beschäftigt, und wenn du den Zitat meinst wo du die coords zuweisung erklärst, klar habe ich den gelesen, ich sagte ya du basierst auf der selben Idee wie ich. Bitte behaupte nicht was du nicht weisst, wenn du mir hilfst wie du es auch tust bin ich sehr dankbar, wenn aber nicht hab ich da auch kein Problem, aber bitte kritisier mich nicht so. Sad

noch mal Danke für alles ich denk das Problem hat sich gelöst könnt aber natürlich ruhig weiterposten.

hectic

Sieger des IS Talentwettbewerb 2006

BeitragSo, Feb 26, 2006 2:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Das Problem warum 'Array index out of bounds' kommt ist folgender...

size=20
Dim(size*size) ergibt 400
Alle Maximalwerte von (z*(size+1) + x) = (20*(20+1) + 20) ergeben 440

Soviel kann das vordefinierte Array 'nicht' speichern und meldet die Fehlermeldung. Auch wenn dieser Fehler bei ausgeschaltetem Debugger nicht auftritt, sollte man ein Programm in solcher Form nicht verkaufen/verbreiten... Es kann immer sein das dieses bei anderen System zu einem Absturz führt...

Entweder du korregierst den Fehler mit eigenen Überlegungen oder wartest bis eventuell Dremora es tut (weil 'niemand' gern eigenen 'fehlerhaften' Code in der Öffentlichkeit verbreitet) oder nimmst die zweidimensionale Array-Geschichte... Aber du wolltest aus einem mir noch unbekannten Grund nicht auf sowas 'umsteigen'...

dav3d

BeitragSo, Feb 26, 2006 11:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke für den Hinweis, ich werde sehen was ich tu, 2D Arrays sind auch gut nur fand ich es einfacher mit einem 1D Array da alle vertices in einem Stapel speichern wollte, dann sollte mein Code so funktionieren:

for tx=0 to (size^2)-size ; -size da die letzte Spalte schon bei der zweitletzten verwendet wirt
v0=ve(tx+1) der vertex eins hinten
v1=ve(tx+1+size) der vertex eins hinten und rechts(eine Spalte weiter)
v3=ve(tx) der vertex auf dem aktuellen platz
v2=ve(tx+size) der vertex auf dem aktuellen platz eine Spalte weiter

dav3d

BeitragSo, Feb 26, 2006 11:34
Antworten mit Zitat
Benutzer-Profile anzeigen
Nun ist das Problem definitiv gelöst! Razz
Ich hab die Codeversion von hectic genommen -kapier jetzt das mit den 2D Array- und hab noch folgende verenderungen vorgenommen:



Code: [AUSKLAPPEN]
size=20
Dim ve(size,size)

For z=0 To size-1  ; bei beiden "-1" da man ya bei 0 anfängt
 For x=0 To size-1 ;
  ve(x,z)=AddVertex (surface,x,0,z)
 Next
Next

For z=0 To size-2 ; hier -2 da die letzte Spalte mit der vorherigen verwendet wirt und nicht weiter benötigt wirt.
 For x=0 To size-1
  v0=ve(x,z)
  v1=ve(x,z+1)
  v2=ve(x+1,z+1)
  v3=ve(x+1,z)
  AddTriangle surface,v0,v1,v2
  AddTriangle surface,v0,v2,v3
 Next
Next


Yuhuuu!! Danke nochmal für die Unterstüzung Very Happy

Gehe zu Seite Zurück  1, 2

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group