Ответ: Обсужение учебника по PhysX Wrapper для Blitz3D
Подскажите кто нить!Пытаюсь сделать гранату,применил PhysX но ни поиму как привязать-например куб Cube = CreateCube() и его физическое тело Body = pxBodyCreateCube(1,1,1,1) к камере так чтоб объект двигался туда куда смотрит камера.
У меня сейчас так.
Type Px_Cube
Field cube_body%
Field cube_mesh%
End Type
Function Create_Px_Cube()
ocu.Px_Cube = New Px_Cube
ocu\cube_body=pxBodyCreateCube(1,1,1, 3)
ocu\cube_mesh=CreateCube()
ScaleEntity ocu\cube_mesh,1,1,1
EntityColor ocu\cube_mesh,Rand(0,255),Rand(0,255),Rand(0,255)
pxBodySetPosition(ocu\cube_body,EntityX(cam)+Rand(-5,5),EntityY(cam)+Rand(-5,5),EntityZ(cam))
pxBodySetRotation(ocu\cube_body,Rand(-90,90),Rand(-90,90),Rand(-90,90))
pxBodyAddForce (ocu\cube_body,180, 0, 0, 1.5)
End Function
Function Update_Px_Cube()
For ocu.Px_Cube = Each Px_Cube
pxBodySetEntity(ocu\cube_mesh, ocu\cube_body)
Next
End Function
В данном случае она двигается только X-180,Y-0,Z-0 тоесть
pxBodyAddForce (ocu\cube_body,180, 0, 0, 1.5)
но чето не то, при повороте камеры троектория не меняется.
Подскажите как бы это реализовать правильно.
|