Ich habe mich heute mit der StaticGeometry befasst und irgendwie scheint das nicht richtig zu funktionieren.
Folgender Code:
Code: Alles auswählen
;Fehler mit der StaticGeometry
;Purebasic 5.00 B2 64Bit (Kubuntu 12.04)
;Intel HD Graphics
;Fehlermeldung: [ERROR] Programm abgebrochen. (durch eine externe Library)
InitEngine3D()
InitSprite()
OpenWindow(0,0,0,800,600,"",#PB_Window_ScreenCentered)
OpenWindowedScreen(WindowID(0),0,0,800,600,0,0,0)
CreateCamera(0,0,0,100,100)
Global Geo.i,Geo2.i
;Bsp 1
If #False ;Funktioniert immer
CreateStaticGeometry(#PB_Any,8,8,8,#False)
CreateStaticGeometry(#PB_Any,8,8,8,#False)
CreateStaticGeometry(#PB_Any,8,8,8,#False)
EndIf
;Bsp 2
If #False ;Funktioniert nur wenn Bsp 1 nicht ausgeführt wird
Debug Geo
CreateStaticGeometry(#PB_Any,8,8,8,#False) ;Absturz
EndIf
;Bsp 3
If #False ;Funktioniert nie --> wenn sich ein Debug zwischen 2 CreateStaticGeometries befindet funktioniert es nicht.
Debug Geo
CreateStaticGeometry(#PB_Any,8,8,8,#False)
Debug Geo
CreateStaticGeometry(#PB_Any,8,8,8,#False) ;Absturz
EndIf
;Bsp 4
If #False ;Funktioniert ebenfalls nicht.
Geo = CreateStaticGeometry(#PB_Any,8,8,8,#False)
BuildStaticGeometry(Geo)
Geo = CreateStaticGeometry(#PB_Any,8,8,8,#False) ;Absturz
EndIf
;Bsp 5
If #False ;Dies Funktioniert aber --> Man kann nach einem BuildStaticGeoemtry keine weiteren mittels CreateStaticGeometry erstellen.
Geo = CreateStaticGeometry(#PB_Any,8,8,8,#False)
Geo2 = CreateStaticGeometry(#PB_Any,8,8,8,#False)
BuildStaticGeometry(Geo)
BuildStaticGeometry(Geo2)
EndIf
Vielleicht habe ich beim letzen Beispiel irgendwas übersehen, aber zumindest der Fehler mit dem "Debug" muss doch ein Bug sein?
Haben auch andere das Problem? Oder ist das mal wieder ein Linux only Bug?