SetWindowTitle( "Test1") SetWindowSize( 1024,768,0 ) SetVirtualResolution( 1024, 760 ) SetOrientationAllowed( 1,1,1,1 ) SetCameraPosition(1, 5000, 300,5000) SetSkyBoxVisible(1) SetSkyBoxSunVisible(0) SetSkyBoxHorizonColor(0,0,0) SetSkyBoxSkyColor(0,100,0) for i = 1 to 5000 rnd = random(1,5) if rnd = 1 then obj = CreateObjectBox(10,10,10) if rnd = 2 then obj = CreateObjectCone(10,10,10) if rnd = 3 then obj = CreateObjectSphere(10,10,10) if rnd = 4 then obj = CreateObjectPlane(10,10) if rnd = 5 then obj = CreateObjectCylinder(10,10,10) rndx = random(1, 10000) rndy = random(1, 10000) rndz = random(1, 10000) rndangx = random(1, 360) rndangy = random(1, 360) rndangz = random(1, 360) SetObjectCollisionMode(i,1) SetObjectPosition(obj, rndx, 10, rndz) SetObjectRotation(obj, rndangx, rndangy, rndangx) next // camera starts in free mode cameraMode = 0 do // move the camera speed# = 5.0 if ( GetRawKeyState( 16 ) ) then speed# = 0.1 if ( cameraMode = 1 ) then speed# = 0.25 if ( GetRawKeyState( 87 ) ) then MoveCameraLocalZ( 1, speed# ) if ( GetRawKeyState( 83 ) ) then MoveCameraLocalZ( 1, -speed# ) if ( GetRawKeyState( 65 ) ) then MoveCameraLocalX( 1, -speed# ) if ( GetRawKeyState( 68 ) ) then MoveCameraLocalX( 1, speed# ) if ( GetRawKeyState( 81 ) ) then MoveCameraLocalY( 1, -speed# ) if ( GetRawKeyState( 69 ) ) then MoveCameraLocalY( 1, speed# ) if ( getvirtualbuttonstate(1) = 1 ) then MoveCameraLocalZ( 1, -speed# ) if ( getvirtualbuttonstate(2) = 1 ) then MoveCameraLocalZ( 1, speed# ) // rotate the camera if ( GetPointerPressed() ) startx# = GetPointerX() starty# = GetPointerY() angx# = GetCameraAngleX(1) angy# = GetCameraAngleY(1) pressed = 1 endif if ( GetPointerState() = 1 ) fDiffX# = (GetPointerX() - startx#)/4.0 fDiffY# = (GetPointerY() - starty#)/4.0 newX# = angx# + fDiffY# if ( newX# > 89 ) then newX# = 89 if ( newX# < -89 ) then newX# = -89 SetCameraRotation( 1, newX#, angy# + fDiffX#, 0 ) endif Sync() loop