[4.41] 3D SetEntityMass()

Archive.
Azur
Messages : 40
Inscription : ven. 22/mai/2009 23:58

[4.41] 3D SetEntityMass()

Message par Azur »

Dans mon code précédent j'utilisais WorldGravity() pour empêcher mon objet de tomber, ceci était du au fait qu'il semble qu'une masse nulle appliquée à une entity provoque un crash.
Outre ce fait je dois dire que je reste assez circonspect sur le comportement d'entités aillant des masses très faibles au point que je me demande si ce paramètre est bien pris en compte.

Code : Tout sélectionner

EnableExplicit

Enumeration
   #fenetre
   #mesh
   #entity
   #camera
   #light
EndEnumeration

InitSprite()
InitEngine3D()
InitKeyboard()

OpenWindow(#fenetre,0,0,640,480,"",#PB_Window_ScreenCentered)
OpenWindowedScreen(WindowID(#fenetre),0,0,640,480,0,0,0)

EnableWorldPhysics(1)

;*************************************************
;WorldGravity(0)
;*************************************************


WorldDebug(#PB_World_DebugBody)

CreateCamera(#camera,0,0,100,100)
CameraLocate(#camera,0,2,5)
CameraLookAt(#camera,0,0,0)

CreateMesh(#mesh,0.5)
SetMeshData(#mesh,#PB_Mesh_Vertex|#PB_Mesh_Color,?points,8)
SetMeshData(#mesh,#PB_Mesh_Face,?faces,12)
CreateEntity(#entity,MeshID(#mesh),#PB_Material_None)
EntityPhysicBody(#entity,#PB_Entity_BoxBody)

;*************************************************
SetEntityMass(#entity,0)
;*************************************************


Repeat
   Delay(1)
   ExamineKeyboard()
   If KeyboardPushed(#PB_Key_Escape)
      End
   EndIf
   FlipBuffers()
   RotateEntity(#entity,1,1,0.3,#PB_Relative)
   RenderWorld()
ForEver

DataSection
   points:
   Data.f -0.5,0,0.5
   Data.l 0
   Data.f 0.5,0,0.5
   Data.l 0
   Data.f 0.5,1,0.5
   Data.l 0
   Data.f -0.5,1,0.5
   Data.l 0
   Data.f -0.5,0,-0.5
   Data.l 0
   Data.f -0.5,1,-0.5
   Data.l 0
   Data.f 0.5,1,-0.5
   Data.l 0
   Data.f 0.5,0,-0.5
   Data.l 0
      
   faces:
   Data.w 3,0,1,1,2,3
   Data.w 0,3,4,3,5,4
   Data.w 5,6,7,4,5,7
   Data.w 6,2,7,1,7,2
   Data.w 3,2,5,5,2,6
   Data.w 4,1,0,7,1,4
EndDataSection