2016-03-08 2 views
5

Ich entwickle ein Spiel in Unity 5.2.2f1 und ich benutze die Leinwand und Bildmaskierungselemente und dann ein .apk für Android. Auf den meisten Android-Geräten funktioniert das gut, aber auf dem Galaxy Note 5 und dem Kindle Fire HD dauert die Maskierung nicht.Unity UI Masking funktioniert nicht auf Galaxy Note und Kindle Fire

Was auch interessant ist, dass es DOES Arbeit auf Galaxy Note und Kindle Fire HD, wenn ich die Standard bereitgestellt Asset verwenden, die Teil der unity_builtin_extra Ressource ist, aber nicht, wenn ich ein GIF oder ein .png für das Bildasset.

Mask Funktioniert auf allen Android-Geräten:

This works on everything

This works on everything

Maske funktioniert nur auf einigen Android-Geräten:

Does not work on Note 5

Does not work on Note 5

Ich habe auch versucht, verschiedene Einstellungen wie die Einstellung der Kameras zu aktualisieren Rendering und 32-Bit-Display-Puffer aktivieren (wie andere Beiträge vorgeschlagen haben), aber bisher hat noch nicht gearbeitet.

Alle Hinweise oder Gedanken dazu wären sehr geschätzt!

+0

Können Sie Rect-Transformationseinstellungen aus dem Inspector des nicht funktionierenden Maskenobjekts anzeigen? –

+0

Auch was meinst du mit: "Die Maskierung dauert nicht"? Willst du sagen, dass die Maske einfach nicht maskiert wird, oder die Kinder-UI-Elemente überhaupt nicht angezeigt werden oder sogar etwas Seltsames dabei ist? –

Antwort

1

In der Vergangenheit habe ich ein ähnliches Problem mit der UI-Maske auf Linux, gibt es eine bug reported on it.

Da sie es nicht behoben haben, wäre ich nicht überrascht, wenn einige andere Geräte das gleiche Problem haben.

Wenn der Mask-Zweck für die UI ist, könnten Sie statt dessen die 2D Rect Mask verwenden, die viel effizienter ist, aber nur für die UI gemacht wird und einige Einschränkungen aufweist.

Wie Sie im doc lesen:

Die Grenzen der RectMask2D Kontrolle sind:

  • Es funktioniert nur in 2D-Raum
  • Es wird nicht richtig Elemente maskieren, die nicht in derselben Ebene liegen

Die Vorteile RectMask2D sind:

  • Es den Stencil Buffer nicht
  • verwendet
  • Keine zusätzlichen Unentschieden rufen
  • keine wesentlichen Änderungen
  • Schnelle Leistung

So oder so, würde ich Ihre Frage mit einem kleinen Test berichtet , damit sie es testen und eventuell eine Lösung dafür schreiben können.

In der Zwischenzeit kann die 2DRectMask hoffentlich ein Workaround sein!

Verwandte Themen