← Änderungsprotokoll
Täglich2026-06-20

Vollständig zweisprachige Benutzeroberfläche + vollständige Devtools-Panels

An diesem Tag erfolgte eine umfassende Internationalisierung: Die gesamte Studiooberfläche wird zweisprachig, mit einem Klick umschaltbar, live über Windows hinweg synchronisiert, wobei auch der Editor vollständig zweisprachig ist; Die Konsolen-/Netzwerk-/Log-Devtools-Panels haben sich von leeren Shells zu echten Funktionen entwickelt. UI-Stapelung, Formularkontrast und Titel zur Barrierefreiheit wurden begradigt; Der mehrtägige Richtungsschattenfehler der Engine wurde endlich behoben; Spiellogik erlangte deklarative Systemplanung; und Engine-Ressourcen erhielten einen disziplinierten Lebenszyklus und eine Fehlerisolierung.

Sich der Welt stellen und sich dem Debuggen stellen

An diesem Tag gab es zwei Richtungen. Eines nach außen: die vollständige Zweisprachigkeit der gesamten Benutzeroberfläche, damit sie nicht mehr nur chinesischen Benutzern dient, sondern der ganzen Welt zugänglich ist – ein notwendiger Schritt, damit ein Produkt ein breiteres Publikum erreicht. Das andere nach innen: Vervollständigen der Devtools, damit Entwickler, die ihre eigenen Spiele debuggen, die Konsolenausgabe, Netzwerkanfragen und Laufzeitprotokolle klar sehen können – die Gewissheit, „sehen zu können, was Sie tun“. Außen und Innen scheinen keinen Zusammenhang zu haben, aber der Kern ist derselbe: Beide beseitigen die Barriere „kann nicht sehen/nicht verstehen“. Eine Sprachbarriere macht die Benutzeroberfläche zu einer Mauer; Keine Möglichkeit zum Debuggen macht ein Problem zu einem Nebel. Dieser Tag hat beide Arten von Barrieren gleichzeitig niedergerissen. In der Zwischenzeit hat die Engine das mehrtägige Schattenproblem an der Wurzel behoben, eine geordnetere Methode zur Planung der Spiellogik hinzugefügt und strengere Regeln für die eigene Ressourcenverwaltung festgelegt. Nach außen zugänglicher, nach innen transparenter, nach unten fester – das sind die drei Facetten des Tages.

Schalten Sie die gesamte Benutzeroberfläche mit einem Klick zwischen Englisch und Chinesisch um

An diesem Tag wurde eine gründliche Internationalisierung durchgeführt, und zwar sorgfältig. Schritt eins war ein leichter mehrsprachiger Kern: Englisch als Basisquelle (alle Texte sind auf Englisch maßgeblich), Chinesisch als Overlay (wo vorhanden Englisch ersetzen), jederzeit umschaltbar. Schritt zwei migrierte die gesamte Schnittstelle Datei für Datei in Stapeln in dieses System – obere Leiste, Dashboard, Chat-Panel, Einstellungsschublade, Seitenleiste, die verschiedenen Umschalter, Dutzende Panels und Komponenten, keines wurde weggelassen. Warum „Datei für Datei“ und nicht alles auf einmal? Weil die fest codierte Kopie über Hunderte oder Tausende von Stellen in der Benutzeroberfläche verstreut ist und nur beim Durchgehen jeder einzelnen Stelle nichts übersehen wird. Nach der Migration ist die Benutzeroberfläche standardmäßig auf Englisch eingestellt, folgt automatisch der Systemsprache und verfügt über ein durchdachtes Detail: Live-Fenstersynchronisierung – schalten Sie die Sprache in einem Fenster auf Chinesisch um, und ein anderes geöffnetes Fenster folgt sofort, ohne dass jedes einzelne umgeschaltet werden muss. Der Editor hat auch die vollständige Zweisprachigkeit abgeschlossen und die Laufzeitüberprüfung bestanden. Für eine Plattform, die von YouTubern weltweit genutzt werden soll, muss zuerst die Sprachmauer niedergerissen werden – und dieser Tag hat sie vollständig niedergerissen.

Devtools-Panels abgeschlossen: Konsole + Netzwerk + Protokolle auf der Festplatte

