habe das Programm neu aufgebaut:
Code: Alles auswählen
CallFunction(OpenLibrary(#PB_Any,"dwmapi.dll"),"DwmEnableComposition",0) ;Enabling and Disabling Aero interface
If InitEngine3D()
Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/Textures", #PB_3DArchive_FileSystem)
Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/fonts", #PB_3DArchive_FileSystem)
Parse3DScripts()
InitSprite()
InitKeyboard()
InitMouse()
ExamineDesktops()
sree= OpenScreen(DesktopWidth(0),DesktopHeight(0) , 32, "Test3DText" ,#PB_Screen_NoSynchronization)
CreateCamera(0, 0, 0, 100, 100)
MoveCamera(0, 0, 0, 0, #PB_Absolute)
CameraBackColor(0, RGB(55, 0, 0))
KeyX.d=0.0
KeyY.d=0.0
MouseX.d=0.0
MouseY.d=0.0
light = CreateLight(#PB_Any ,RGB(190, 190, 190), 4000, 1200, 1000,#PB_Light_Directional)
SetLightColor(light, #PB_Light_SpecularColor, RGB(255*0.4, 255*0.4,255*0.4))
LightDirection(light ,0.55, -0.3, -0.75)
AmbientColor(RGB(255*0.2, 255*0.2,255*0.2))
SetupTerrains(LightID(Light), 2, #PB_Terrain_NormalMapping)
terrain=CreateTerrain( #PB_Any, 65,160, 10, 1, "TerrainGroup", "dat")
AddTerrainTexture(terrain, 0, 4, "kachel.jpg","kachel.jpg")
map_size=5;
max_update_per_run=1
For x =0 To map_size
For y=0 To map_size
DefineTerrainTile(terrain, x, y, "", 0,0)
Next
Next
Dim map_array(map_size,map_size,2)
For x =0 To map_size
For y=0 To map_size
map_array(x,y,0)=Random(10,0);
map_array(x,y,1)=Random(10,0);
Next
Next
BuildTerrain(terrain)
i=0
d3_text=CreateText3D(#PB_Any,Str(i))
Repeat
If ExamineMouse()
MouseX = -MouseDeltaX() * 1 * 0.05
MouseY = -MouseDeltaY() * 1 * 0.05
EndIf
ExamineKeyboard()
If KeyboardPushed(#PB_Key_A)
KeyX = -0.05
ElseIf KeyboardPushed(#PB_Key_D)
KeyX = 0.05
Else
KeyX = 0.0
EndIf
If KeyboardPushed(#PB_Key_W)
KeyY = -0.05
ElseIf KeyboardPushed(#PB_Key_S) ; 4x drücken und Text wird angezeigt.
KeyY = 0.05
ElseIf KeyboardPushed(#PB_Key_Escape)
Quit = #True
Else
KeyY = 0
EndIf
hoehe=2
If IsText3D(d3_text) : FreeText3D(d3_text) :EndIf ; <<-- IsText3D eingefügt.
i+1
d3_text=CreateText3D(#PB_Any,Str(Engine3DStatus(#PB_Engine3D_CurrentFPS ))+" "+Str(i)+"_____")
Text3DColor(d3_text, RGBA(255, 0 ,255, 255))
Text3DAlignment(d3_text, #PB_Text3D_HorizontallyCentered)
ScaleText3D(d3_text, 0.5, 0.5, 0.5)
; MoveText3D(d3_text,CameraX(0), CameraY(0) , CameraZ(0)+hoehe, #PB_Absolute) ; Text ist sehr tief unten, fast 5weg.
counter=0
For x =0 To map_size
For y=0 To map_size
If max_update_per_run>counter And map_array(x,y,0)<>map_array(x,y,1)
SetTerrainTileHeightAtPoint(terrain, y,x, 0,0, map_array(x,y,1))
map_array(x,y,0)=map_array(x,y,1)
counter=counter+1
EndIf
Next
Next
MoveCamera(0, CameraX(0), TerrainHeight(0, CameraX(0), CameraZ(0)) + 2, CameraZ(0), #PB_Absolute)
MoveCamera (0, KeyX, 0, KeyY)
RotateCamera(0, MouseY, MouseX, 0, #PB_Relative)
UpdateTerrain(terrain)
RenderWorld()
FlipBuffers()
Until Quit = #True
CloseScreen()
Else
MessageRequester("Error", "The 3D Engine can't be initialized",0)
EndIf
End