Si j'ouvre avec "OpenWindowedScreen" dans une fenetre windows,
lorsque j'agrandi la fenetre principale le programme plante.
voici mon code
; fenetre3d=======================================
#CameraSpeed = 10
p1=30
DefType.f KeyX, KeyY, MouseX, MouseY
If InitEngine3D()
InitMouse()
InitKeyboard()
InitSprite()
win1 = OpenWindow(0,0,0,640,480,#PB_Window_SystemMenu|#PB_Window_ScreenCentered| #PB_Window_MaximizeGadget| #PB_Window_MinimizeGadget | #PB_Window_SizeGadget ,"3D Mesh by MGsoft")
hBrush1 = CreateSolidBrush_(RGB(0, 0, 255))
SetClassLong_(win1, #GCL_HBRBACKGROUND, hBrush1)
OpenWindowedScreen(WindowID(),150,100,320,200,1,10,10)
Add3DArchive("Data\", #PB_3DArchive_FileSystem)
Add3DArchive("Skybox.zip", #PB_3DArchive_Zip)
;chargement du ciel===================================
SkyBox("Sky10.jpg")
; ;chargement des meshes==========================
; LoadMesh (7 , "4x4.mesh")
; LoadTexture(7, "4x4.jpg")
; CreateMaterial(7, TextureID(7))
; CreateEntity(7, MeshID(7), MaterialID(7))
; EntityMaterial(7, MaterialID(7))
;AnimateEntity(p1, "idle")
;ResizeEntity(7, 1, 1, 1)
;EntityLocate(7, 0, 0, -500)
AmbientColor(RGB(255,255,255))
CreateCamera(0, 0, 0, 100, 100)
CameraLocate(0,0,0,10)
Repeat
ClearScreen(0, 0, 0)
If ExamineKeyboard()
If KeyboardPushed(#PB_Key_Left)
KeyX = -#CameraSpeed
ElseIf KeyboardPushed(#PB_Key_Right)
KeyX = #CameraSpeed
Else
KeyX = 0
EndIf
If KeyboardPushed(#PB_Key_Up)
KeyY = -#CameraSpeed
ElseIf KeyboardPushed(#PB_Key_Down)
KeyY = #CameraSpeed
Else
KeyY = 0
EndIf
EndIf
ExamineKeyboard()
Select WindowEvent()
Case #PB_Event_CloseWindow
Quit = #TRUE
EndSelect
RenderWorld()
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape) Or Quit
Else
MessageRequester("Error", "Cant init DirectX 3D Engine",0)
EndIf
End
;merci de votre aide===============
ecran3d
Effectivement ,ça plante aussi chez moi sous XP
et si je mets la ligne initEngine3d en commentaire , ça ne plante plus !!
et si je mets la ligne initEngine3d en commentaire , ça ne plante plus !!
Code : Tout sélectionner
If InitEngine3D()
InitSprite()
win1 = OpenWindow(0,0,0,640,480,#PB_Window_SystemMenu|#PB_Window_ScreenCentered| #PB_Window_MaximizeGadget| #PB_Window_MinimizeGadget | #PB_Window_SizeGadget ,"3D Mesh by MGsoft")
hBrush1 = CreateSolidBrush_(RGB(0, 0, 255))
SetClassLong_(win1, #GCL_HBRBACKGROUND, hBrush1)
OpenWindowedScreen(WindowID(),150,100,320,200,1,10,10)
Repeat
ClearScreen(0, 0, 0)
Select WindowEvent()
Case #PB_Event_CloseWindow
Quit = #True
EndSelect
RenderWorld()
FlipBuffers()
Until Quit
Else
MessageRequester("Error", "Cant init DirectX 3D Engine",0)
EndIf
End
c'était moi , j'ai encore oublié de me connecter , et j'ai beau valider la connexion automatique ... enfin bref .
Tu devrais essayer de poser la question sur le forum anglais , peut-être que quelqu'un saura te répondre ? mais bon , j'ai l'impression qu'avec la DLL engine3D on ne peut pas faire ce que l'on veut pour l'instant .
Tu devrais essayer de poser la question sur le forum anglais , peut-être que quelqu'un saura te répondre ? mais bon , j'ai l'impression qu'avec la DLL engine3D on ne peut pas faire ce que l'on veut pour l'instant .