Resize für OpenWindowScreen - Gibts das überhaupt?

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
cdx
Beiträge: 3
Registriert: 06.05.2014 16:33

Resize für OpenWindowScreen - Gibts das überhaupt?

Beitrag von cdx »

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
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3857
Registriert: 13.09.2004 17:48
Kontaktdaten:

Re: Resize für OpenWindowScreen - Gibts das überhaupt?

Beitrag von bobobo »

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.
cdx
Beiträge: 3
Registriert: 06.05.2014 16:33

Re: Resize für OpenWindowScreen - Gibts das überhaupt?

Beitrag von cdx »

I know about that but it just does not work :cry: ... 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!

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
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3857
Registriert: 13.09.2004 17:48
Kontaktdaten:

Re: Resize für OpenWindowScreen - Gibts das überhaupt?

Beitrag von bobobo »

Läuft gar nicht in 5.22

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
wenn es platte Grafik sein soll dann tut es doch auch ein Canvasgadget, das lässt sich dann leichter resizen per resizegadget(..)
‮pb aktuell5.7 - windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
cdx
Beiträge: 3
Registriert: 06.05.2014 16:33

Re: Resize für OpenWindowScreen - Gibts das überhaupt?

Beitrag von cdx »

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
Benutzeravatar
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?

Beitrag von Chimorin »

Die Autostretchfunktion geht in Verbindung mit der OGRE-Engine nicht.
Bild

- formerly known as Bananenfreak -
Antworten