Fullscreen vs. Windowed

  • #1, by crankschenkFriday, 12. October 2018, 08:29 6 years ago
    Hallo allerseits,

    mein Spiel läuft immer im Fullscreen und ich habe mich bisher nicht um einen Windowed-Mode gekümmert. Allerdings habe ich gestern auf einem Laptop getestet, bei dem das Bild nach dem Vorspann regelrecht reingezoomt wurde. Auch im Spiel ist das nicht anders.
    Kann es sein, dass bei kleineren Auflösungen (mein Spiel ist in FullHD) nicht automatisch runterskaliert wird?
    Gibt es hier eine Empfehlung? Sollte ich auf jeden Fall einen Windowed-Mode auswählbar machen? Oder habe ich evtl. eine Einstellung übersehen?

    Danke im Voraus
    Manuel

    Newbie

    100 Posts


  • #2, by esmeraldaFriday, 12. October 2018, 09:21 6 years ago
    Das exportierte Spiel oder Start aus dem Editor?

    Im Editor kannst du über Optionen/Player Vollbild ein oder ausschalten.

    Beim exportierten Spiel kannst du in der ini-file die Auflösung einstellen.
    RESOLUTION = Auto/Desktop/Game/Custom
    Mit Desktop sollte es an sich funktionieren. Mit 5.0.7 habe ich es allerdings noch nicht getestet.


    Key Killer

    513 Posts

  • #3, by crankschenkFriday, 12. October 2018, 20:49 6 years ago
    Im exportieren Spiel hatte ich das Problem. Auch eine Anpassung der ini brachte kein Ergebnis. roll
    Ich überlege, zumindest in den Optionen einen Haken für Vollbild an/aus einzubauen ... wenn das machbar ist.

    Newbie

    100 Posts

  • #4, by crankschenkSunday, 14. October 2018, 22:58 6 years ago
    Wie macht Ihr (alle) das eigentlich? Gibt es in den Optionen Eurer Spiele auch eine Auswahl der Auflösung und/oder Fenster/Vollbild?
    Würde man nach einem Wechsel das Spiel neu Starten müssen?

    Danke im Voraus für Eure Anregungen.

    Newbie

    100 Posts

  • #5, by sebastianMonday, 15. October 2018, 17:52 6 years ago
    mit den Luafunktionen
    toggleWindowMode()
    getWindowMode()

    lassen sich hier ganz gut abfragen erstellen, die im Optionsmenü das Wechseln ermöglichen. Zusätzlich, wenn dann in den Fenstermodus gewechselt wird, kannst du
    die Funktion
    setWindowSize({x=640,y=480})
    nutzen, um dein Fenster zu skalieren (hier 640x480).

    Ob das Spiel dann nun im Fenster Modus starten soll wird über den FULLSCREEN = YES/NO Parameter in der config.ini abfragt, den du auch beim Ändern des Bildmodis in eine Bedingung speicherst und dann die config.ini neu schreibst. 

    Ein Beispielscript findest du im wiki smile 

    Thread Captain

    2346 Posts

  • #6, by crankschenkMonday, 15. October 2018, 21:11 6 years ago
    Super. Hat funktioniert.
    Danke Sebastian.

    Newbie

    100 Posts

  • #7, by crankschenkTuesday, 16. October 2018, 21:32 6 years ago
    Jetzt möchte ich natürlich nach dem Switch zwischen Fenster und Vollbild den Modus abfragen und dementsprechend die Bedingung setzen:

    toggleWindowMode()
    
    if getWindowMode() then
    
      Conditions[show_Resolution].setValue(VConditionValue, false)
    
    else
    
      Conditions[show_Resolution].setValue(VConditionValue, true)
    
    end

    Aber es gibt immer folgende Fehlermeldung:
    Failed to run string in Lua

    Der Wechsel zwischen Fenster und Vollbild funktioniert allerdings.


    Ach ja, welche Auflösungen sind heute eigentlich noch sinnvoll?
    320x200 kann man sicher getrost vergessen, oder?

    Newbie

    100 Posts

  • #8, by sebastianTuesday, 16. October 2018, 21:47 6 years ago
    Die "" fehlen in den eckigen Klammern. Sonst denkt VS, es ist eine lua variabel.

    Conditions["show_Resolution"].setValue(VConditionValue, false)


    du kannst das mittlerweile auch etwas abkürzen :

    Conditions["show_Resolution"].Value = false

    Thread Captain

    2346 Posts

  • #9, by crankschenkTuesday, 16. October 2018, 21:55 6 years ago
    Jetzt funktioniert es.
    Vielen Dank Sebastian.

    Ist es denn eigentlich sinnvoll, alle 17 Auflösungen dem Spieler zur Auswahl anzubieten?
    Oder sollte ich mich evtl auf eine Handvoll beschränken?


    Newbie

    100 Posts

  • #10, by sebastianTuesday, 16. October 2018, 22:13 6 years ago
    Hi Manuel, 

    es macht nur Sinn Auflösungen im selben Seitenverhältnis wie die Originalauflösung zu nutzen, sonst verzerrt das Bild. 
    Bei Pixelspielen ist zusätzlich zu beachten, ob es ein Vielfaches der Originalauflösung ist, da diese Spiele meist hoch- anstatt runterskaliert werden. 

    Und natürlich nur Auflösungen nutzen, die kleiner sind als die größte Auflösung, die der genutzte Monitor unterstützt

    Was nutzt mir also ein Fenster mit z. B. 1600x900, wenn der Monitor nur 1280x720 kann wink?

    Es gibt die Möglichkeit die verfügbaren Auflösungen abzufragen, habs aber leider grade nicht zur Hand. Die Funktion sollte aber in den VS Luadocs dokumentiert sein. 
    Dann bekommt man eine Luatabelle zurück, welche du per Schleife durchlaufen und auf das Seitenverhältnis checken kannst um dann eine "gültige" Auflösung anbieten zu können... 

    eine einfachere Variante wäre natürlich fest einige Auflösungen anzubieten, die "Standard" sind. Seitenverhältnis ist hier aber dennoch wichtig. 

    Grüße 
    Sebastian 

    Thread Captain

    2346 Posts

  • #11, by crankschenkTuesday, 16. October 2018, 22:19 6 years ago
    Alles klar.
    Dank dir

    Newbie

    100 Posts