bilder im vollbildmodus strecken

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

xaerox

Betreff: bilder im vollbildmodus strecken

BeitragMo, Jul 07, 2008 21:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo
Ich befinde mich in folgendes poplem.
Ich will ein bild in das fenster/vollbild strecken also
GraphicsWidth(),GraphicsHeight()
ohne dass ich resizeimage oder scaleimage nehmen muss.
(zu langsam und fehlerhaft!)
ich hatt das einmal hinbekommen ein bild (800x600) in den vollbild in der auflösung 1280, 800 anzuzeigen ohne dass ich irgentwas anderes eingesetzt hab also nur loadimage und drawimage, fertig.

irgentwie finde ich das komisch...
wollte das so ähnlich machen wie bei drawmove movie, 0, 0, x, y
leider geht das bei draw image nicht ;(
kennt jemand da einen trick?
Biker sind wahre Helden.
Auch Musiker.

ozzi789

BeitragMo, Jul 07, 2008 21:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Dann setzt du halt die Auflösung gleich gross wie das Bild , dann füllt es den Bildschrim aus , sonst Resize/Scale Image , welche wirklich nicht sehr nützlich sind (realtime)
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5

xaerox

BeitragMo, Jul 07, 2008 21:50
Antworten mit Zitat
Benutzer-Profile anzeigen
naja vielleicht erklärt es dir genauer, wenn du das siehst:
Code: [AUSKLAPPEN]

PB_SetHintFont("Verdana")
PB_SetHintColor(245, 248, 152, 0, 0, 0, 208, 55, 163)
Global mouse = LoadImage("Gamedata/menue/cursor.bmp")
While menue = 0
;Maus
   Cls

   Select menustate
      Case 1 ;-------------------------Hauptmenü---------------
            
            ; Erst alle anderen Buttons Deaktivieren
            PB_DisableAll()
            PB_EnableButton(Btn_single)
            PB_EnableButton(Btn_multi)
            PB_EnableButton(Btn_options)
            PB_EnableButton(Btn_credits)
            PB_EnableButton(Btn_exit)
            ; Das Menü-Bild malen
            Draw Main, 0, 0, GraphicsWidth(),GraphicsHeight()
            If PB_ButtonHit(Btn_single) Then menustate = 2
            If PB_ButtonHit(Btn_multi) Then menustate = 5
            If PB_ButtonHit(Btn_options) Then menustate = 14
            If PB_ButtonHit(Btn_credits) Then menustate = 19
            If PB_ButtonHit(Btn_exit) Then End

   End Select
If KeyHit(1) Then End
   ; Nicht vergessen: Updaten
   PB_Update()   
DrawImage mouse, MouseX(), MouseY()   
   Flip

Wend
End

ich arbeite grad mein menue mit dem pbutton tutrial
Biker sind wahre Helden.
Auch Musiker.

kriD

BeitragMo, Jul 07, 2008 23:34
Antworten mit Zitat
Benutzer-Profile anzeigen
Okee.. wenn ichs richtig aufgefasst habe, brauchst du was, womit du dein Fenster größer/kleiner bekommst, und das die Grafiken gleich mitskaliert.

Ich hab da mal folgenden Kniff herausgefunden, als ich das selbe Problem hatte:
Man nimmt zunächst Graphics mit der gewünschten Auflösung (bsp:800*600).
danach gleich nochmal Graphics, aber mit irgendeiner beliebigen Auflösung und als letzten Parameter 3 (skalierbares Fenster).
(wenn du Vollbild willst (letzter Parameter 1), wird dein Fenster mit Grafiken sowieso gestreckt)

Code: [AUSKLAPPEN]

Graphics 800,600,0,2
Graphics 10,10,0,3


Der einzige Nachteil ist, das die Grafiken im speicher ALLE wieder gelöscht werden, also folglich nach der Grafikumstellung neu geladen werden müssen! (mach ne Funktion, wo dies passiert, is am einfachsten..)

Code: [AUSKLAPPEN]

Graphics 800,600,0,2
Graphics 10,10,0,3
grafiken_einlesen ()


Dann solltes klappen..

lg kriD
Wenn ich du wäre, wäre ich lieber ich!

xaerox

BeitragDi, Jul 08, 2008 13:04
Antworten mit Zitat
Benutzer-Profile anzeigen
hey danke für den tipp...ich ahbe es mir anders überlegt.
ich werde die grafiken einfach größer malen, wo jeder doch so einen großen bildschirm hat, und dann die bestimmte auflösung benutzen.
ich werde dann für den spiel dann 2 exe dateien zuliefern, eins für widescreen und eins für normale auflösung.
widescreen standard: 1280, 800
normal standart : 1024, 768
Biker sind wahre Helden.
Auch Musiker.

hectic

Sieger des IS Talentwettbewerb 2006

BeitragDi, Jul 08, 2008 14:35
Antworten mit Zitat
Benutzer-Profile anzeigen
''Normal'' -Standard (mitlerweile veraltet da eine Domäne von CRT-Monitoren) ist ein Seitenverhältnis von 4:3 (also 800x600, 1024x768, 1280x960, 1600x1200 etc...)

''Normal'' -Standard (mitlerweile weit verbreitet da eine LCD/TFT -Domäne) ist ein Seitenverhältnis von 5:4 (also 1280x1024, 1600x1280 etc...)

Dann gibt es noch weitere wie:

16:10 das von dir genannte Seitenverhältnis

16:9 recht selten im Computerbereich

---

Allein die vier verschiedene Seitenverhältnisse machen die Sachen bei voller Unterstützung nicht so einfach. Wink

Weitere Seitenverhältnisse konnte ich bisher nicht in Erfahrung bringen.

Eventuell bringt dich die Draw3D weiter, da man da ganz einfach per Origin3D sich seine eigene Wunschauflösung einstellen kann, bzw. diese auf ein Seitenverhältnis umrechnen kann, und zwar ganz ab von der tatsächlich benuzten Bildschirmauflösung. Man benötigt dazu aber Blitz3D.
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D

kriD

BeitragDi, Jul 15, 2008 12:34
Antworten mit Zitat
Benutzer-Profile anzeigen
Zudem wird die Datenmenge doppelt so groß
-> Download dauert doppelt so lang
-> ISDN-Nutzer sind nicht gerade erfreut Very Happy

lg kriD
Wenn ich du wäre, wäre ich lieber ich!

mabox

BeitragMo, Aug 18, 2008 8:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe auch schon ein Spiel gemacht bei welchem man die Auflösung ändern kann und die Bilder mit resize angeasst werden. Mit dem Ergebnis bin ich eigentlich zufrieden und die Ladezeit ist auch nicht endlos lang. Wenn du das Spiel sehen willst: https://www.blitzforum.de/showcase/226/

EDIT:
schau dir dashier mal an: http://blitzbasic.com/codearcs...?code=1305

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group