UpdateWorld/LinePick Probleme
Übersicht BlitzMax, BlitzMax NG Beginners-Corner
N0XBetreff: UpdateWorld/LinePick Probleme |
Mo, Jan 13, 2014 19:08 Antworten mit Zitat |
|
---|---|---|
Hallo Leute,
Ich habe im Moment ein wirklich nerviges Problem mit LinePick.. Ich suche über LinePick den Y-Wert eines Meshterrains anhand der X-, und Z-Koordinaten. Hierbei kommt es häufig zu Totalausfällen von LinePick. Mal wirft die Funktion nur Nullen aus und mal startet mein Programm erst garnicht und gibt mir einen "EXCEPTION_ACCESS_VIOLATION". Das ist natürlich sehr ärgerlich und will sich mir einfach nicht erklären lassen, da die Funktion manchmal auch einwandfrei funktioniert. Könnt ihr mir helfen? Ist das Problem euch sogar bekannt? Hier noch meine benutzte Funktion BlitzMax: [AUSKLAPPEN] Function getmeshterrainy:Float(ent:TEntity,x:Float,z:Float) Mit besten Grüßen, N0X |
||
- Zuletzt bearbeitet von N0X am Mi, Jan 15, 2014 15:16, insgesamt einmal bearbeitet
DAK |
Mo, Jan 13, 2014 22:27 Antworten mit Zitat |
|
---|---|---|
Kannst du die Exception abfangen und anzeigen lassen? | ||
Gewinner der 6. und der 68. BlitzCodeCompo |
N0X |
Di, Jan 14, 2014 13:09 Antworten mit Zitat |
|
---|---|---|
Da es eine Windows-Exception ist, kann ich diese nur mit Assert abfangen.
Fehler tritt tatsächlich bei dem LinePick-Aufruf auf. BlitzMax: [AUSKLAPPEN] Function getmeshterrainy:Float(ent:TEntity,x:Float,z:Float) Gruß, N0X |
||
Projekte: |Tibario| http://www.blitzforum.de/worklogs/325/ | 5% |
DAK |
Di, Jan 14, 2014 15:48 Antworten mit Zitat |
|
---|---|---|
Da du in BlitzMax unterwegs bist: welches Modul verwendest du für dein 3D?
Welche Version des Moduls und von BlitzMax hast du? An deinem Aufruf finde ich jetzt nichts falsches, schaut mir nach einem Bug im Modul aus. |
||
Gewinner der 6. und der 68. BlitzCodeCompo |
N0X |
Di, Jan 14, 2014 15:55 Antworten mit Zitat |
|
---|---|---|
Code: [AUSKLAPPEN] MaxIDE 1.42
BCC Version: BlitzMax Release Version 1.48 FASM Version: 1.70.03 GCC Version: 4.81 G++ Version: 4.81 miniB3D v0.54 |
||
Projekte: |Tibario| http://www.blitzforum.de/worklogs/325/ | 5% |
ZEVS |
Di, Jan 14, 2014 19:44 Antworten mit Zitat |
|
---|---|---|
Ich habe schon einige nervige Erfahrungen mit dem Wechselspiel Garbage Collector und MiniB3D gemacht. Probiere am Anfang des Programms GCSuspend und dann regelmäßig (z.B. einmal in der Hauptschleife) GCCollect aufzurufen.
ZEVS |
||
N0X |
Mi, Jan 15, 2014 11:19 Antworten mit Zitat |
|
---|---|---|
Okay, hab ich mal eingebaut, ändert nur leider nichts.
Ich hab aber irgendwie so den Verdacht das es an der Importierung von Krischan's TextureSplatting-Terrain liegt. Ich habe mir damals einfach mal den gesamten Code auf BlitzMax umgeschrieben. Kann es daran liegen? Habe ich hier irgendwelche groben Fehler drin? BlitzMax: [AUSKLAPPEN] Type triangle Ich hoffe ich erschlage euch nicht mit dem Code. Beste Grüße, N0X //EDIT: Ich habe gerade herausgefunden, dass die Windows-Exception anscheinend von EntityBlend kommt, da ich auf ein leeres Mesh, welches gerade mit CreateMesh() erstellt wurde einen Blendmode festlegen wollte. Ich habe die BlendMode-Zuweisung jetzt ein paar Zeilen weiter unten angefügt und siehe da: Bisher keine einzige Exception mehr. Die Aussetzer von LinePick bleiben jedoch. Jetzt gibt PickedY() von LinePick sogar immer 0 aus. Ich hab da aber so einen Verdacht.. //EDIT2: An LinePick liegt es wohl nicht. Die Windows-Exception ist wieder da, diesmal bei UpdateWorld() (ich habe die getmeshterrainy rausgenommen). Was läuft da schief? :/ ~EDITIERT~ Leerzeichen hinzugefügt damit lange Zeilen nicht das Forenlayout sprengen. Xeres. |
||
Übersicht BlitzMax, BlitzMax NG Beginners-Corner
Powered by phpBB © 2001 - 2006, phpBB Group