FSR und Auflösungseinstellung in Godot 4 | Isaac Asley | Skillshare
Suchen

Playback-Geschwindigkeit


1.0x


  • 0.5x
  • 0.75x
  • 1x (normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

FSR und Auflösungseinstellung in Godot 4

teacher avatar Isaac Asley, Game Developer

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu allen Kursen
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Wähle aus einer Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu allen Kursen
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Wähle aus einer Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Einheiten dieses Kurses

    • 1.

      Einführung

      1:17

    • 2.

      Warum du FSR in dein Spiel implementieren solltest

      0:47

    • 3.

      Auflösung-Dropdown-Auswahl

      6:41

    • 4.

      Hinzufügen einer Vollbildschaltfläche

      3:17

    • 5.

      Polieren der Benutzeroberfläche

      7:20

    • 6.

      Vollbildauflösung – Die moderne Art

      7:39

    • 7.

      Hinzufügen von FSR zu deinem Projekt

      8:33

    • 8.

      V Sync hinzufügen

      5:17

    • 9.

      Aufräumen

      4:27

    • 10.

      Bildschirmumschaltung

      3:33

    • 11.

      Überprüfung und Überlegungen

      2:51

    • 12.

      Schlussbemerkung

      0:26

  • --
  • Anfänger-Niveau
  • Fortgeschrittenes Niveau
  • Fortgeschrittenes Niveau
  • Jedes Niveau

Von der Community generiert

Das Niveau wird anhand der mehrheitlichen Meinung der Teilnehmer:innen bestimmt, die diesen Kurs bewertet haben. Bis das Feedback von mindestens 5 Teilnehmer:innen eingegangen ist, wird die Empfehlung der Kursleiter:innen angezeigt.

10

Teilnehmer:innen

--

Projekt

Über diesen Kurs

Das Einrichten von Auflösungseinstellungen in Godot 4 kann verwirrend sein. Seit der Veröffentlichung von Godot 4 hat sich viel verändert, und ältere Tutorials sind nicht mehr machbar. Glücklicherweise haben sich neben diesen wichtigen Änderungen auch wichtige Verbesserungen ergeben.

Wir sehen uns einige der visuellen Einstellungen an, die wir dem Benutzer aussetzen können, um die Einstellungen des Spiels zu optimieren. Dinge wie Auflösung, 3D-Skalierung mit FSR, Bilinear und VSYNC. In diesem Video sehen wir uns an, wie man Auflösungsoptionen für den Benutzer in der Godot Spiel-Engine einrichtet. Dies ist ein modernerer Ansatz, um die Auflösung zu ändern, und die Benutzeroberfläche mit hässlichem Stretching hat keine Auswirkungen auf die Benutzeroberfläche. Diese Auflösungseinstellungen werden normalerweise als Performance-Option angeboten, da es heutzutage ziemlich trivial ist, die Auflösung des Bildschirms zu erkennen.

Triff deine:n Kursleiter:in

Teacher Profile Image

Isaac Asley

Game Developer

Kursleiter:in
Level: Intermediate

Kursbewertung

Erwartungen erfüllt?
    Voll und ganz!
  • 0%
  • Ja
  • 0%
  • Teils teils
  • 0%
  • Eher nicht
  • 0%

Warum lohnt sich eine Mitgliedschaft bei Skillshare?

Nimm an prämierten Skillshare Original-Kursen teil

Jeder Kurs setzt sich aus kurzen Einheiten und praktischen Übungsprojekten zusammen

Mit deiner Mitgliedschaft unterstützt du die Kursleiter:innen auf Skillshare

Lerne von überall aus

Ob auf dem Weg zur Arbeit, zur Uni oder im Flieger - streame oder lade Kurse herunter mit der Skillshare-App und lerne, wo auch immer du möchtest.

Transkripte

1. Einführung: Sein, mein Name ist Isaac von Chef Games. Und heute werden wir uns der Einrichtung der Auflösungseinstellungen in GDoF befassen . Einige der Funktionen , die wir in diesem Projekt einrichten werden , sind eine riesige Funktion namens AMD FSR, die für die Bildschirmskalierung verwendet wird Du wirst es hören, weil du das in diesem Kurs oft sagst in diesem Kurs oft Wenn du ein Three-D-Spiel veröffentlichst, musst du diese Funktion unterstützen. Es ist sehr einfach einzurichten und bietet deinen Spielern die erstaunliche Möglichkeit, und bietet deinen Spielern die erstaunliche Möglichkeit mehr Frames zu gewinnen, wenn ihr Gerät Probleme hat. Insbesondere mit GIDO 4.2 haben sie SR 2.2 hinzugefügt, was eine massive Verbesserung gegenüber FSR erstellen diesem Video werden wir auch eine Menge Tools Wir beginnen mit einer Auswahloption für die Auflösung , mit der wir die Auflösung im Spiel ändern können die Auflösung im Spiel Danach richten wir einen Selektor für den Vollbildmodus ein. Wir werden uns mit der Bildschirmskalierung befassen. Das ist ein wirklich wichtiges Feature, das man heutzutage in ein 3-D-Spiel integrieren sollte, und dann machen wir VSync und Screen Swapping Kleiner Hinweis für dieses Tutorial, Gudo 4.2 FSR 2.2 ist nur für GiDO 4.2 und höher verfügbar. Wenn du also eine ältere Version für dein Spiel hast, solltest du vielleicht ein Upgrade in Betracht ziehen oder dies einfach in einem separaten Projekt tun Nachdem all das gesagt wurde, lassen Sie uns darauf eingehen. 2. Warum du FSR in dein Spiel implementieren solltest: planen, ein Spiel mit der GI Do-Game-Engine zu veröffentlichen , müssen Sie unbedingt sicherstellen, dass Sie Ihre Auflösungsoptionen korrekt einrichten Seit ich letztes Jahr meine Tutorial-Serie für GiDO 3.5 veröffentlicht habe, hat sich viel geändert letztes Jahr meine Tutorial-Serie für GiDO 3.5 sind die Zeiten, in denen du deine Benutzeroberfläche ruinieren musstest, um deinen Spielern zusätzliche Frames zu geben, falls sie sie benötigen oder zu viel Länge nehmen musst, um dein Spiel mit dem Viewport zu skalieren und gleichzeitig deine Benutzeroberfläche auf einer separaten Ebene zu halten Es ist wesentlich einfacher geworden. Aber leider sind diese alten Videos mit all diesen tollen Tools nicht wirklich anwendbar. Alles hat sich geändert. Ein weiteres großes Feature , das mit G D 4.2 herauskommt , ist AMD FSR 2.2 Was die Skalierung angeht, das ist riesig, Leute. werden sie eine Menge Tools entwickeln In diesem Video werden sie eine Menge Tools entwickeln. Lass uns anfangen. 3. Auflösung-Dropdown-Auswahl: Schauen wir uns also das Projekt an, wie es zustande kommt. Wir haben ein gerichtetes Licht, Schweißumgebung und eine Kamera. Es schwebt einfach in dieser Szene herum , zu der ich im Folgenden einen Link und Quellenangaben hinterlasse. Die Projekteinstellungen selbst sollten ziemlich geschliffen sein Die Breite und Höhe des Viewports sollten den Werten entsprechen, die normalerweise in Gadot verwendet Ich kann sehen, dass ich hier V-Sync aktiviert habe, aber ich werde das tatsächlich deaktivieren, damit mein Projekt genau so aussieht, wie Sie Ihres sehen sollten Hinterlassen Sie auch einen Link für dieses Projekt unten in der Beschreibung, damit Sie es herunterladen und auch den Bildern folgen können es herunterladen und auch den Bildern folgen Okay, fangen wir an, Kontrollknoten hinzuzufügen. Ich werde meinen ersten Kontrollknoten hinzufügen. Ich nenne es so etwas wie Optionsbeispiel. Nichts Besonderes hier. Ich klicke auf Anchor Resets und dann auf Full Rec Okay, also werde ich eine HBox hinzufügen. Ich werde diesen Anker erneut verwenden, um auf Full Rec zu klicken Ich werde klicken und das Ausrichtungszentrum für diesen HBox-Container einrichten Und dann füge ich eine V-Box hinzu. Ihr müsst das nicht genau befolgen. So richte ich meine Menüs gerne so ein, dass sie in der Mitte des Bildschirms erscheinen. Und ich werde es in Optionseinstellungen umbenennen. Okay, also fügen wir hier unseren ersten Button hinzu. Es wird eine Optionsschaltfläche sein. Das sind nette kleine Drop-down-Boxen, die wir hinzufügen können. Ich kehre zur Optionseinstellung zurück und füge ein Skript hinzu. Ich rufe einfach die Optionseinstellung auf und speichere sie direkt in der Basis dieses Projekts. Das ist in Ordnung für mich. Ich werde die Prozessfunktion löschen. Wir werden nicht das Erste sein , was ich tun werde , ist, diese Optionen-Schaltfläche hinzuzufügen. Sie können darauf klicken und die Strg-Taste gedrückt halten. Und wenn du es fallen lässt, wird ein fertiges R für dich hinzugefügt. Als Nächstes füge ich eine Liste mit Auflösungen ein, aus der wir auswählen können. Ich dachte, es wäre ein bisschen einfacher, als das für dich abzutippen. Sie können ein paar davon herunterkopieren. Es muss keine erschöpfende Liste sein. Bei meiner handelt es sich nur um eine Reihe gängiger Resolutionen. Die erste Funktion, die wir schreiben werden, wird also unter Scott-Resolutionen Ad heißen, und wir werden dieses Wörterbuch einfach zu unserer Optionsschaltfläche hinzufügen . Wir werden also eine Viererschleife erstellen, also geben wir vier R in Auflösungen ein. Und darin geben wir die Schaltfläche Optionen ein. Ich werde diese Variable tatsächlich umbenennen , weil ich denke, dass es ein bisschen klar sein kann , was sie ist. Ich werde sie in die Optionsschaltfläche „Auflösung unterstreichen“ umbenennen Optionsschaltfläche „Auflösung unterstreichen Und ich komme runter und tippe einfach Resolution Optionbton Dot Ad Item ein, und es wird einfach R sein. ist alles , was es momentan gibt Das Einzige, woran wir denken müssen, ist, dies tatsächlich zur Ready-Funktion hinzuzufügen Sie können hier sehen, dass ich vergessen habe, das zu überprüfen. Ich denke also, dass ich auch die Ausrichtung meines Box-Containers ändern werde , sodass mein VBox-Container ebenfalls mittig ist mein VBox-Container ebenfalls mittig Das zeigt sich also in der Mitte. Und dann füge ich das der Ready-Funktion hinzu, damit wir sehen können, wie die Liste gefüllt wird. Wie Sie jetzt sehen können, wird es eine Liste mit Auflösungen geben. Offensichtlich tun sie nichts, also können wir diese Funktionalität hinzufügen. Wir müssen zum Projekt zurückkehren und klicken auf den Knoten mit der Optionsschaltfläche und dann auf den Knoten und verbinden das ausgewählte Signalelement mit unserem Skript. Ich habe hier viele Knoten für das Projekt. Ich werde das alles einfach ausblenden und zum Knoten mit den Optionseinstellungen gehen zum Knoten mit den Optionseinstellungen und einfach darauf klicken. In Ordnung. Dieses Signal liefert uns also einen Index, den wir tatsächlich verwenden können, um das Auflösungswörterbuch nachzuschlagen. Also los, die ID entspricht Text des Elements resolution optionbton dot G , den wir eigentlich für das Wörterbuch benötigen Und wir können mit dem Index nachschlagen und sobald wir den Index haben, können wir die Auflösung tatsächlich abfragen Ich rufe Get Window Dot Set Size auf. Und innerhalb dieser Funktion gebe ich Auflösungen in eckigen Klammern ein und gebe die ID ein, die wir gerade eingegeben haben. Und das ist alles was wir brauchen. Wir können das jetzt ausführen und wir können sehen, dass es funktioniert. Und wie Sie sehen können, ist die Änderung der Fenstergröße ziemlich beeindruckend. Sie werden feststellen, dass das Fenster oft hin und her springt, und das liegt hauptsächlich daran, dass ich mir ziemlich sicher bin, dass die Größe von oben links nach innen Also statt der Mitte, Gdo 3.5, gab es eine Funktion, mit der man das relativ einfach machen konnte , aber das ist in Gudo 4 weg Eines der Dinge, die wir tun müssen, ist also , den gesamten virtuellen Desktop-Bereich zu betrachten den gesamten virtuellen Desktop-Bereich um die richtige Position zuzuweisen Ich habe also ein Standard-Setup mit zwei Bildschirmen, aber Sie haben vielleicht etwas anderes. Um die Fensterposition festzulegen, müssen wir den gesamten Desktop-Bereich berücksichtigen. also von der Datei links nach ganz rechts beginne, müsste ich hier zwei Bildschirme berücksichtigen . Deshalb müssen wir es so machen. Ähm, ich habe das in ein paar verschiedenen Konfigurationen getestet. Ich habe immer noch nur zwei Bildschirme, aber ich habe das getestet, indem ich einen vom Stromnetz getrennt oder seine Position im virtuellen Desktop-Bereich verschoben virtuellen Desktop-Bereich nur um zu sehen, wie sich diese Funktion verhält Und bis jetzt habe ich gesehen, dass es ziemlich gut funktioniert. Zuerst müssen wir die Mitte des Bildschirms ermitteln, auf dem wir uns gerade befinden. Das ist Display-Server-Punktbildschirm , Position ermitteln, plus Display-Server-Punktbildschirm , Größe ermitteln geteilt durch zwei. Und das ist genau der Mittelpunkt auf dem Bildschirm, auf dem sich das Fenster gerade befindet. Und jetzt müssen wir die Größe des Fensters ermitteln. Das heißt Fensterpunkt ermitteln, Größe mit Dekorationen ermitteln. kann auch einfach Größe ermittelt werden, aber es wird nicht genau in der Mitte sein. Es ist nicht wirklich wichtig. Sie können einen der beiden verwenden. Die letzte Funktion, die wir aufrufen, ist Get window dot set position. Und innerhalb dieser Funktion übergeben wir den mittleren Bildschirm abzüglich der Fenstergröße geteilt durch zwei. Und das ist die Mitte des aktuellen Bildschirms, wo unser Fenster sein soll. Und zu guter Letzt müssen wir daran denken, es an der Stelle zu platzieren , an der das Fenster zentriert werden soll. Nachdem wir also eine neue Auflösung ausgewählt haben, werden wir den Bildschirm zentrieren. Okay, lassen Sie uns das in Aktion sehen. Und Sie können jetzt sehen, dass sich das so verhält , wie wir es wollen Es erscheint in der Mitte des Bildschirms. Egal welche Größe wir herstellen, es flackert ein bisschen Das ist ziemlich normal. Ich denke, die meisten Menschen könnten dir das verzeihen. Das macht es einfach viel einfacher, wenn du versuchst, die Größe des Spiels an deine speziellen Bedürfnisse anzupassen. Okay. Ordnung, großartig. Wir kommen hier gut zurecht. 4. Hinzufügen einer Vollbildschaltfläche: Ich denke, der nächste Schritt in diesem Punkt besteht wahrscheinlich darin, uns in den Vollbildmodus zu versetzen, weil wir im Moment die verschiedenen Auflösungen wählen können , wenn wir uns im Fenstermodus befinden, was sehr praktisch ist, aber wir haben nichts , was uns in den Vollbildmodus versetzen Lassen Sie uns das also hinzufügen. Wir klicken auf die Schaltfläche Knoten hinzufügen und fügen ein Kontrollkästchen hinzu. Ich werde diese Checkbox umbenennen. Ich behalte einfach den Teil mit der Checkbox bei und füge zu Beginn einen Unterstrich im Vollbildmodus hinzu Unterstrich im Vollbildmodus , damit wir wissen, was es ist Und ich werde dasselbe auch für meine Auflösungsschaltfläche tun, weil ich das nicht getan habe Also werde ich das jetzt tun, und ich muss auch den Knotenpfad für die Variable umbenennen , die wir in das Skript eingefügt haben. Und Sie können es auch einfach anklicken und ziehen. Und dann werde ich dasselbe tun. Ich werde die nächste Variable per Ctrl-Taste klicken und ziehen , sodass wir einen vollständigen Pfad zu ihr haben. Wir kommen zu dieser Checkbox im Vollbildmodus und ich füge etwas Text hinzu, damit wir wissen, was es ist. Also gebe ich hier den Text im Vollbildmodus und verbinde das umschaltbare Signal mit unserem Skript hier. Okay, das ist also ziemlich einfach. Im Vergleich zu Gadot Three gab es früher nur zwei Optionen, nämlich Fenster und Vollbild Wir haben jetzt tatsächlich vier, also können wir diese Variable nicht einfach weitergeben Wir könnten wahrscheinlich etwas Komplizierteres damit machen , aber ich werde es einfach halten. Wenn es also eingeschaltet ist, werde ich das Fenster in den Vollbildmodus versetzen Und so werden wir das hier in Aktion sehen . Ich gebe Get window dot set Mode und füge den Modus dort ein. Sie können sehen, dass diese automatisch angezeigt werden, aber wenn sie nicht für Sie geeignet sind, können Sie einfach capitalwwindow dot mode full screen eingeben Und dann gebe ich ein E ein und sage genau dasselbe Tatsächlich werde ich es kopieren und einfach den Vollbildmodus in den Fenstermodus ändern Vollbildmodus in den Fenstermodus Wie Sie sehen können, haben wir noch ein paar andere Optionen, minimiert, maximiert, all diese Dinge Wahrscheinlich Dinge, die du nicht brauchst, wenn du ein Spiel machst, aber du weißt es nie wirklich Ich weiß, dass Gudo für die Erstellung von Anwendungen immer beliebter geworden , dass Gudo für die Erstellung von Anwendungen immer beliebter ist. Das ist wahrscheinlich der Grund, warum es diese Optionen gibt , was nett ist, aber wir brauchen sie jetzt nicht, wir werden einfach so etwas Einfaches machen Okay, das sollte also funktionieren. Keine Probleme. Wir werden die Szene hier nachspielen. Nun, lassen Sie uns das ankreuzen. Und wir können sehen, dass wir uns im Vollbildmodus befinden. Und als kurzes Beispiel können Sie jetzt sehen, dass das Dropdown-Feld nicht mehr funktioniert. Wir werden uns gleich damit befassen . Aber wie Sie sehen können, haben wir außerhalb des Vollbildmodus keine Probleme, und wir können klicken, um in den Vollbildmodus zu wechseln. Der Text ersetzt sich nicht von selbst. Es gibt ein paar Dinge, die wir aufpolieren müssen. Aber im Moment, weißt du, funktionieren die Dinge ziemlich gut. Das Einzige, was wir hier hinzufügen müssen , ist, dass es, wenn Sie den Vollbildmodus verlassen, zu der Position zurückkehrt, an die Sie es verschoben haben. Das ist vielleicht etwas , was Sie wollen, aber ich werde die zentrierte Funktion hinzufügen wir wieder in den Fenstermodus zurückkehren, damit wir das Fenster an eine beliebige Position verschieben können. Aber wenn wir es im Vollbildmodus betrachten und es dann aufklappen, wird es wieder in die Mitte zurückversetzt . Aber das bin nur ich Das musst du nicht tun. 5. Polieren der Benutzeroberfläche: Okay, die Dinge sehen ziemlich gut aus. Ich werde jetzt eine Funktion erstellen, die dabei hilft, Variablen zu verfolgen , die entweder auf wahr oder falsch gesetzt sind, je nachdem, wie Sie Ihre Szene eingerichtet haben, und Sie möchten sich keine Gedanken darüber machen müssen , ob bestimmte Dinge aktiviert sind, wie zum Beispiel ein Kontrollkästchen im Vollbildmodus, wenn Sie Ihr Spiel starten. Also werde ich eine Funktion namens „Variablen prüfen“ erstellen. Ich werde Zugang zum Fenster bekommen. Weil wir das für diesen eine Menge brauchen werden. Ich werde auch Zugriff auf den Modus bekommen , den wir gerade eingestellt haben. Also werde ich den Fensterpunkt „Modus abrufen“ unterstreichen. Und wir werden hier einfach abfragen, ob der Modus dem Fenster-Punktmodus im Vollbildmodus entspricht Fenster-Punktmodus im Vollbildmodus Wir werden das Kontrollkästchen so einstellen , dass es ohne das Signal umgeschaltet wird Wir können also sagen, dass das Kontrollkästchen im Vollbildmodus gedrückt wurde kein Signal angezeigt wurde, und wir tippen einfach durch Okay, wenn wir jetzt hier reingehen und es so einstellen, dass es im Vollbildmodus startet, was ein ziemlich häufiger Parameter ist, wenn wir das Spiel starten, können wir sehen, dass das Kontrollkästchen aktiviert wird. Eigentlich nicht, weil ich wieder vergessen habe , diese Funktion zu einer Ready-Funktion hinzuzufügen. Also komme ich einfach wieder rein und füge sie der Ready-Funktion hinzu, und wir starten das Spiel. Okay, cool. Eine Sache, die wir meiner Meinung nach tun sollten, ist , wenn wir das Spiel starten und die Auflösungen hinzufügen Wenn das Fenster auf eine Größe in der Liste eingestellt ist, sollte es zuerst ausgewählt werden. Wir können hier also eine Variable namens aktuelle Auflösung erstellen hier also eine Variable namens aktuelle Auflösung und die Größe des Fensters abfragen. Also holen wir uns Window Dot Get SIE. Und das gibt einen Vektor zwei I zurück , den wir verwenden können, um sie mit diesen Auflösungen zu vergleichen , während wir sie durchgehen. Und wir müssen auch eine ID erstellen, um diese im Auge zu behalten. Dies ist ein optionaler Parameter der Anzeigenfunktion in der Optionsschaltfläche. Also gehen wir, Var-ID ist gleich Null. Und dann kommen wir zur Schaltfläche mit der Option Auflösung, Punkt Objekt hinzufügen, und wir fügen die zweite Parameter-ID Okay, während wir die Auflösungen durchgehen, werden wir prüfen, ob die aktuelle Auflösung mit einer dieser Auflösungen übereinstimmt Also gebe ich I ein. Auflösungen, eckige Klammer R entspricht der aktuellen Auflösung Dann wähle ich diese Option in unserer Optionsschaltfläche aus. Ich gebe die Optionsschaltfläche für die Auflösung und die Punktauswahl ein und gebe die ID ein. Und dann müssen wir daran denken, diese ID zu erhöhen. Und jetzt wirst du sehen, dass 1920 mal 1080 ausgewählt wurde, um das Spiel zu starten Eine weitere Sache, mit der ich zu kämpfen hatte, als ich daran gearbeitet habe, ist, dass das Etikett manchmal nicht aktualisiert wird, wenn Sie zwischen dem Vollbildmodus wechseln. Obwohl ich die Optionsschaltfläche habe , um eine Option auszuwählen wird sie einfach als falsch angezeigt und sie funktioniert nicht. Wenn Sie in den Vollbildmodus wechseln, möchten Sie natürlich in den Vollbildmodus wechseln, Sie möchten keine Auflösungsoption aus dieser Drop-Jon-Liste auswählen . Das wird nicht funktionieren. Also brauchen wir eine Funktion, um dieses Label irgendwie zu überschreiben. werden das nutzen, um den Leuten zu sagen, Wir werden das nutzen, um den Leuten zu sagen, um welche Auflösung es sich handelt. Wir können den Text also direkt auf diese Optionsschaltfläche setzen , und er wird einfach dort angezeigt. Und weißt du, wenn sie herunterfallen und es anders ist, ist das nicht das Schlimmste auf der Welt. Also werden wir das einfach tun. Und ich denke, das wird für die meisten Anwendungen viel besser funktionieren. Okay, die nächste Funktion, die wir hinzufügen möchten , ist eine kleine Hilfsfunktion , die uns hilft, den Text in unserem Dropdown-Feld festzulegen wenn wir zwischen Vollbild- und Fenstermodus wechseln Es wird also einfach „Text für Auflösung festlegen “ heißen, und wir werden eine Variable namens Auflösungstext erstellen eine Variable namens Auflösungstext , und das wird ein Log-Wert sein Es wird STR für Zeichenfolge sein, was die Funktion ist, die wir jetzt für Zeichenketten verwenden Inga Do vier, und es wird ungefähr sein, und es wird Get window dot Get size sein, und wir werden einfach das X aus der Größe des Fensters ermitteln. Holen Sie sich das Fenster dogtsiz dot X. Kopieren Sie diesen Code, damit wir ihn verwenden können Wir fügen X hinzu und folgen der Zeichenfolge getwindow dotgtz dot y. Okay . Danach stellen wir einfach Text der Optionsschaltflächen für die Auflösung auf Auf diese Weise können wir, wenn wir in den Vollbildmodus wechseln, einfach diesen Text einstellen. Es wird nicht wirklich ausgewählt, und wir werden und wir das ziemlich bald deaktivieren, glaube ich, wenn wir uns im Vollbildmodus befinden. Aber dazu gleich mehr. Okay, jetzt können wir diese Funktion aufrufen, wenn wir in den Vollbildmodus wechseln. Ich kopiere das und wir gehen in den Vollbildmodus. Ich werde hier sein. Ich werde das erledigen. Und Sie werden feststellen, dass es nicht immer funktioniert. Es ist wie eine andere Zahl. Und ich glaube, die Größe des Fensters wird gerade geändert , wenn ich diese Funktion aufrufe. Also werde ich einfach einen Timer erstellen, einen sehr kurzen Timer. Ich gebe Get tree, Punkt create Tr ein. Und es wird sehr kurz sein, etwa 0,05 Sekunden. Und ich werde die Timeout-Funktion hier verbinden. Ich nehme einfach das Timeout bei Punkt Connect und gebe den Namen der Funktion Auf diese Weise gibt es eine kleine Verzögerung, um dem Fenster Zeit zum Ändern der Größe zu geben Und ich fand, dass das wirklich gut funktioniert hat . Also lassen wir das noch einmal laufen. Und Sie können jetzt sehen, dass es genau so funktioniert, wie ich es mir wünsche. Wir sind wahrscheinlich besser dran. Siehst du, jetzt ist der Text darauf eingestellt und er hat tatsächlich eine andere Größe. Wir sind also besser dran , das als nur in die Vollbild-Option zu setzen, um es einfach am unteren Rand der Funktion zu platzieren , wo wir zwischen Vollbild und Fenster wechseln. Im nächsten Schritt verschiebe ich die Erstellungszeit von Gt Tree Dot an das Ende dieser Funktion, sodass sie aktualisiert wird , nachdem sie aufgerufen wurde, und die Auflösung korrekt ist , nachdem sie aufgerufen wurde, und die Auflösung korrekt Okay, jetzt können wir sehen, dass es anfängt, eine Auflösungsbezeichnung zu wählen , die tatsächlich korrekt ist, wenn wir minimieren , wenn wir zwischen Vollbild und Fenster wechseln, was viel netter ist Sie können quasi die Verzögerung zwischen dem Wechsel zum Vollbildmodus und dem Fenster sehen Vollbildmodus und dem Fenster dem der Text später aktualisiert wird Aber weißt du, das funktioniert. Machen wir uns nicht zu viele Gedanken darüber. Die Funktionalität ist da. Das Etikett ist für den Benutzer sinnvoll. wir müssen den Text aus irgendeinem Grund überschreiben Ich denke, wir müssen den Text aus irgendeinem Grund überschreiben, nur weil sich die Größe des Fensters langsamer ändert als der Funktionsaufruf 6. Vollbildauflösung – Die moderne Art: Okay, das nächste, was Ihnen auffallen wird , ist, dass ich offensichtlich in den Vollbildmodus gehe und die Fenstergröße nicht ändern kann Nun, in den alten Tagen, als ich ein kleines Kind war, als Sie die Auflösung geändert haben, die gesamte Auflösung Ihres Bildschirms So ist es nicht mehr. Das müssen wir nicht tun. Derzeit, so wie wir das Projekt eingerichtet haben, der Vollbildmodus automatisch entspricht der Vollbildmodus automatisch der Auflösung des Bildschirms, auf dem wir uns gerade befinden. Wir müssen also nicht wirklich Unterstützung für die Auflösung des Benutzerbildschirms hinzufügen . Solange wir unsere Benutzeroberfläche richtig eingerichtet haben , wird dies unterstützt. Und ich glaube, das ist meistens das Sprechen in drei D. Es ist ein bisschen anders, weil für die Art und Weise, wie Sie das Spiel eingerichtet haben, möglicherweise eine feste Auflösung erforderlich sein muss , besonders wenn Sie mit Px LT arbeiten. Das ist eine andere Konversation Aber für Three D willst du wirklich nur den Stretch-Modus deaktiviert lassen und behalten, es sei denn, du weißt schon, vielleicht machst du eine ganz bestimmte Sache wie eine PS One oder ein Aussehen im Nintendo 64-Stil. Aber wenn du nur ein normales Drei-D-Spiel machst, sind Stretch-Modus, Deaktivieren und Beibehalten der richtige Weg, und ich zeige dir, wie du die Auflösung deines Viewports reduzieren kannst , ohne die Benutzeroberfläche zu beeinträchtigen, wie es, du weißt schon, vor zehn Jahren war. Ich meine, auch heute noch machen das einige Spiele, aber das ist wirklich nicht nötig Wir können das umgehen und sie richtig gut machen. Und ehrlich gesagt sind es zwei Codezeilen. Also werden wir der Szene einen Slider hinzufügen. Ich komme zur Plus-Schaltfläche. Ich klicke einfach auf die Optionseinstellung , damit sie an der richtigen Stelle hinzugefügt wird. Ich gebe Slider ein. Wir wollen eine horizontale Folie. Natürlich könnte es eine vertikale Folie sein, es könnte ein Dropdown-Feld sein. Es könnten viele verschiedene Dinge sein, aber ich werde daraus eine Folie machen. Ich werde sie über das Kontrollkästchen für den Vollbildmodus ziehen über das Kontrollkästchen für den Vollbildmodus nur weil ich finde, dass es besser aussieht. Es ist sinnvoller , sich in der Nähe des Optionsfeldes für die Auflösung zu befinden , das wir gerade eingefügt haben. Okay, lassen Sie uns dazu etwas Text hinzufügen. Also werde ich eine HBox hinzufügen , damit sie gut ausgerichtet werden Ich lege den Slider in die HBox und benenne diese HBox in etwas wie Scale Box um , nur damit sie einen schönen Namen hat Lassen Sie uns also die Mindest- und Höchstwerte auf dieser Folie einrichten. Der Mindestwert wird 50 sein und der Höchstwert wird 200 sein. Ich werde den fünften Schritt machen. Jetzt muss der minimale Höchstwert 5.200 sein. Innerhalb von Gadot können Sie nichts weiter skalieren, es macht also keinen Sinn, es Es wird einfach standardmäßig auf diese Obergrenze und Untergrenze gesetzt Und ja, wir haben fünf Stufen, nur weil es sich ein bisschen besser anfühlt, wenn man rutscht, und wir wollen, dass es an Grenzen tickt Okay, also für das Layout, damit das in einem H-Feld funktioniert, müssen wir eine benutzerdefinierte Mindestgröße haben Und das ist in Pixeln, also mache ich meine auf 100 und vielleicht sogar auf 200, sodass sie einfach breiter ist, sodass es schöner ist, damit zu spielen, als dass die HBox sie aus irgendeinem Grund auf eine winzige Größe herunterskaliert Okay, ich mache den Wert 100. Das ist der Startwert. Das ist sinnvoll , weil wir mit einem hohen Maßstab beginnen. Ich werde diese Folie in Scale Sliner umbenennen. Und als Nächstes müssen wir etwas Text hinzufügen, damit wir wissen, was die Skala ist Wir werden hier auf den kleinen Plus-Button klicken. Ich tippe einfach ein Etikett ein. Wir fügen eine Bezeichnung hinzu, geben 100% ein und setzen dort einen Gedankenstrich ein, und es wird nur 1920 mal 1080 sein. Wir werden das per Code festlegen. Es ist einfach da, damit die Benutzeroberfläche so aussieht, wie sie aussieht, und wir sorgen dafür, dass sie gut aussieht. Ich gebe diesem Label einen Namen, weil wir es oft nachholen müssen. Wir nennen es das Waagenlabel. Und wir werden das jedes Mal aktualisieren, wenn wir den Slider ändern. Okay, das Signal, das wir verbinden wollen, ist das Signal zur Wertänderung. Und das wird wirklich einfach sein. Die Funktionalität wird ziemlich einfach einzurichten sein, und wir werden einige UI-Elemente hinzufügen , damit sie gut aussieht. also der Wert des Schiebereglers geändert wurde, erhalten wir die Auflösungsskala. Es muss ein Prozentwert sein. Also nehmen wir den Wert von unserem Schieberegler und teilen ihn durch 100. Sie könnten Ihren Schieberegler natürlich auf Dezimalstellen einstellen , und das wäre auch in Ordnung. Aber das habe ich nicht getan. Also stell sicher, dass es ein Float ist. Ich habe festgestellt, dass das, was ich in den zukünftigen Teilen dieses Videos mache, einfach besser funktioniert. Also werden wir eine Variable erstellen, um den Auflösungstext zu aktualisieren. Ich gehe tatsächlich zurück zur Auflösungstextfunktion und nehme genau das Gleiche. Wir werden hier ein paar Dinge hinzufügen müssen. Wir müssen es jedoch mit der Auflösungsskala multiplizieren , denn das ist im Wesentlichen das, was wir tun. Also mache ich das sowohl auf dem X als auch auf dem Y. Und wir müssen das auch abrunden , weil wir ein Dutzend mehr Orte bekommen werden und das wollen wir nicht wirklich für unsere Benutzeroberfläche Ich runde das ab, sodass wir nur ganze Zahlen bekommen und es besser lesbar aussieht Es wird nicht so genau sein, aber keine große Sache. Wir müssen uns also Zugang zu diesem Waagenlabel verschaffen. Ich ziehe das per Drag & Drop nach oben, sodass wir es haben. Und ich werde auch die Folie benötigen. Ich werde das reinziehen und das Chaos ein bisschen aufräumen. Also gebe ich scallabel-Punkt-Set-Text und der Text wird eine Zeichenfolge sein, und es wird der Wert sein , der einfach irgendwo zwischen 50 und 200 liegen wird Welches ist das da. Und dann füge ich das Prozentzeichen und einen Gedankenstrich und ein Leerzeichen hinzu, und dann füge ich den Auflösungstext hinzu , den wir zuvor eingerichtet haben. Deshalb zeige ich mit dem Schieberegler die Auflösung und den Wert der Skala an. Und dann brauchen wir nur Punktsatz des Viewports, der auf drei D-Skala skaliert, und es wird ein Float benötigt und wir geben die Auflösungsskala weiter, die wir zu Beginn dieser Funktion festgelegt haben Und das ist alles, was Sie tun müssen. Wir können das jetzt ausführen und Sie können beginnen, es in Aktion zu sehen. Interessanterweise fand ich es etwas schwierig, das für dieses spezielle Modell, das wir haben, zu erkennen Man kann anfangen, die gezackten Kanten und ähnliches auf dieser 50-%-Skala zu erkennen , 960 mal 4540, was der tatsächlichen Auflösung des Viewpots entspricht Und wie Sie sehen können, hat das keinen Einfluss auf die Benutzeroberfläche, was einfach unglaublich ist Das ist wirklich, wirklich tolles Zeug, wenn Sie drei Tage im Vollbildmodus laufen. Sie benötigen kein Drop-down-Menü, wie wir es in früheren Videos gesehen haben. Ich kehre zum Skript zurück und deaktiviere die Optionsschaltfläche für die Auflösung, wenn wir uns im Vollbildmodus befinden. Wenn Sie sich also im Vollbildmodus befinden, das nicht geändert werden. Stattdessen müssen Sie den Schieberegler verwenden, um Ihre Auflösung zu ändern. Also gehe ich hoch und überprüfe das auch im Vollbildmodus im I-Modus und setze es auf true Auf diese Weise werden wir die Leute nicht verwirren, wenn sie damit arbeiten Wenn sie sich im Fenstermodus befinden, können sie damit schnell eine Auflösung festlegen , die sie vielleicht Wenn Sie sich im Vollbildmodus befinden, möchten wir, dass Sie diesen Modus verwenden. 7. Hinzufügen von FSR zu deinem Projekt: Die nächste wichtige Sache , die wir hinzufügen möchten, ist die Auswahl des gewünschten Skalars Gadot hat eine bilineare Skalierung, die Sie schon einmal gesehen haben, das ist das Zeug mit den Und Sie haben auch die Möglichkeit, AMD FSR 2.2, 1.1 hinzuzufügen AMD FSR Wie all diese anderen Skalare werden wir AMD FSR hinzufügen Es ist ein Open-Source-Skalar, ähnlich wie DLSS. Sehr mächtiges Zeug. Sieht toll aus. Du wirst es in einer Sekunde sehen. Wenn du einen Drei-D-Gaming-Gdo machst, musst du das unbedingt in dein Spiel integrieren Also werden wir eine Optionsschaltfläche erstellen. Ich werde das Skalar nennen. Und im Gegensatz zu dem anderen , den wir mit Code festgelegt haben, müssen wir diesen tatsächlich machen vielleicht könnten wir es mit Code machen Ich weiß es nicht. Es spielt keine Rolle. Das erste Element wird also einfach Skalar genannt. Ich werde das so einstellen, dass es und das Trennzeichen deaktiviert werden. Und tatsächlich werde ich das in dem ausgewählten Feld hier auf Null setzen, was die Option für Skalar ist Das wird also einfach gesetzt, wenn das Spiel startet, und das andere wird bilinear genannt, und ich füge hier ein Element hinzu und es wird AMD FSR, 2.2 heißen Okay. Und sie werden nur Ausweis eins und zwei sein. Wir werden das ausgewählte Signalelement verbinden. Und für diesen passen wir einfach den Index an. Wir wissen, dass es nur zwei gibt, also wird es nett und einfach sein. Ich gebe Match Index und die Funktion ist wirklich einfach. Wir werden zunächst eine Kopie des Viewports erstellen, nur um die Dinge etwas übersichtlicher zu gestalten, und ich gebe Underscore Viewport Dot Set Scaling Three D Mode ein und ich gebe Underscore Viewport Dot Set Scaling Viewport Dot Set Scaling Und Sie können jetzt sehen, dass ich ein paar Optionen zur Auswahl habe , und sie sind bei und sie sind Okay, aber wir können die Punktskalierung des Viewports mit drei D-Modus (FSR) und bilinear verknüpfen Punktskalierung des Viewports mit drei D-Modus (FSR Vergewissern Sie sich nur, dass Sie die richtige Option für die richtige Option ausgewählt haben für die richtige Option ausgewählt Also Nummer eins für mich ist bilinear. Also, wenn ich im Index auf eins stoße, möchte ich es darauf einstellen Und darunter mache ich zwei zur nächsten Bedingung, und wir machen genau den gleichen Code, aber wir ändern ihn auf AMD FSR zwei Okay, jetzt können wir das Spiel starten. Sie können sehen, dass Sie es jetzt auf AMD FSR auf 50% senken Sie können sofort den Unterschied zwischen diesen beiden erkennen den Unterschied zwischen diesen beiden AMD FSI sieht so viel besser aus als bilinear. Und hier und da gibt es ein paar Artefakte. Sie können das sehen, wenn die Straßenbahn vorfährt. Es gibt ein paar seltsame Artefakte, vor allem, wenn du es dort ansiehst , wo die Laternen sind oder wenn es dort durchfährt Aber davon abgesehen ist es großartig. Sieht so gut aus. Ich kann sehen, dass es einen großen Bildverlust gab , als ich mit der Kamera um diese Ecke kam, und ich weiß nicht, ob das der Szene oder am FSR liegt Ich bin mir nicht ganz sicher. Ehrlich gesagt , ich habe es wieder auf 50% reduziert und es hat wirklich gut funktioniert. Eine andere Sache ist, dass Sie, wenn Sie AMD FSR verwenden, laut Dokumentation auf vier bestimmte Optionen beschränken sollten auf vier bestimmte Optionen Wir werden diese jetzt einrichten. Ich glaube, das ist der Grund, warum ich Frame-Drops bekommen weil ich mich nicht für eine dieser drei Optionen entschieden habe. Sie können sehen, dass Sie eine ultrahochwertige Qualität mit ausgewogener Leistung haben . Dies sind also die Optionen , auf die Sie es einstellen müssen. Was wir also tun müssen, ist, wenn sich jemand für den AMD FSR-Skalar entscheidet, wir müssen diesen Schieberegler sperren und einfach ein Dropdown-Feld für diese Also werde ich eine Optionsschaltfläche erstellen. Ich werde es unter den Skalar legen und ich werde FSR-Optionen einfügen Der Grund, warum wir das nicht für den bilinearen Modus tun wollen , ist, dass man damit superskalieren kann Sie können also die Auflösung verdoppeln, aber mit AMD FSR ist das nicht Also genau das Gleiche wie zuvor, wir werden eine Optionsschaltfläche erstellen Wir werden eine Reihe von Artikeln dafür erstellen. Wir werden das erste erstellen, wir machen es zu FSR-Optionen, deaktiviertes Trennzeichen setzen wir das ausgewählte Objekt auf Nummer Null. Das ist also beim Start ausgewählt , wir kommen und wir werden diese eingeben Wir haben Leistung. Wir sind ausgewogen. Wir haben Qualität und wir haben Ultraqualität. Und Sie können sehen, dass ich ein bisschen umgedreht bin, wo ich die hinstellen soll. Es war eine lange Aufnahme. Es ist mein erster Tag aus dem Urlaub, Leute. Das ist es nicht wirklich. Ausgewogene Leistung, hochwertige Qualität Ich war wirklich verwirrt. Ausgewogenes Gleichgewicht. Ja, wir haben zwei da, Bruder. Wirf den einfach da rein. Okay, gut. Okay, das sind also die vier, die du willst. Also werden wir es so machen, dass es nur angezeigt wenn wir die FSR-Optionen verwenden Also werde ich dort sehr schnell eine Variable erstellen , einfach klicken und sie hineinziehen Und wenn wir den FSR-Skalar aus den Skalaroptionen auswählen , werden wir ihn sichtbar machen Also machen wir Fsroptions Dot Show und machen genau das Gegenteil, wenn wir bilinear wählen. Wir werden diese Optionen ausblenden, weil wir weil Wir werden das überprüfen, damit Sie sehen können, wie das aussieht. Wenn wir bilinear wählen, werden wir hier die FSI-Optionen und all diese Dinge sehen Und Sie können sehen, wie dieser Frame bei 100% FSI Probleme hat. Das sollte nicht so gemacht werden, deshalb müssen wir diese Optionen einführen Die andere Sache, die wir tun werden, ist der Skalierungsschieberegler das nur im bilinearen Modus bearbeitbar macht das nur im bilinearen Modus bearbeitbar Wir haben also den Skalenschieberegler. Die Funktion, die wir verwenden müssen, heißt „editierbar Es ist aus irgendeinem Grund exklusiv für Ranger . Ich weiß nicht warum Skalieren Sie den Punktsatz des Schiebereglers, editierbar, wahr für bilinear und falsch für FSR. Wir wollen es nicht benutzen Okay. Also lass uns sehen, wie das funktioniert. Wir können den Skalar verwenden. Wenn wir zur FSR gehen, können wir das nicht. Großartig. Genau so wollen wir, dass es aussieht. Okay. Wählen Sie „ Signal verbinden“ für diese FSR-Optionen Wir verbinden das ausgewählte Objekt mit dem Skript , das sich direkt unter diesem befindet Und wir werden genau das Gleiche tun. Wir werden einfach einen Match-Index erstellen. Ich werde einfach sagen , dass ich faul bin, und diesmal sind es nur 1-4. Ich werde hier Pass eingeben , damit ich die Zahlen abtippen kann. Und praktischerweise haben wir bereits etwas, das den Maßstab vorgibt. Also werde ich das benutzen. Also bei der Änderung des skalaren Slider-Werts ist das die Funktion , die aus dem Signal erzeugt wurde , das wir für den Slider angeschlossen haben Wir können das einfach recyceln und einfach den gewünschten Wert weitergeben Und das werde ich kopieren. Vergewissere dich, dass es ein Float ist. Der nächste wird 59 sein. Der nächste wird 67 sein. Und der letzte wird 77 sein. Das sind also die vier Werte, die AMD empfiehlt, und wir werden uns daran halten. Stellen Sie also sicher, dass sie mit der Dokumentation übereinstimmen. Okay, lassen Sie uns das jetzt ausführen. Okay, wir wählen AMD FSR und wir wählen Leistung Ordnung. Und das ist auf 50% gesunken. Sie können sehen, dass die Frames einfach wieder normal werden und gut funktionieren. Es hat eine Ultraqualität. Sieht toll aus. Ich bin wirklich beeindruckt, wie es aussieht, und ja, man kann die Verbesserung zwischen Balance und Leistung und all dem sehen . kann man definitiv sehen, wenn es um Ultraqualität geht. Für mich persönlich ist es nicht zu unterscheiden von einem hundertprozentigen Bilinear einem hundertprozentigen Bilinear Immer noch der Frame Drop um diese Ecke. Ich weiß nicht, ob ich denke, dass das spezifisch für dieses Projekt ist. Dieses Mesh habe ich gerade aus dem Internet heruntergeladen. Ich weiß nicht, wie gut es optimiert ist. Schauen wir uns die FPS dort an und Sie können sehen, dass es ein großer Rückgang wenn ich um die Ecke komme. Ich weiß es nicht. Das ist alles, was ich sagen werde. Ich möchte auch darauf hinweisen, dass es viel schlechter aussieht als die Aufnahme, weil ich auch meine GPU zum Aufnehmen verwende. Ich denke also, da es für den Aufnahme-Gadot immer anstrengender wird , dieses Projekt durchzuführen, lasse ich bei meiner Aufnahme auch Frames fallen Also sieht es nicht so schlecht aus. 8. V Sync hinzufügen: Als Nächstes fügen wir V Sync hinzu , sodass wir diese Option haben. Es wird wichtig sein, wenn es um Skalierung und all das FPS-Zeug geht , mit dem es zu tun hat, besonders wenn ich es demonstriere. Im Moment ist es also meistens vielleicht ein Demonstrationstool. Aber ich werde ein Etikett hinzufügen, auf dem FBS angezeigt wird. Das ist also wirklich einfach. Also musst du das nicht tun. Das ist nur, damit ihr sehen könnt, während ich das Spiel starte , die Art von FBS, die wir auf dem Bildschirm sehen Das ist also nicht etikettiert. Ich nenne es FPS. Ich gehe zu beliebigen Position, was in Ordnung ist. Und ich füge dem ein Skript hinzu, damit wir die FPS einstellen können. Es ist nur eine einzige Zeile. Und in der Prozessfunktion hier rufe ich einfach set text auf. Und die genaue Funktion, die wir verwenden wollen, ist Engine Dot Get Frames per Second. Und das ist es. Es werden nur die Bilder pro Sekunde angezeigt. Stellen Sie sicher, dass Sie das in eine Zeichenkettenfunktion einschließen. Machen Sie die Klammer zu und wir können gut laufen. Das ist alles, was Sie für einen Frame-Counter benötigen, ein bisschen Bonus-Tutorial Und Sie können dort sehen, dass 59 steht, was ziemlich genau ist. Ordnung. Und wenn wir alles zweimal skalieren, läuft es immer noch bei 59. Wenn wir den AMD FSR einsetzen, ändern wir den Scaler und all diese Dinge Wenn wir hier um die Ecke gehen, können wir sehen, wie die Frames fallen, all das gute Zeug Ich versuche nur herauszufinden, ob es mit AMD FSR zu tun hat, denn jedes Mal, wenn ich um diese Ecke gekommen bin, sind wir vorbeigekommen Und Sie können sehen, dass das tatsächlich ziemlich gut gelaufen ist. Also ich weiß es nicht. Vielleicht hat es etwas mit AMD zu tun. Bei 50% läuft es okay. Diese Straßenbahn ist im Grunde Krebs für die Frames. D. Okay, lassen Sie uns etwas V-Sync hinzufügen. Es wird nur eine weitere Umschalttaste sein, eine Checkbox, ich sollte sagen, eine weitere Checkbox-Schaltfläche Also werden wir diese Checkbox hinzufügen. Wir stellen sicher, dass es hier ein V-Feld gibt, und ich benenne es einfach um in Vsc stink V-Sync-Checkbox, V-Sync-Checkbox, und ich gebe im Text dafür V-Sync aktiviert Okay, also in den umgeschalteten Optionen verbinden wir das mit unserem Optioneneinstellungsskript Und Sie haben tatsächlich vier Optionen für V-Sync, aber ich werde diesen Schalter einfach so einstellen, dass er ein- oder ausgeschaltet Also sage ich, ich habe aktiviert, und wir geben Display Server Dot Window set V Sync-Modus Und Sie können diese Optionen hier sehen, Sie haben Adaptive deaktiviert und Postfach Wir werden vorerst nur aktiviert und deaktiviert verwenden. Sie könnten Ihren Benutzern jedoch ein Dropdown-Feld oder etwas Ähnliches zur Verfügung stellen, aber sie müssen verstehen, was diese Optionen sind. Ich denke, es ist besser , es einfach ein- oder auszuschalten, aber du kannst machen, was du willst. Okay, also wir haben V-Sync und dann natürlich für die anderen deaktiviert. Wir möchten zu der Funktion für überprüfte Variablen zurückkehren , die wir zu Beginn eingerichtet haben. Und wir wollen auch überprüfen, ob Vsyncmde aktiviert ist. Wir können also Folgendes eingeben: I display server dot Get Vsync mode entspricht display server dot vsncEnable Und dann können wir dieses Kontrollkästchen einfach so einstellen, dass es umgeschaltet wird. Stellen Sie sicher , dass wir diese Variable haben, damit wir sie per Drag & Drop dorthin ziehen können Dann können wir gehen Vsncheckbox Punkt setzen Pres Kein Signal ist gleich wahr Okay, so nett und einfach da. Wir werden das Spiel ausführen. sehen, dass es angekreuzt ist und ich deaktiviere es, und Sie können sehen, wie die Frames auf 161 steigen Sie können sehen, dass es angekreuzt ist und ich deaktiviere es, und Sie können sehen, wie die Frames auf 161 steigen. Ich verdopple die Skala Sie können sehen, wie sie auf 105 sinken, und ich werde sie auf 50% senken, und Sie können sehen, wie sie springen. Sie ändern sich überhaupt nicht. Davon weiß ich eigentlich nichts . Mit diesem Netz stimmt definitiv etwas nicht. Es scheint nicht wirklich wichtig zu sein, in welcher Größenordnung ich es herausgebracht habe. Es läuft immer noch mit so ziemlich dem gleichen AMD FSR, dem gleichen Deal Es beginnt hoch bei 300, fällt aber auf etwa 69. Ich weiß es nicht. Ich weiß eigentlich nicht, was mit diesem Netz los ist, aber Sie können die Unterschiede sehen , die hier irgendwie zu passieren scheinen. Wir checken es zurück zu VSink und es ist wieder bei 59 Frames, und dann erscheint es wieder, wenn Sie es auf 161 deaktivieren , aber dann ist es Und es tuckerte wieder richtig um die Ecke. Sein. Mach es, es ist überall, aber es ist trotzdem sehr cool. Ich denke definitiv, dass du diese Optionen zu jedem Spiel hinzufügen musst , das du auslieferst. Es ist eine wirklich nette Sache , diese Ihren Benutzern zur Verfügung zu stellen. 9. Aufräumen: Eine Sache, die Ihnen auffallen wird, ist , dass Sie es mit diesem aktuellen Setup in den Fenstermodus versetzen und es auf 800 mal 600 reduzieren könnten , was so ziemlich der kleinste Bildschirm ist , den Sie beim Spielen eines Spiels erstellen würden, und dann können Sie auch um 50% verkleinern Sie können hier also eine wirklich kleine Auflösung erreichen. Ich meine, wenn jemand eine Kartoffel als Computer hat , dann ist es vielleicht möglich. Das willst du vielleicht. Vielleicht willst du es nicht. Sie können es auch deaktivieren. Sie können den Scaler deaktivieren , wenn Sie sich im Fenstermodus befinden. Es liegt ganz bei Ihnen, welche Funktionen Sie dort haben. Du weißt, was zu tun ist. Okay, eine Sache, die Ihnen vielleicht aufgefallen ist, ist, dass wir, wenn wir vom Vollbildmodus in den Fenstermodus wechseln, den Schieberegler und die Auflösungsbezeichnung hier nicht aktualisieren, das ist ein bisschen verwirrend Nun, ich denke, die Skala ist immer noch korrekt. Wenn wir also zum Vollbildmodus wechseln, sind wir immer noch bei 50% Sie können hier immer noch die Zacken an den Rändern sehen Aber der Text mit der tatsächlichen Skalenauflösung ist falsch. Ich denke, wir sollten es bei jeder Änderung der Fenstergröße einfach auf 100 zurücksetzen Änderung der Fenstergröße weil wir nicht wirklich wissen, was die Spieler versuchen zu tun, und es ist wahrscheinlich etwas verwirrend, wenn sie versuchen, Frames zu maximieren oder so. Ich weiß es nicht wirklich, aber das werde ich tun, weil es auch sehr einfach ist. Der einfachste Weg, das zu tun, besteht also darin, sich auf den Text der festgelegten Entschließung zu konzentrieren, und wir müssen zwei anrufen. Ich zeige dir das gleich, damit wir uns einfach den Skalenregler holen können. Und wir können einen Wert festlegen. Wir können Sollwert ohne Signal oder Sollwert nennen. Ich werde euch für eine Sekunde den Sollwert zeigen, denn laut der Dokumentation werde ich darauf hinweisen, dass der übergebene Wert ein Float ist. Andernfalls funktioniert diese Funktion nicht. Unter dem Bereich steht der aktuelle Wert des Bereichs. Die Änderung dieser Eigenschaft auch per Code löst ein Wertänderungssignal aus. Nun könnten wir uns vorstellen, dass das Signal der Skalenschieberegler für einen geänderten Wert auf diese Methode übertragen würde , und sie würde all die Dinge erledigen, die wir tun mussten, nämlich die Auflösungsskala aktualisieren. Also habe ich hier einen Ausdruck. Ich werde einfach den Wert ausdrucken. Die andere Sache, bevor wir das Spiel starten, ist also, das gewählte Optionsfeld rückgängig Wir werden auch die Auflösungsskala zurücksetzen. Deshalb werde ich auch hier Text mit festgelegter Auflösung nennen. An diesem Punkt sollten wir also in jeder Phase, in der wir die Bildschirmgröße ändern, diesen Schieberegler aktualisieren und ein Signal auslösen Ich lasse das laufen. Ich springe im Vollbildmodus heraus. Also sollten wir damit rechnen, dass ich es jedes Mal ausdrucke, wenn wir das ändern, aber das tun wir nicht. Ich weiß nicht, was es ist. Wenn die Signale nicht ausgelöst werden oder es ein Bug ist, bin ich mir nicht sicher, ob ich das genauer untersuchen muss. Aber für diese spezielle Lektion werde ich, wenn ich mich orientieren kann, wenn ich mich orientieren kann, den Wert so ändern, dass kein Signal gesetzt wird, nur um das zukunftssicher zu machen, damit wir es nicht zweimal aufrufen, wenn das irgendwann behoben wird oder ich vielleicht etwas falsch verstehe Ich weiß es nicht. Aber wir können uns einfach die Funktion schnappen und sie direkt aufrufen. Ich habe auch 100 bestanden. Also, wenn du glaubst zu wissen warum, lass es mich wissen. Also lassen wir das nochmal laufen. Und wir springen einfach zu Windows Word und Sie können beginnen, diese Ausdrucke zu sehen, also funktioniert es tatsächlich, und wir stellen hier die korrekten Auflösungsdetails Und vielleicht übertreibe ich es hier mit der Kennzeichnung. Das ist nur ein Beispiel. Also, wenn ihr dieses Zeug ändern wollt, fühlt euch frei. Es liegt ganz bei dir. Leute kennen jetzt die Funktionen, sodass Sie Ihre Benutzeroberfläche so organisieren können, wie Sie es möchten. BS. Also das ist eine seltsame Eigenart, aber wir haben es zum Laufen Lass uns mit der nächsten Sache weitermachen, die ich euch zeigen möchte. 10. Bildschirmumschaltung: Okay, das nächste, woran wir anfangen wollen zu arbeiten, ist die Möglichkeit Bildschirmen zu wechseln , jetzt, wo all diese anderen Dinge funktionieren. Also werden wir hier eine Optionsschaltfläche hinzufügen, und es wird ein ähnliches Setup wie zuvor haben. Also benenne ich diese Optionsschaltfläche in die Bildschirmauswahl um, und wir springen in das Skript und erstellen dafür eine Variable Also ziehe ich das einfach per Drag & Control Drop und wir kommen ganz nach unten und erstellen eine Funktion Und wir nennen diese Funktion G-Screens. Und was wir tatsächlich tun können, wir können eine Variable namens screens erstellen , und wir rufen den Display-Server und verwenden die Funktion G screen count. Nun, das wird nur eine Ganzzahl zurückgeben, aber wir werden das in einer Schleife durchgehen. Für S in Bildschirmen greifen wir also zur Bildschirmauswahl und verwenden dort die Funktion „ Objekt hinzufügen Und was wir tun werden, ist eine benutzerdefinierte Zeichenfolge mit dem Wort Bildschirm, dem Wort Bildschirm Semikolon und einem Leerzeichen einzugeben, und dann fügen wir auch Und das sind dann nur STR-Klammern S. Also wird es als Bildschirm Null oder Bildschirm Eins angezeigt Es gibt keine Möglichkeit für uns, den Namen des Bildschirms zu erfahren , also lassen wir uns einfach darauf ein. Als Nächstes müssen wir das Signal anschließen, damit wir zur Bildschirmauswahl kommen Wir klicken auf Node. Wir verbinden das Signal „Objekt ausgewählt“ erneut und stellen sicher, dass die Funktion „Bildschirme abrufen“ in der Bereitschaftsfunktion aufgerufen Funktion „Bildschirme abrufen“ in der Bereitschaftsfunktion in diesem Signal Sobald wir einen Bildschirm ausgewählt haben, wird. Sobald wir einen Bildschirm ausgewählt haben, erhalten wir in diesem Signal Zugriff auf das Fenster, also geben wir den Unterstrich Fenster und gehen dann gleich zu Fenster holen Und dann müssen wir auch auf den Modus zugreifen, denn das wird wichtig sein, wenn wir uns im Vollbildmodus befinden, um zwischen den Bildschirmen zu wechseln, die ich gefunden habe. Also werden wir Zugriff auf den Modus bekommen. Der Va-Modus entspricht dem Unterstrich-Fensterpunkt „Modus abrufen“. Und sobald wir das haben, können wir den Fenstermodus quasi auf Fenstermodus setzen Ich werde gleich erklären, warum. Also setzen wir den Modus auf Fenstermodus und dann wechseln wir zwischen den Bildschirmen, also nennen wir Underscoe Window Dot Set Und es will einen Index, wir können den Index einfach über das Optionsfeld übergeben Es wird genauso sein wie auf dem Bildschirm. Und dann fragen wir den ursprünglichen Modus ab, den wir hatten, um zu sehen, ob er im Vollbildmodus war. Wenn der Modus also dem Fensterpunktmodus im Vollbildmodus entspricht , stellen wir den Modus ein. Wir setzen den Windows-Modus wieder auf Vollbild zurück. Der Grund, warum ich das getan habe, ist , dass ich festgestellt habe, , zumindest für mich mit meiner Desktop-Umgebung Ändern von Bildschirmen im Vollbildmodus nicht funktioniert, zumindest für mich mit meiner Desktop-Umgebung. Wenn Sie also in den Fenstermodus wechseln, wechseln Sie zwischen den Bildschirmen und kehren dann zum Vollbildmodus zurück. Es flackert ein bisschen, aber es geht ziemlich schnell. Man merkt es also nicht wirklich, was ziemlich gut ist. Also können wir das testen und es in Aktion sehen. Und ich wähle den nächsten Bildschirm, und ich musste meine Aufnahme beenden und ändern, damit ich beide Bildschirme aufnehmen konnte , sodass Sie genau das in Aktion sehen können . Es ist also Vollbildmodus. Sie klicken auf den nächsten Bildschirm und er wird einfach auf dem nächsten angezeigt, keine Probleme. Nur zur Verdeutlichung, Bildschirm Null ist mein Bildschirm auf der rechten Seite. Ich weiß, das ist ein bisschen seltsam, aber die Zahlen sind korrekt. 11. Überprüfung und Überlegungen: Eine andere Szene, die ich erstellt habe ist so ziemlich ein Raumscan eines Raums. Ich habe den Link unten angegeben. Ich muss Kredit geben , weil es CC BY ist. Aber ich versuche zu sagen, dass es kein sehr effizientes Mash ist, denn Scans sind nicht gut für Spiele Sie müssen gereinigt werden. Es ist also eine gute Möglichkeit, die Anzahl der Frames zu demonstrieren , die Sie zurückgewinnen können. Meine GPU ist also nicht so träge und erzeugt immer noch nur 100 Bilder bei einer Auflösung von 50% Ich kann bis zu 200% skalieren. Und wenn vSNC deaktiviert ist, erhalte ich 40 Frames Also, weißt du, wenn jemand beschließt, etwas so Effizientes zu verwenden, oder, du weißt schon , das Spiel, da ist viel los, Vier-K-Auflösung, du bekommst nur 45 Bilder Du willst 60 haben, also wechselst du zu AMD FSR, und du wechselst zu Ultraqualität, und du kannst alles hochskalieren Natürlich werden es bei mir nicht vier K sein, weil ich nur einen 1080-teiligen Bildschirm habe, aber man sieht sofort die Qualität und die Frames sind sehr hoch Ich persönlich denke, dass V-Sync mit AMD FSR alles eine Million Mal besser macht, besonders bei diesen Einstellungen mit niedriger Qualität Ich werde etwas auf dem Bildschirm haben, wo ich das mit der Third-Person-Controller-Demo gemacht habe , die im Lieferumfang von Gadot enthalten ist, sodass es ein bisschen mehr Action auf dem Bildschirm gibt und ich das zu 100% feststellen kann, wenn VSNC im Performance-Modus aktiviert ist. AMD FSR 2.2 ist zu 100% spielbar. Wenn Sie zum Beispiel einen Laptop haben, der nicht über eine spezielle Karte verfügt, oder wenn Sie ein Steamdeck verwenden und versuchen, etwas zu erledigen , das für dieses Gerät besonders belastend ist, ist es obligatorisch, dies den Benutzern zur Verfügung zu stellen Sie müssen diese Einstellung verfügbar machen. Das werde ich jetzt einfach sagen. Ähm, zumindest glaube ich das. Das ist eine Auflösung von 50%. Also 960 mal 540. Und es ist so schwer, den Unterschied zu erkennen. Das ist natürlich bilinear, und wir werden es wieder auf 100 reduzieren Und es ist erstaunlich, welchen Unterschied Sie hier sehen werden Und so, ich weiß es nicht. Ich weiß nicht, was ich sagen soll. Leistung. Ausgewogen. Es ist so gut. Und man kann es immer noch in Action-Szenen in Bewegung erkennen. Diese Kamera bewegt sich also ziemlich langsam. Es ist schwer, den Unterschied zu erkennen. Es ist ein gutes Beispiel dafür, wie leistungsfähig die Software ist, aber es ist kein gutes das Spielerlebnis aussehen wird, weil , weißt du, bei vielen Spielen viel auf dem Bildschirm passieren wird. Aber es ist immer noch erstaunlich, dass wir dies unseren Spielern mit sehr geringem Aufwand zur Verfügung stellen, völlig minimal. Das ist also großartig. 12. Schlussbemerkung: Ordnung, Leute. Das ist es. Lassen Sie mich wissen, wenn Sie Fragen haben. Ich bin unten im Discord. Ich bin da, wenn du Hilfe brauchst Es gibt dort eine Menge anderer Leute , die dir helfen können. Und wir sind immer bemüht, über den Hund und die Spielentwicklung im Allgemeinen zu chatten . Das ist alles für diesen, Leute. Ich bin Oak von Shaft Games und wir sehen uns beim nächsten Mal.