Seite 1 von 1

[4.6 b3] Probleme mit MoveEntity und Physik

Verfasst: 09.05.2011 23:57
von captain_hesse
Hallo zusammen
ich habe das bei PB mitgelieferte Example Entity.pb zu testzwecken ein wenig modifiziert und dabei festgestellt das bei eingeschalteter Physik der Befehl MoveEntity, wenn man einige sekunden lang wartet und dann erst eine Taste drückt um das Entity zu bewegen, nicht mehr reagiert. Könne es sein das es sich hierbei um einen Bug handelt ? Wäre nett wenn jemand von euch das mal abchecken könnte.

Code: Alles auswählen

;
; ------------------------------------------------------------
;
;   PureBasic - Entity
;
;    (c) 2002 - Fantaisie Software
;
; ------------------------------------------------------------
;

IncludeFile "Screen3DRequester.pb"

Define.f KeyX, KeyY, MouseX, MouseY

  
If InitEngine3D()

  Add3DArchive("Data"           , #PB_3DArchive_FileSystem)
  Add3DArchive("Data/skybox.zip", #PB_3DArchive_Zip)
  
  InitSprite()
  InitKeyboard()
  InitMouse()
  
 
  
  
  If Screen3DRequester()
        
    LoadMesh   (0, "robot.mesh")
    
    CreateMaterial(0, LoadTexture(0, "clouds.jpg"))
    CreateMaterial(1, LoadTexture(1, "r2skin.jpg"))
    
    CreateEntity(0, MeshID(0), MaterialID(0))
    CreateEntity(1, MeshID(0), MaterialID(1), -60, 0, 0)
    CreateEntity(2, MeshID(0), MaterialID(1),  60, 0, 0)
    
    AnimateEntity(0, "Walk")
    
    SkyBox("desert07.jpg")
   
    CreateCamera(0, 0, 0, 100, 100)
    CameraLocate(0,0,0,100)
    
;------- hinzugefügt -----------    
    EnableWorldPhysics(1)
    EntityPhysicBody(0, #PB_Entity_BoxBody)
;------- ^^^^^^^^^^^ -----------      
    
    Repeat
      Screen3DEvents()
      
      ClearScreen(RGB(0, 0, 0))
            
      If ExamineKeyboard()
      
        If KeyboardPushed(#PB_Key_Left)
          KeyX = -100  ;< geändert von 1 auf -100
        ElseIf KeyboardPushed(#PB_Key_Right)
          KeyX = 100   ;< geändert von 1 auf 100
        Else
          KeyX = 0
        EndIf
        
        If KeyboardPushed(#PB_Key_Up)
          KeyY = -100 ;< geändert von 1 auf -100
        ElseIf KeyboardPushed(#PB_Key_Down)
          KeyY = 100  ;< geändert von 1 auf 100
        Else
          KeyY = 0
        EndIf
        
        If KeyboardPushed(#PB_Key_PageUp)
          RollZ = 3
        Else
          RollZ = 0
        EndIf
        
        If KeyboardPushed(#PB_Key_Add)
          Frame.f+0.005
        EndIf
        
      EndIf
      
      If ExamineMouse()
        MouseX = -MouseDeltaX()/10 
        MouseY = -MouseDeltaY()/10
      EndIf
      
      RotateEntity(1, 0, 1, 0, #PB_Relative)
      RotateEntity(2, 0, 1, 0, #PB_Relative)
      
      RotateCamera(0, MouseY, MouseX, RollZ, #PB_Relative)
      
;------- geändert -----------          
     ;MoveCamera  (0, KeyX, 0, KeyY)  
      MoveEntity  (0, KeyX, 0, KeyY)  
;------- ^^^^^^^^^^^ -----------     
      
      RenderWorld()
      Screen3DStats()
      FlipBuffers()
    Until KeyboardPushed(#PB_Key_Escape) Or Quit = 1
  EndIf
    
Else
  MessageRequester("Error", "The 3D Engine can't be initialized",0)
EndIf
  
End

Re: [4.6 b3] Probleme mit MoveEntity und Physik

Verfasst: 11.05.2011 22:52
von captain_hesse
hmmm.... mal anders gefragt. Wäre eventuell jemand bereit diesen Beitrag ins Englische Bug Forum zu stellen ? Ich kann das leider nicht selber tun da meine Englischkenntnisse dafür nicht ausreichen :|

Re: [4.6 b3] Probleme mit MoveEntity und Physik

Verfasst: 09.09.2011 14:51
von Andre
Test mit PB4.60 RC1:
Kann das Problem bestätigen, sowohl im "Windowed"-Modus als auch "Fullscreen".
(Habe übrigens vorher die von der 3DEngine.dll geforderte "d3dx9_42.dll" in meinen "Windows\System32\"-Ordner kopiert.)

Habe daher den Bug-Report auch im engl. Forum gemeldet: http://www.purebasic.fr/english/viewtop ... =4&t=47486

Re: [4.6 b3] Probleme mit MoveEntity und Physik

Verfasst: 09.09.2011 16:50
von captain_hesse
Danke :allright: