Ich kann mit der rechten Muastaste den Würfel ins Gelände setzen. und mit den Tasten "QWES" steuern.
Aber der Würfel geht nicht geschmeidig über das Gelände sondern geht sehr ruckelig den Berg rauf oder herab. Es fehlt die Glätte. Die Sprünge sind zu gross.
Gruss
Code: Alles auswählen
IncludePath "includes"  
IncludeFile "n3xtD_PB.pbi"
Global	anglex.f, angley.f, flagXDown.w
Global	mox.f, omx.f, moy.l, omy.l
Global mov_x.f,mov_y.f,delta_xy.f
delta_xy=0.2
Global *app.l, Quit.l
*app = iCreateGraphics3D(800,600)
 
SetCurrentDirectory("media/") 
Define *obj.IObject = iLoad3DObject("woodcrate.3ds")
Define *cube.IMesh = iCreateMesh(*obj)
iScaleNode(*cube, 0.125,0.125,0.125)
Global *terrain.ITerrain = iCreateTerrain("height113.bmp", 1.0, 8, 8, 1024)
iLoadTextureTerrain(*terrain, "sol113.jpg")
iMaterialTypeTerrain(*terrain, #EMT_LIGHTMAP )
Global *cam.ICamera = iCreateCamera( )
iPositionNode(*cam, 100,125,-60)
iTurnNode(*cam, 15,0,0)
Repeat
    
  If iGetKeyDown(#KEY_ARROW_UP)
    iMoveNode(*cam, 0,0,4)
  EndIf
  If iGetKeyDown(#KEY_ARROW_DOWN)
    iMoveNode(*cam, 0,0,-4)
  EndIf
  
  If iGetMouseEvent(#MOUSE_BUTTON_LEFT)
  		If flagXDown=0
  			omx = iGetMouseX()
  			omy = iGetMouseY()
  			flagXDown=11
  		Else
  			moy = iGetMouseY()-omy
  			angley=(moy/10.0)
  			omy= iGetMouseY()
  			mox = iGetMouseX()-omx
  			anglex=(mox/10.0)
  			omx= iGetMouseX()
  			iTurnNode(*cam, angley, anglex,0)
  		EndIf
  Else
  	 		flagXDown=0
  EndIf
  If iGetMouseEvent(#MOUSE_BUTTON_RIGHT)
    iPickTerrain(*terrain, iGetMouseX(), iGetMouseY(),  2000)
    pos.VECTOR3
    iTerrainPickedPosition(*terrain, @pos)
    iPositionNode(*cube, pos\x, pos\y, pos\z)   
    mov_x=iGetMouseX()
    mov_y=iGetMouseY()
  EndIf
  If GetAsyncKeyState_(#VK_E)
   mov_x=mov_x+delta_xy
   iPickTerrain(*terrain, mov_x,mov_y,  2000)  
   iTerrainPickedPosition(*terrain, @pos)
   iPositionNode(*cube, pos\x, pos\y, pos\z)    
  EndIf
  
  If GetAsyncKeyState_(#VK_Q)
   mov_x=mov_x-delta_xy
   iPickTerrain(*terrain, mov_x,mov_y,  2000)
   iTerrainPickedPosition(*terrain, @pos)
   iPositionNode(*cube, pos\x, pos\y, pos\z)    
  EndIf
  
  If GetAsyncKeyState_(#VK_S)
   mov_y=mov_y+delta_xy
   iPickTerrain(*terrain, mov_x,mov_y,  2000)
   iTerrainPickedPosition(*terrain, @pos)
   iPositionNode(*cube, pos\x, pos\y, pos\z)    
  EndIf
  
  If GetAsyncKeyState_(#VK_W)
   mov_y=mov_y-delta_xy
   iPickTerrain(*terrain, mov_x,mov_y,  2000)
   iTerrainPickedPosition(*terrain, @pos)
   iPositionNode(*cube, pos\x, pos\y, pos\z)    
  EndIf
  
  If iGetKeyDown(#KEY_ESCAPE)
    Quit=1
  EndIf
  iBeginScene(200,200,200)
    iDrawScene()
  iEndScene()
Until Quit=1
iFreeEngine()
; IDE Options = PureBasic 4.40 Beta 3 (Windows - x86)
; ExecutableFormat = Console
; CursorPosition = 13
; EnableXP
; DisableDebugger

 - LibSGD - MP3D Engine -
  - LibSGD - MP3D Engine -  

 
  wenn, du mit N3xtd nicht programmierst.
 wenn, du mit N3xtd nicht programmierst.

 , da kommt nur murks bei raus.
 , da kommt nur murks bei raus. 