Verbessern der Leistung eines Mobilspiels in Unity
Gaming auf Mobilgeräten hat sich in den letzten Jahren stark weiterentwickelt, von einfachen 2D-Spielen bis hin zum Angebot eines vollständigen 3D-Erlebnisses. Dennoch verfügt es immer noch über eine begrenzte Rechenleistung. Um ein reibungsloses Spielerlebnis zu bieten, müssen daher einige Überlegungen hinsichtlich der Designauswahl angestellt werden.
Nachfolgend finden Sie die fünf wichtigsten Punkte, die Sie beachten sollten, um die Leistung auf Mobilgeräten bei der Entwicklung in Unity zu verbessern:
Vermeiden Sie Transparenz
Das Überzeichnen von Pixeln ist ziemlich teuer und könnte die Framerate auf Mobilgeräten drastisch reduzieren. Um dies zu verhindern, vermeiden Sie die Verwendung transparenter Shader oder grundsätzlich aller Shader, die Transparenz enthalten (z. B. Partikel-Shader).
Für undurchsichtige Geometrie verwenden Sie Shaders aus der Kategorie „Mobil“.
Vermeiden Sie Echtzeitschatten
Echtzeit-Schatten sehen vielleicht cool aus, erfordern aber eine Menge Rechenleistung. Daher ist es am besten, sie stattdessen in Lightmaps zu backen.
Verwenden Sie statisches Batching, um Draw-Aufrufe zu reduzieren
Static Batching ist eine Möglichkeit, Unity statische Objekte miteinander kombinieren zu lassen, was wiederum die Anzahl der Draw-Aufrufe reduziert und so die Rendering-Leistung verbessert.
Um statisches Batching zu aktivieren, markieren Sie alle statischen Objekte in der Szene als "Batching Static", gehen Sie dann zu Bearbeiten -> Projekteinstellungen... -> Player und stellen Sie sicher, dass statisches Batching aktiviert ist.
Verwenden Sie die dynamische Stapelverarbeitung mit Vorsicht
Die dynamische Stapelverarbeitung ist etwas umstritten. Einerseits ermöglicht es Unity, dynamische Objekte zu weniger Objekten zu kombinieren, was möglicherweise die Leistung verbessert, andererseits muss es dies jedoch in jedem Frame tun, was stattdessen die Leistung beeinträchtigen könnte.
Insgesamt ist es besser, Dynamic Batching zu deaktivieren, wenn Sie auf mobile Plattformen abzielen.
Vermeiden Sie die Verwendung von OnGUI
Mit OnGUI können Sie schnell eine Benutzeroberfläche aus Code erstellen, aber es ist im Vergleich zu UI Canvas sehr langsam, also verwenden Sie es nur für das Prototyping.