Der Devtools-Bereich verfügte zuvor über leere Bedienfelder oder nicht anklickbare Platzhalter. Dieser Tag vervollständigte sie sofort zu echten Features. Das Konsolenpanel hat die gesamten Ausgabeströme des Spiels und des Editors verkabelt – jedes Protokoll, das Ihr Spiel ausgibt, und jeder Fehler, den es auslöst, fließen jetzt hier in Echtzeit. Das Netzwerk-Panel wurde von einem toten Platzhalter zu einer echten Sache und erfasst die verschiedenen Netzwerkanfragen, die Ihr spielerprobtes Spiel stellt: regelmäßige Anfragen, asynchrone Anfragen und langlebige Verbindungen, alles sichtbar. Darüber hinaus werden die Konsolen-, Netzwerk- und Informationsströme nicht nur in einem Panel angezeigt, sondern zur späteren Überprüfung in lokalen Protokolldateien gespiegelt – Sie müssen ein Problem nicht live verfolgen; Sie können es anschließend aus den Protokollen wiedergeben. Eine mit der Überwachungsansicht überflüssige Registerkarte wurde entfernt, um Verwirrung zu vermeiden, wenn an zwei Stellen dasselbe angezeigt wird. Die Bedeutung: Das Debuggen ist ein unvermeidlicher Teil der Schöpfung, und die Voraussetzung für das Debuggen ist „Sehen können“. Wenn sich ein Spiel falsch verhält, wird durch die direkte Anzeige der vollständigen Konsolenfehler und des Netzwerkverkehrs in einem Panel das Debuggen vom „Vermuten nach Gefühl“ zum „Prüfen anhand von Beweisen“.

Verfeinerung der Benutzeroberfläche: Stapelung, Kontrast, Zugänglichkeit

Diese große Änderung wurde genutzt, um mehrere seit langem bestehende UI-Probleme gemeinsam zu beheben. Eine davon ist die Stapelreihenfolge: Früher verdeckten einige Dialoge, Dropdowns und die Sprachauswahl fälschlicherweise die obere Leiste oder versteckten sich unter einem Dialog, und heute wurde ihre Schichtung klar neu geordnet, sodass das, was oben sein sollte, fest oben bleibt. Der zweite Punkt ist der Kontrast der Formularsteuerung: Bestimmte native Eingabefelder und Schaltflächen zeigten zuvor den standardmäßigen schwarzen Text des Browsers an, da die Stile nicht verkabelt waren und auf einem dunklen Hintergrund nahezu unleserlich waren. Dieser Tag gab ihnen lesbare Themenfarben. Der dritte Punkt ist die Barrierefreiheit: Eingabeaufforderungsdialoge erhielten die vom Standard geforderten Titel, wodurch Barrierefreiheitsfehler beseitigt wurden und Personen, die unterstützende Lesehilfen verwenden, Dialoginhalte richtig verstehen können. Jedes davon ist klein, klein genug, dass die meisten Menschen es nicht besonders bemerken; Aber gemeinsam entscheiden sie über eines: ob sich die Benutzeroberfläche überall „normal“ anfühlt. Eine Benutzeroberfläche mit überall kleinen Unannehmlichkeiten zehrt kontinuierlich und auf subtile Weise an der Geduld des Benutzers. Wenn man sie einzeln glättet, gewinnt man ein solides Gefühl dafür, dass „sich alles richtig anfühlt, wenn man es benutzt“.

Richtungsschatten behoben + deklarative Systemplanung

