[Résolu] (GUI) : OpenWindow3D() ne fonctionne pas
Publié : mar. 09/juil./2013 23:40
Je voulais tester la création d'une interface graphique. J'ai un premier souci, l'instruction OpenWindow3D() ne fonctionne pas (Donc pas d'affichage de la souris) et je ne vois pas ou est mon erreur. Merci d'avance pour vos explications.
Code : Tout sélectionner
Define.f CamX, CamY, MouseX, MouseY, RatioX, RatioY, SpeedRotate, CameraSpeed = 0.4
InitEngine3D()
InitKeyboard()
InitSprite()
InitMouse()
window = OpenWindow(#PB_Any,0,0,1024,768, "M", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
OpenWindowedScreen(WindowID(window),0,0,1024,768,0, 0, 0)
; Mesh
Cube_Mesh = CreateCube(#PB_Any, 1)
Ground_Mesh = CreatePlane(#PB_Any, 20, 20, 3, 6, 6, 6)
; Materiel
Texture1 = CreateTexture(#PB_Any,512,512)
StartDrawing(TextureOutput(Texture1))
Box(0,0,512,512,RGB(0, 0, 0))
Box(1,1,510,510,RGB(255, 216, 0))
StopDrawing()
Material1 = CreateMaterial(#PB_Any,TextureID(texture1))
; Création du sol
Ground_Entity = CreateEntity(#PB_Any, MeshID(Ground_Mesh), MaterialID(Material1), 0, 0, 0)
EntityPhysicBody(Ground_Entity, #PB_Entity_StaticBody, 2, 0, 1)
;
;Lumiere et ombre
AmbientColor(RGB(127, 127, 127))
CreateLight(#PB_Any,RGB(151, 251, 151), -1.8, 10, 5)
WorldShadows(#PB_Shadow_Additive)
;
; Une camera
Camera = CreateCamera(#PB_Any,0,0,100,100)
CamX=2.0
CamY=5.0
KeyZ=15
MoveCamera(Camera, CamX, CamY, KeyZ, #PB_Absolute)
Window3D = OpenWindow3D(#PB_Any, 100, 100, 300, 100, "")
Debug Window3D ; <== OpenWindow3D ne s'initialise pas
;Affiche le GUI semi transparent et la souris
ShowGUI(128, 1) ;
Repeat
Repeat
Event3D = WindowEvent3D()
Until Event3D = 0
If ExamineMouse()
MouseX = -MouseDeltaX() * CameraSpeed * 0.05
MouseY = -MouseDeltaY() * CameraSpeed * 0.05
InputEvent3D(MouseX(), MouseY(), MouseButton(#PB_MouseButton_Left))
EndIf
If ExamineKeyboard()
If KeyboardPushed(#PB_Key_Escape)
Break
EndIf
If KeyboardPushed(#PB_Key_Left)
CamX - CameraSpeed
ElseIf KeyboardPushed(#PB_Key_Right)
CamX + CameraSpeed
EndIf
If KeyboardPushed(#PB_Key_Up)
CamY -CameraSpeed
ElseIf KeyboardPushed(#PB_Key_Down)
CamY + CameraSpeed
EndIf
EndIf
MoveCamera(Camera, CamX, CamY, KeyZ, #PB_Absolute)
CameraLookAt(camera,0,0,0)
; Affiche le rendu de la scène
ClearScreen(RGB(0, 0, 0))
RenderWorld()
FlipBuffers()
ForEver