Unity-Projekt zum WeChat-Minispiel WeChat-Miniprogramm-Nanny-Tutorial, komplexe Problemlösung und einfacher Leistungstest der WeChat-Minispielplattform

Vorwort

Basierend auf den Bedürfnissen einer Person haben wir eine einfache technische Recherche durchgeführt: Wir haben das Unity-Projekt in ein WeChat-Minispiel umgewandelt.
Der Hauptinhalt dieses Artikels: Schritte zum Konvertieren kleiner Spiele in Unity, Lösungen für aufgetretene Probleme und einfache Leistungstestvergleiche

Einschränkungen von WeChat-Minispielen

Für WeChat-Minispiele gelten strenge Beschränkungen hinsichtlich der Größe des Programmpakets: Das erste Paket darf weniger als 2 MB groß sein, und das erste Paket plus Unterpakete (nach dem Laden) darf nicht größer als 20 MB sein. Selbstverständlich können wir Spielressourcen auch zum Online-Laden verpacken. Dieser Teil von WeChat unterliegt jedoch auch Einschränkungen: Der persistente Speicherbereich darf nicht größer als 200 MB sein. Mit anderen Worten: Wenn das gesamte Erlebnispaket Ihres Spiels größer als 200 MB ist, müssen Sie geeignete Entscheidungen darüber treffen, welche Teile lokal zwischengespeichert werden können und welche Teile die Benutzer nicht verrückt machen, selbst wenn sie jedes Mal neu heruntergeladen werden müssen, wenn sie ausgeführt werden . . . . . .

Wir müssen uns keine Sorgen machen, dass das erste Paket weniger als 2 Millionen groß ist. Die WeChat-Minispielplattform bietet Unity-Entwicklern ein sehr praktisches Konvertierungstool. Mit diesem Tool können Sie WebGL-Projekte nicht nur direkt in WeChat-Minispiele packen, sondern auch automatisch Optimierungsvorschläge bereitstellen und eine Ein-Klick-Optimierung von Texturen und anderen Ressourcen durchführen. Unity WeChat Minispiel-Paketierungs-Plug-in

1. Konvertierung des WeChat-Minispielprojekts

1.1 Vorbereitung

  1. Konvertieren Sie zunächst das vorhandene Unity-Projekt in die WebGL-Plattform und stellen Sie sicher, dass es normal ausgeführt werden kann. Geben Sie Build-Einstellungen ein, klicken Sie auf WebGL und dann auf Plattform wechseln, um das Projekt zu konvertieren
    Fügen Sie hier eine Bildbeschreibung ein

  2. Unity-Verpackungs-Plug-in herunterladen
    Unity WeChat-Minispiel-Verpackungs-Plug-in

  3. Nachdem der Download abgeschlossen ist, sieht es so aus:
    Fügen Sie hier eine Bildbeschreibung ein

  4. Doppelklicken Sie, um die Plug-in-Importschnittstelle aufzurufen, wählen Sie die Schaltfläche „Alle“ und klicken Sie dann auf „Importieren“, um in das Projekt zu importieren
    Fügen Sie hier eine Bildbeschreibung ein
    4 Nachdem Chen Gong importiert hat, wird das „WeChat Mini Die Schaltfläche „Spiel“ wird in der Symbolleiste über Unity angezeigt:
    Fügen Sie hier eine Bildbeschreibung ein

1.2 Richten Sie den Export von WeChat-Minispielen ein

  1. Klicken Sie auf das Konvertierungs-Minispiel, um das Konfigurationsfenster aufzurufen
    Fügen Sie hier eine Bildbeschreibung ein
    Fügen Sie hier eine Bildbeschreibung ein
    Der Inhalt des Einstellungsfensters ist relativ leicht zu verstehen. Zur Erläuterung werden im Folgenden nur die kritischsten ausgewählt:
    Spiel-App-ID: WeChat-Minispiel-ID. Diese ID muss durch Erstellen eines Kontos und Erstellen eines Spiels auf der WeChat-Minispielplattform erhalten werden. Holen Sie sich it Füllen Sie hier nach der ID aus. Wenn diese leer ist, kann das Programm nicht ausgeführt werden
    Spielressourcen-CDN: Hier wird der Spielladekörper platziert. Es ist zu beachten, dass Sie als Ersteller von Minispielen das HTTP-Protokoll verwenden dürfen. Wenn Sie möchten, dass andere an Tests und Entwicklung teilnehmen, damit andere Minispiele in WeChat testen können, muss der Server HTTPS unterstützen . Es darf hier nicht leer sein
    Unity-Heap-Speicher: Einstellung der Heap-Größe des Unity-Speichers. Im Normalfall können hier die Standardeinstellungen verwendet werden. Wenn Ihr kleines Spiel jedoch groß ist und viel Speicher verbraucht, müssen Sie diese Einstellung erhöhen, da es sonst die Kompilierung nicht besteht.
    WebGL2.0 (bate): Diese Einstellung wird verwendet, um den Fehler zu beheben: Fehler beim Erstellen des Players: Inkompatibler Farbraum mit Grafik-API

