Der Fall: Nach dem Vorbild des Sourcecodes in der PB4 Beta
(PureBasic_Windows_Beta_(bktmvy)\Examples\Sources\meshmanual.pb)
habe ich versucht ein Mesh zu erstellen und mit einer Textur zu belegen.
Klappt ja auch ganz gut, allerdings hakt die Maus jedesmal, wenn ich das Programm laufen lasse. (Bei der Sourcecode-Vorlage tritt dieses Problem nicht auf.) Habe ich irgendwo irgendwas falsch gemacht?
Hier der Code:
Code: Alles auswählen
InitEngine3D()
InitSprite()
InitKeyboard()
InitMouse()
#CameraSpeed=5
Add3DArchive("D:\Projekt Welt\",#PB_3DArchive_FileSystem)
OpenScreen(1024,768,16,"hhh")
CreateMesh(0, 4)
SetMeshData(0, #PB_Mesh_Vertex|#PB_Mesh_UVCoordinate, ?Koordinaten,4)
SetMeshData(0, #PB_Mesh_Face, ?vert, 4)
CreateMaterial(0, LoadTexture(0,"Bild1.jpg"))
CreateEntity(0, MeshID(0), MaterialID(0))
CreateCamera(0, 0, 0, 100, 100)
CameraLocate(0,1000,0,0)
RotateCamera(0,90,0,0)
Repeat
ClearScreen(RGB(0, 0, 0))
If ExamineKeyboard()
If KeyboardPushed(#PB_Key_Left)
KeyX = -#CameraSpeed
ElseIf KeyboardPushed(#PB_Key_Right)
KeyX = #CameraSpeed
Else
KeyX = 0
EndIf
If KeyboardPushed(#PB_Key_Up)
KeyY = -#CameraSpeed
ElseIf KeyboardPushed(#PB_Key_Down)
KeyY = #CameraSpeed
Else
KeyY = 0
EndIf
EndIf
If ExamineMouse()
MouseX = -(MouseDeltaX()/10)*#CameraSpeed/2
MouseY = -(MouseDeltaY()/10)*#CameraSpeed/2
EndIf
RotateCamera(0, MouseX, MouseY, RollZ)
MoveCamera (0, KeyX, 0, KeyY)
RenderWorld()
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape) Or Quit = 1
End
DataSection
Koordinaten:
Data.f 0,0,0 ;0
Data.f 0,0 ;UV Koordinaten
Data.f 0,0,100 ;1
Data.f 1,0
Data.f 0,100,0 ;2
Data.f 0,1
Data.f 0,100,100 ;3
Data.f 1,1
vert:
Data.w 0,1,2
Data.w 1,3,2
Data.w 0,2,1
Data.w 1,2,3
EndDataSection
Ein Wort: Hilfe!