habe dieses fenster kleiner gemacht:
"OpenWindowedScreen(WindowID(0), 0, 0, 300, 300, 0, 0, 0)"
und möchte auf den rest des "openwindow" 2 druckbutton setzen und damit den würfel steuern.
wie bekomme ich die button jetzt in das fenster.
mfg castle
Code: Alles auswählen
InitKeyboard()
InitEngine3D()
InitSprite()
InitMouse()
OpenWindow(0, 50, 50, 640, 480, #PB_Window_SystemMenu, "3D - Würfel")
OpenWindowedScreen(WindowID(0), 0, 0, 640, 480, 0, 0, 0)
Procedure RCol()
ProcedureReturn RGB(Random(240)+15, Random(235)+20, Random(235)+20)
EndProcedure
Procedure NewMaterial(N)
CreateTexture(N, 256, 256)
StartDrawing(TextureOutput(N))
Box( 0, 0, 128, 128, RCol())
Box( 0, 128, 128, 128, RCol())
Box(128, 0, 128, 128, RCol())
Box(128, 128, 128, 128, RCol())
StopDrawing()
CreateMaterial (0, TextureID(N))
ProcedureReturn MaterialID(0)
EndProcedure
;- Kamera einstellen
CreateCamera(0, 0, 5, 100, 90)
CameraLocate(0, 33, 56, -66)
CameraLookAt(0, 10, 10, 15)
DataSection
V_01:
Data.f 00,00,00 ;Point 0
Data.f 32,00,00 ;Point 1
Data.f 00,00,32 ;Point 2
Data.f 32,00,32 ;Point 3
Data.f 00,32,00 ;Point 4
Data.f 32,32,00 ;Point 5 P2 P3
Data.f 00,32,32 ;Point 6 *------------------*
Data.f 32,32,32 ;Point 7 / \ _________ D0 / |
T_01: ; P0 / D1 \ / D5|
Data.w 0, 1, 2 ;Dreieck 0 (oben) *------------------*\ |
Data.w 2, 1, 3 ;Dreieck 1 |\ P1| | |
Data.w 6, 5, 4 ;Dreieck 2 (unten) | \ D8 | | |
Data.w 7, 5, 6 ;Dreieck 3 | \ | | |
Data.w 7, 1, 5 ;Dreieck 4 (rechts) | \ | \ |
Data.w 3, 1, 7 ;Dreieck 5 | \ | | |
Data.w 0, 6, 4 ;Dreieck 6 (links) | \ | | |
Data.w 2, 6, 0 ;Dreieck 7 | D9 \ | \|
Data.w 5, 1, 0 ;Dreieck 8 (vorne) | \ | D4 * P7
Data.w 0, 4, 5 ;Dreieck 9 | \ | /
Data.w 2, 3, 7 ;Dreieck 10 (hinten) *------------------*/
Data.w 7, 6, 2 ;Dreieck 11 P4 P5
U_01:
Data.f 0.0, 0.0 ; Vertex 0
Data.f 0.0, 1.0 ; Vertex 1
Data.f 1.0, 0.0 ; Vertex 2
Data.f 1.0, 1.0 ; Vertex 3
Data.f 0.0, 0.0 ; Vertex 4
Data.f 0.0, 1.0 ; Vertex 5
Data.f 1.0, 0.0 ; Vertex 6
Data.f 1.0, 1.0 ; Vertex 7
EndDataSection
CreateMesh(0)
SetMeshData(0, #PB_Mesh_Vertices, ?V_01, 08)
SetMeshData(0, #PB_Mesh_Triangles, ?T_01, 12)
SetMeshData(0, #PB_Mesh_UVCoordinates, ?U_01, 08)
CreateEntity(0, MeshID(0), NewMaterial(0))
EntityLocate(0, 5, 0, 5)
;- Hauptschleife
Repeat
RenderWorld()
StartDrawing(ScreenOutput())
Locate(4, 3)
FrontColor(255,255,255) : BackColor(0,0,0)
DrawText("Position = " +Str(CameraX(0))+ " ; " +Str(CameraY(0))+ " ; " + Str(CameraZ(0)) + Space(10))
Locate(4, 460) : DrawText("Auf = Num8 | Ab = Num2 | Textur ändern = Eingabe | Drehen = Strg rechts")
StopDrawing()
FlipBuffers()
ExamineKeyboard()
If KeyboardPushed(#PB_Key_All)
Zm = 0 : Xm = 0 : Ym = 0
If KeyboardPushed(#PB_Key_Up) : Zm = -2.1 : EndIf
If KeyboardPushed(#PB_Key_Down) : Zm = 2.1 : EndIf
If KeyboardPushed(#PB_Key_Right) : Xm = 2.1 : EndIf
If KeyboardPushed(#PB_Key_Left) : Xm = -2.1 : EndIf
If KeyboardPushed(#PB_Key_Pad8) : Ym = 2.1 : EndIf
If KeyboardPushed(#PB_Key_Pad2) : Ym = -2.1 : EndIf
If KeyboardPushed(#PB_Key_Return) : N*-1+1 : EntityMaterial(0, NewMaterial(N)) : EndIf
MoveCamera(0, Xm, Ym, Zm)
If KeyboardPushed(#PB_Key_RightControl)
ReleaseMouse(0)
ExamineMouse()
RotateCamera(0, -MouseDeltaX(), -MouseDeltaY(), 0)
MouseLocate(320, 240)
EndIf
EndIf
If KeyboardReleased(#PB_Key_RightControl) : ReleaseMouse(1) : EndIf
RotateEntity(0, 0.1, 0.05, 0.1)
Until KeyboardPushed(#PB_Key_Escape) Or WindowEvent() = #PB_Event_CloseWindow
CloseScreen()
End
; IDE Options = PureBasic v3.94 (Windows - x86)
; CursorPosition = 84
; FirstLine = 43
; Folding = -