I started over from scratch and got what i want exept the texture is not showing up.
Here is what i have so far:
;;Terrain tester ;; Ferret 2005 ;;
Graphics3D 800,600,0,2
SetBuffer BackBuffer()
Global camera = CreateCamera()
CameraRange camera,1.0,10000
MoveEntity camera,1000,1000,1000
Global Camera_VelX# = 0
Global Camera_Velz# = 0
Global camera_velocity# = 1.1
Global camera_speed# = 1
Global Camera_Pitch# = 0
Global Camera_Yaw# = 0
Global WireCheck = False
Global MiTile = F_CreateTerrain()
ScaleEntity mitile,10,10,10
tex = LoadTexture("Map/color.png")
ScaleTexture tex,512,512
EntityTexture Mitile,tex
PointEntity camera,MiTile
While Not KeyHit(1)
If KeyHit(57)
WireFrame True
EndIf
UpdateGhostCam()
UpdateWorld()
RenderWorld()
Text 10,10,"Space=Wireframe"
Text 10,50,"X: "+EntityX(camera)+" Y: "+EntityY(camera)+" Z:"+EntityZ(camera)
Flip
Wend
End
Function F_CreateQuad(FQ_Size#)
;FQ_Size = FQ_Size +0.1
F_Mesh = CreateMesh()
F_Surf = CreateSurface(F_Mesh)
F_V1 = AddVertex ( F_Surf,0,0,0 )
F_V2 = AddVertex ( F_Surf,FQ_Size,0,0 )
F_V3 = AddVertex ( F_Surf,0,0,FQ_Size )
F_V4 = AddVertex ( F_Surf,FQ_Size,0,FQ_Size )
F_Tri1 = AddTriangle (F_Surf,F_V1,F_V2,F_V3)
F_Tri2 = AddTriangle (F_Surf,F_V2,F_V4,F_V3)
FlipMesh(F_Mesh)
Return(F_Mesh)
End Function
Function F_CreateTerrain(FT_Detail%=64,FT_Size%=1024)
F_Tile = CreateMesh()
F_XCount = 1
F_ZCount = 0
For F_Count = 1 To FT_Detail
F_Quad = F_CreateQuad(Sqr#(FT_Size)*4)
PositionEntity F_Quad,(Sqr#(FT_Size)*4) * (F_XCount-1) ,0,(Sqr#(FT_Size)*4) * (F_ZCount)
F_XCount = F_XCount + 1
If F_XCount > Sqr#(FT_Detail)
F_XCount = 1
F_ZCount = F_ZCount + 1
EndIf
EntityParent F_Quad,F_Tile
AddMesh F_Quad,F_Tile
Next
Return(F_Tile)
End Function
Function UpdateGhostCam()
Mouse_X_Speed#=MouseXSpeed()*0.5
Mouse_Y_Speed#=MouseYSpeed()*0.5
MoveMouse GraphicsWidth()/2,GraphicsHeight()/2
Camera_Pitch=Camera_Pitch+Mouse_Y_Speed#
Camera_Yaw=Camera_Yaw+Mouse_X_Speed#
RotateEntity camera,Camera_Pitch,-Camera_Yaw,0
If KeyDown(203) Then
Camera_VelX=Camera_VelX-camera_speed#
ElseIf KeyDown(205)
Camera_VelX=Camera_VelX+camera_speed#
EndIf
If KeyDown(208) Then
Camera_VelZ=Camera_VelZ-camera_speed#
ElseIf KeyDown(200)
Camera_VelZ=Camera_VelZ+camera_speed#
EndIf
Camera_VelX=Camera_VelX/camera_velocity#
Camera_VelZ=Camera_VelZ/camera_velocity#
MoveEntity camera,Camera_VelX,0,Camera_VelZ
If KeyDown(200) Then
MoveEntity camera,0,0,camera_speed#
EndIf
If KeyDown(208) Then
MoveEntity camera,0,0,-camera_speed#
EndIf
If KeyDown(205) Then
MoveEntity camera,camera_speed#,0,0
EndIf
If KeyDown(203) Then
MoveEntity camera,-camera_speed#,0,0
EndIf
End Function