thanks,
But with physics i have done the folliwing code but without success.
But with physics i have done the folliwing code but without success.
Graphics3D 640,400,16,2 SetBuffer BackBuffer() Global camera=CreateCamera() Global plane=CreatePlane() EntityColor plane,50,50,200 Global light=CreateLight() RotateEntity light,90,0,0 Global pivot=CreatePivot() PositionEntity pivot ,0,0,0 ;=======PhysX===================== pxCreateWorld(0,"key") pxSetGravity(0,-9.81,0) ;================================= ; Create cube n=0 For l = 1 To 3 For a# = 1 To 360 Step 20 CreateNeoDym( Cos(a#)*10, n, Sin(a#)*10, 0 ) n = n +1 Next Next PositionEntity camera, 0,10,-120 While Not KeyDown( 1 ) UpdateNeoDym() RenderWorld pxRenderPhysic(30,0) Flip Wend pxDestroyWorld() End Type TNeoDym_Magnet Field Px Field mesh% End Type Function CreateNeoDym( pX, pY, pZ, pPivot=0 ) Local l.TNeoDym_Magnet = New TNeoDym_Magnet If pPivot > 0 Then l\mesh = CreateSphere(8,pPivot) Else l\mesh = CreateSphere(8) EndIf l\pX=pxCreateMagnet(1, 50, 100) pxMagnetSetMaxRadius( l\pX, 200) pxMagnetSetMinRadius( l\pX, 205) pxMagnetSetPosition(l\pX,pX, pY, pZ) pxMagnetActivate(l\pX, 1, 1) PositionEntity l\mesh, pX, pY, pZ Return Handle( l ) End Function Function UpdateNeoDym( ) For l.TNeoDym_Magnet = Each TNeoDym_Magnet PositionEntity l\mesh, pxMagnetGetPositionX( l\pX),pxMagnetGetPositionY( l\pX),pxMagnetGetPositionZ( l\pX) Next End Function