Der Motor hat ein Problem an der Wurzel behoben, das mehrere Tage lang gedauert hatte: gerichtete Lichtschatten. Beim Erstellen von Beispielspielen in den vergangenen Tagen hatte ich keine andere Wahl als die Notlösung, „die Kaskadenzahl des Schattens von 4 auf 1 zu ändern“, um einen zuverlässigen Schattenwurf zu gewährleisten – das hat das Symptom nur umgangen, da die eigentliche Krankheit in der Engine steckte. Dieser Tag hat das Problem vollständig behoben: Die Grundursachen für das Versagen kaskadierter Schatten unter bestimmten Konfigurationen und für die Fehlausrichtung auf einer einzelnen Ebene wurden gemeinsam behoben. Mit der Upstream-Stallfunktion funktionieren die Richtungsschatten jedes Downstream-Spiels ordnungsgemäß, keine Problemumgehung mehr, die nur auf Symptome beschränkt ist. Am selben Tag erlangte die Spielelogik eine wertvolle Fähigkeit: die deklarative Systemplanung. Ein Spiel besteht aus vielen „Systemen“ (Logikmodulen, die sich jeweils um einen Bereich kümmern, wie Bewegung, Kollision, KI), deren Ablaufzeitpunkt und Reihenfolge früher von Hand festgelegt wurden; Jetzt können sie deklarativ nach Bedingung, Label und aktuellem Status geplant werden – „diese Gruppe von Systemen nur im Kampfzustand ausführen“, „diese Systeme gemeinsam unter einem Label planen“. Dadurch lässt sich komplexe Spielverhaltenslogik geordneter schreiben und ist weniger anfällig für Chaos. Darunter wurden eine Fehlerisolierung (die einen Absturz auf niedriger Ebene in einen behebbaren Fehler mit automatischer Wiederholung umwandelt) und ein Offline-Render-Frame-Viewer für ein reibungsloseres Grafik-Debugging hinzugefügt.

Die Engine diszipliniert Ressourcen: Gewinnen Sie sie zurück, wenn sie fertig sind, und stürzen Sie nicht ab, wenn sie kaputt ist

Die Engine hat heute auch echte Arbeit in die „Ressourcenverwaltung“ gesteckt, genau dort, wo ein Programm mit langer Laufzeit am anfälligsten für Probleme ist. Ein Teil ist der Lebenszyklus von GPU- und Audio-Ressourcen: Jeder Teil des Videospeichers und jeder Tonkanal kann, wenn er nicht mehr durch irgendetwas referenziert wird, genau identifiziert und rechtzeitig zurückgewonnen werden, anstatt sich stillschweigend anzuhäufen. An diesem Tag wurde speziell ein Mechanismus zur „Freigabe nicht mehr referenzierter Ressourcen“ entwickelt und mit einem Langzeit-Stresstest überprüft, dass er tatsächlich auf einem stabilen, begrenzten Nutzungsniveau bleibt, anstatt zu explodieren. Der andere Teil ist die Fehlerisolierung: Wenn ein schwerwiegender Fehler auf niedriger Ebene auftritt, kann die Engine ihn in einen ordnungsgemäß behandelbaren Fehler umwandeln, anstatt komplett abzustürzen, und bei Bedarf einen erneuten Versuch unternehmen. Bei beiden handelt es sich um eine Arbeit unter der Haube, die der Nutzer noch nicht sieht und die direkt darüber entscheidet, „ob es über einen längeren Zeitraum stabil laufen kann“. Ein Spiel kann mehrere Stunden am Stück laufen und ständig Ressourcen erzeugen und zerstören; Nur wenn man „Zurückkehren, wenn man fertig ist, aushalten, wenn man kaputt geht“ solide macht, vermeidet man beim langen Spielen Verzögerungen oder unerklärliche Abstürze.

Was dieser Tag bedeutet

Das Schlagwort des Tages lautet „Barrieren überwinden“. Die Zweisprachigkeit überwindet die Sprachbarriere und bietet der Plattform erstmals die Grundvoraussetzungen, um sich einem globalen Publikum zu stellen – wie weit ein Tool reicht, hängt in erster Linie davon ab, wie viele Menschen es verstehen und nutzen können. Durch die Vervollständigung der Devtools wird die Debugging-Hürde überwunden, sodass Entwickler die Wahrheit erkennen können, wenn Probleme auftreten, anstatt sich über eine Blackbox zu ärgern. Durch die Behebung der Engine-Schatten wird die Grenze zwischen der „Behandlung der Symptome“ und der „Behandlung der Wurzel“ beseitigt, wodurch ein wiederkehrendes Problem an der Quelle behoben wird, das nur umgangen werden konnte. Und deklarative Planung und Ressourcenverwaltung beseitigen die Möglichkeit für komplexere, länger laufende Spiele. Der schrittweise Abbau dieser Barrieren macht die Plattform gleichzeitig zugänglicher, transparenter und zuverlässiger. Ein Tool, das wirklich weit verbreitet sein und auf lange Sicht vertrauenswürdig sein möchte, tut oft genau das, was einfach ist: ständig Barrieren ausfindig zu machen und sie dann ernsthaft abzubauen.

← Alle täglichen Updates