1.3 Minispiel exportieren

  1. Nachdem Sie die relevanten Einstellungen vorgenommen haben, können Sie auf die Schaltfläche „Generieren und Konvertieren“ klicken, um mit dem Exportieren des Projekts zu beginnen. Ja, wir werden die integrierte Build-Funktion von Unity nicht mehr verwenden. Wir werden diese Schaltfläche in Zukunft verwenden, um Projekte zu exportieren
    Fügen Sie hier eine Bildbeschreibung ein
    Das lange Warten beginnt

022
Export erfolgreich abgeschlossen! Sie werden überrascht sein, im Ausgabeverzeichnis zwei Ordner zu finden. Nanni? ?
Fügen Sie hier eine Bildbeschreibung ein
Minigame ist ein Homepage-Programm, das von WeChat Mini Games basierend auf Ihrem Spielprojekt erstellt wurde. Es handelt sich lediglich um eine Homepage und beinhaltet nicht das Spiel selbst. Diese Datei muss auf die WeChat-Minispielplattform hochgeladen werden.
webgl ist das Spiel selbst und muss auf Ihrem Ressourcenserver platziert werden. Sie können Tencent Cloud (besserer Support, teurer), andere Marken oder Ihren eigenen Server verwenden. Das Verzeichnis dieses Ordners auf dem Server ist der Pfad von „Game Resources CDN“ im vorherigen Schritt

Nachdem Sie die oben genannten Schritte ausgeführt haben, können Sie einen Testlink auf der Minispielplattform beantragen, über WeChat auf Ihrem Mobiltelefon nach Ihrem eigenen WeChat-Minispiel suchen und es testen.

2. Mögliche Probleme

1 Fehler: Wenn Unity ein Minispiel exportiert, wird möglicherweise Folgendes gemeldet: Fehler beim Erstellen des Players: Inkompatibler Farbraum mit Grafik-API.
Lösung: Aktivieren Sie einfach „WebGL2.0(bate)“ im Einstellungsfenster „Minispielkonvertierung“.
2 Fehler: In Beim Ausführen eines Minispiels WeChat oder der Emulator, ein Fehler wird in der Webkonsole gemeldet: Das Plug-in ist nicht autorisiertFügen Sie hier eine Bildbeschreibung ein
Lösung: Überprüfen Sie, ob die „Game AppID“ im Fenster „WeChat Mini Game konvertieren“ korrekt ist
Fügen Sie hier eine Bildbeschreibung ein

3 Problem: Beim Ausführen des WeChat-Minispiels auf dem Emulator oder Mobiltelefon wird Folgendes angezeigt: Der Ressourcen-Download ist fehlgeschlagen. Gleichzeitig meldet die Konsole, dass der Download des Ressourcenpakets fehlgeschlagen ist.
Fügen Sie hier eine Bildbeschreibung ein
Lösung: Überprüfen Sie, ob „Game Resource CDN“ im Fenster „WeChat Mini Game konvertieren“ richtig eingestellt istFügen Sie hier eine Bildbeschreibung ein
4 Problem: Der Emulator stürzt beim Ausführen von WeChat ab Miniprogramm
Fügen Sie hier eine Bildbeschreibung ein
Lösung: Direktes Debuggen über ein Mobiltelefon kann oft erfolgreich sein

Drei Leistungstests

3.1. Physischer Block-Stresstest

Testhardware: iphone12 pro
Testplattform: Mini-Programm
Spielpaketgröße (WeChat-Speicher): 14,5 Mio.
Paketgröße (eigener Serverspeicher): 24,1 M
Rendering-Pipeline: URP

Fügen Sie hier eine Bildbeschreibung ein

Fügen Sie hier eine Bildbeschreibung ein

3.2. Block-Rendering-Stresstest

Testhardware: iphone12 pro
Testplattform: ios
Spielpaketgröße: 55,3 M
Rendering-Pipeline: URP
Fügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung ein

3.3 Horizontaler Vergleich zwischen WeChat-Minispielen und IOS

Fügen Sie hier eine Bildbeschreibung ein

3.4 Testfazit:
  1. Die WeChat-Minispiel-Rendering-Engine behauptet, die WebGL-API direkt aufzurufen, die eine leistungsfähigere Leistung als Webwiew bietet. Aber gemessen an der Leistung gibt es keine große Verbesserung und es besteht ein großer Unterschied im Vergleich zu nativen Anwendungen.
  2. Aus den Tabellendaten geht hervor, dass die Leistung sowohl im reinen Rendering-Modus als auch im Physik-Engine-Modus große Einschränkungen aufweist. Insbesondere wenn die Anzahl der Rendering-Gesichter etwa 20.000 erreicht, fällt die Bildrate unter 20 und es entsteht ein deutliches Gefühl der Verzögerung. Wenn die Anzahl der Rendering-Gesichter 30.000 erreicht, sind normale interaktive Vorgänge nicht mehr möglich.
  3. Es kommt zu einem Absturzphänomen, wenn das Spiel viele gleichzeitige Renderings aufweist. Nicht nur beim Testen, sondern auch bei einigen ausgereiften Spielwerken, die online veröffentlicht wurden.

Supongo que te gusta

Origin blog.csdn.net/lengyoumo/article/details/134271739
Recomendado
Clasificación