Hi,
benutze die interne PB 3D engine und möchte meine Grafikausgabe in z.B. einen ContainerGadget vollführen. Dieses Gadget möchte ich dann entsprechend mit ResizeGadget skalieren können und die 3D Ausgabe muss sich entsprechend von der Größe her anpassen!
Habe nichts dazu gefunden bzgl. dem resize der Grafikausgabe ... geht das mit der PB 3D engine überhaupt?
Danke und Grüße,
cdx
Resize für OpenWindowScreen - Gibts das überhaupt?
Re: Resize für OpenWindowScreen - Gibts das überhaupt?
Autostretch kaputt? Das ist eine Option im OpenWindowedscreen
pb aktuell5.7 - windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Re: Resize für OpenWindowScreen - Gibts das überhaupt?
I know about that but it just does not work ... try this and you will see what I mean (black square is the 3D engine output - pink one is the backcolor of the container gadget).
Paste that code, run it and resize the window!
Paste that code, run it and resize the window!
Code: Alles auswählen
If(InitEngine3D())
InitSprite()
MainWindow = OpenWindow(#PB_Any, 0, 0, 400, 400, "Test", #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_ScreenCentered)
Container = ContainerGadget(#PB_Any, 10, 10, 100, 100)
SetGadgetColor(Container, #PB_Gadget_BackColor, RGB(255,0,128))
CloseGadgetList()
OpenWindowedScreen(WindowID(Container), 0, 0, WindowWidth(Container), WindowHeight(Container), 1, 0, 0)
Repeat
Event = WindowEvent()
Select Event
Case #PB_Event_CloseWindow
End
Case #PB_Event_SizeWindow
ResizeGadget(Container, 10, 10, WindowWidth(MainWindow, #PB_Window_InnerCoordinate) - 20, WindowHeight(MainWindow, #PB_Window_InnerCoordinate) - 20)
EndSelect
RenderWorld()
FlipBuffers()
ForEver
EndIf
Re: Resize für OpenWindowScreen - Gibts das überhaupt?
Läuft gar nicht in 5.22
WindowId(contain..) mag dort nicht.
hier ein etwas getuntes Demo aus der PB Hilfe
wenn es platte Grafik sein soll dann tut es doch auch ein Canvasgadget, das lässt sich dann leichter resizen per resizegadget(..)
WindowId(contain..) mag dort nicht.
hier ein etwas getuntes Demo aus der PB Hilfe
Code: Alles auswählen
If InitSprite() = 0
MessageRequester("Error", "Can't open screen & sprite environment!", 0)
End
EndIf
If OpenWindow(0, 0, 0, 320, 200, "A screen in a window...", #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_ScreenCentered)
CreateStatusBar(0, WindowID(0))
AddStatusBarField(320)
StatusBarText(0, 0, "Automatically zoomed screen area when changing window size...")
If OpenWindowedScreen(WindowID(0), 10, 10, 320, 200, #True, 20, 30)
CreateSprite(0, 50, 50) ; Create an empty sprite, will be whole black
Repeat
; It's very important to process all the events remaining in the queue at each frame
;
Repeat
Event = WaitWindowEvent(10)
If Event = #PB_Event_CloseWindow
End
EndIf
Until Event = 0
FlipBuffers()
ClearScreen(RGB(0, 0, 200)) ; A blue background
DisplaySprite(0, 10, 10) ; Display our black box at the left-top corner
DisplaySprite(0, 260, 10) ; Display our black box at the right-top corner
ForEver
Else
MessageRequester("Error", "Can't open windowed screen!", 0)
EndIf
EndIf
pb aktuell5.7 - windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Re: Resize für OpenWindowScreen - Gibts das überhaupt?
Dabke für die Antwort ... hab ich mir schon fast gedacht nachdem ich alles durchforstet habe. Brauche es für ein Tool wo ich etwas 3D mache, ist also von nöten.
Danke und Grüße,
cdx
Danke und Grüße,
cdx
- Chimorin
- Beiträge: 451
- Registriert: 30.01.2013 16:11
- Computerausstattung: MSI GTX 660 OC mit TwinFrozr III
6Gb DDR 3 RAM
AMD Phenom II X4 B55 @ 3,6GHz
Windows 7 Home Premium 64-bit
Re: Resize für OpenWindowScreen - Gibts das überhaupt?
Die Autostretchfunktion geht in Verbindung mit der OGRE-Engine nicht.