← Zurück zum Blog

Game-UI Nine-Slice und skalierbare Panels: Figma-/PSD-Markierungen und Engine-Sliced-QA

Wie man Ränder und Export-Skalierung markiert, wenn Panels und Felder 9-Slice brauchen, und wie Unity UGUI Sliced, Godot StyleBox und Cocos Caps bestehen – mit Fix-Pfaden.

Veröffentlicht
  • game-ui-design
  • game-dev-ai
  • ui-slicing
  • figma-to-unity
  • psd-to-unity
  • nine-slice
  • vberai
  • ai-studio
  • unity
  • godot
  • cocos
  • 2026
Game-UI Nine-Slice und skalierbare Panels: Figma-/PSD-Markierungen und Engine-Sliced-QA

Wenn ein Panel breiter gestreckt wird, bedeuten unscharfe Ecken, sich wiederholende Center-Textur oder ovale Ecken meist, dass Nine-Slice (9-Slice / Cap-Insets) beim Handoff nicht spezifiziert wurde oder die Engine Simple-Skalierung auf das gesamte Sprite anwendet. Das Justieren von Image Type und Rändern im Unity Editor kann einen Screen retten, aber der nächste Design-Drop überschreibt es – wenn Ränder nicht zur Export-Skalierung passen, entstehen Rework-Schleifen.

Die folgenden Beispiele konzentrieren sich auf Unity UGUI Image (Sliced / Tiled). Godot StyleBoxTexture und Cocos Sprite-Nine-Slice bilden dieselben Ideen ab, einschließlich Content-Padding. Anchors und Safe Area: Engine-+-MCP-Checkliste Punkt 6. Stretch-Region-Padding mit Locales: Locale-Overflow Design-Check 7.

Design-Handoff-Checkliste Punkt 6 verlangt klare Nine-Slice-/Stretch-Regionen. Dieser Beitrag behandelt wann geschnitten wird, Figma-/PSD-Markierungen, Drei-Engine-Abnahme und den Full-Screen-Canvas-Pfad sowie eine Fix-Tabelle.

Fail-Kriterien (eines davon = nicht bestanden): Corner-Art verformt sich beim Strecken; unbeabsichtigte Wiederholung oder Nähte in der Stretch-Region; Corner-Radius ändert sich mit der Panel-Größe; skalierbarer Hintergrund wird zusammen mit festen Icons/Avataren skaliert; Export-Skalierung passt nicht zu Engine-Rand-Pixeln (1px-Lücken oder weiche Kanten).


Wann Nine-Slice erforderlich ist vs. Hard-Stretch verboten

Asset-TypTunNicht tun
Dialog-/Settings-Panel-BGNine-Slice + Content-PaddingEinzelnes Simple-Sprite full bleed
Input-/Bar-ContainerNine-Slice oder L/R-Cap + Center-RepeatHöhe quetschen ohne Art-Regeln
Primäre Buttons (feste Größe)Festes Sprite oder Nine-Slice + MindestbreiteUnendlich breiter abgerundeter Button als ein Stretch
Icons, Avatare, Skill-FramesFeste Größe, kein Nine-SliceMit Panel-BG zu einem Stretch-Bild verschmelzen
Full-Screen-BG (ohne gerahmte Box)Vollbild oder Tile-Strategie im SpecPanel-Ränder auf Full Bleed wiederverwenden

Regel: Wenn sich Breite oder Höhe mit Auflösung, Copy oder Listeninhalt ändert und Ecken ihre Form behalten müssen → Nine-Slice oder Engine-Äquivalent. Fixed-Size-Controls → festes Sprite + Layout-Constraints.


Figma-/PSD-Handoff-Markierungen (Checkliste)

#CheckPass-Standard
1Stretch-Layer getrennt von Deko / Icons / TextPanel-BG-Reskin + Slice; Icons nicht mit BG skaliert
2Border-/Cap-Inset in px (vier Seiten)Passt zu @1x oder Team-Export-Skalierung in Delivery-Notes
3Feste Export-Skalierung (@1x/@2x oder 1080-Baseline)Engineering rät nicht an der Border-Mathematik
4Corner-Radius außerhalb der Stretch-Region oder Spec erlaubt Non-Stretch-CornersKein „Ecken werden zu Kapseln“-Pass
5Stretch-Region tile-freundlich oder solidCenter-Repeat ohne offensichtliche Fehlausrichtung
6Semantische Namenz. B. Panel_Shop_9s, Input_Field_9s
7Multi-State (normal / disabled) gleiche BorderInsets stimmen überein; nur Farbe/Skin ändert sich
8PSD-Slice oder Figma-Export-Notes transparentes PaddingSchatten nicht in Border zählen, außer Spec sagt es
9Liefern mit Handoff-Punkt 5 Button-StatesFehlende States nicht mit falscher 9s-Art patchen
10Event-Reskin ändert nur Art, Border unverändertSiehe Reskin Spec

Figma: Cap-Inset in Component-Docs dokumentieren, wenn resizable Frames oder Slice-Plugins verwendet werden. PSD: Slices ausrichten mit PSD zu Unity in 5 Minuten.


Drei Engines: Komponenten und Abnahme

ElementUnity UGUIGodot 4 ControlCocos UI
KomponenteImage → Sliced / TiledStyleBoxTexture (Patch-Margin)Sprite Nine-Slice / Sliced
Border-QuelleSprite Editor Border (L/T/R/B px)content_margin / PatchCap-Insets (LTRB)
Content-BereichRectTransform + Child-PaddingMarginContainer + ThemeWidget-/Layout-Padding
Typischer FailSimple-Missbrauch; falsch skalierte BorderPatch vs. Textur-Größe-MismatchAtlas-Rotation bricht Inset
PassBei 150 % / 200 % Breite: scharfe Ecken, sauberes CenterDasselbe; Theme-Vorschau passt zu PlayDasselbe; Device-Spot-Check lange Liste

Unity-Editor-Abnahme (auf andere Engines übertragen):

  1. Prefab-Image auf Sliced setzen mit Borders passend zum Design.
  2. Panel-RectTransform auf minimale und maximale Design-Breite ziehen.
  3. Ecken, Kanten und Center mit Figma-/PSD-Capture vergleichen.
  4. Wenn Play-Modus OK → ein Device-Pass gemäß Pre-Ship-Checkliste.

Full-Screen-Konzept: Canvas-Split und Re-Export

Mit nur PNG- oder AI-Full-Screen-Art kann die Border nicht abgeleitet werden. Pfad: VberAI Studio (AI Studio, ≠ Google AI Studio) In-Place-Split → skalierbare Panels markieren → Prefab exportieren (deterministisch, kein LLM-YAML).

SchrittAktionAbnahme
1Vollbild auf Canvas; Panel_* und feste Icons splittenBenannte Hierarchie
2Panel-9-Slice-Intent auf Canvas oder vor Export bestätigenOwner für Inset dokumentiert
3Unity-/Godot-/Cocos-Prefab exportierenSliced-QA gemäß Tabelle oben
4Nach Reskin / Locales Full-Tree-Re-ExportWenn Border-Spec unverändert, Insets unverändert

Layered Figma/PSD: bevorzugt Figma → Unity oder PSD zu UGUI, dann kleinere Border-Anpassungen in der Engine – vermeiden, bei jedem Event 20 lose PNGs neu zu exportieren.


Fix-Routing

SymptomWahrscheinliche UrsacheAktionOwner
Unscharfe EckenSimple-Skalierung auf ganzem BildSliced + korrekte Border; Design fügt Inset-Markierung hinzuEngineering + Design
Center-Naht / Repeat-BlöckeInset 1–2px daneben; Skalierungs-MismatchDesign-px angleichen; Sprite reimportierenEngineering
Ecken strecken sich ovalArt sollte nicht nine-slicenFeste Größe oder neue Corner-ArtDesign
Border ändert sich nach ReskinNeue Art-Größe oder PaddingCanvas-Größe in Reskin-Spec locken; nach Reskin erneut QADesign
List-Row-BG verformt sichRow-BG gestreckt wie volles PanelRow-spezifische 9s oder feste HöheDesign
Fail nur bei manchen AuflösungenCanvas Scaler nicht-ganzzahlige SkalierungEngine-Checkliste Anchor/ScalerEngineering

Regel: Wenn Border ≠ Design → zuerst Markierungen oder Sprite-Quelle fixen, dann Prefab. Inspector-only-Fixes ohne aktualisierte Delivery → beim nächsten Export verloren.


vs. „Nur PNG-Pack“-Handoff

AnsatzPasstPasst nicht
Manueller Export + Engineering füllt BorderWenige Panels, DemoHäufiges Reskin, viele Screens
Figma/PSD + VberAI Studio strukturierter ExportMulti-Screen, Multi-Engine, EventsErsetzt keine Inset-Markierungen und QA
Temporär Sliced in EngineHotfix für einen ScreenLangfristig ohne Design-Quelle

Empfohlen: Design-Inset-Markierungen → strukturierter Prefab-Export → Unity Editor Sliced bei zwei Breiten → MCP für Logik. Raycast und Binding: Engine-+-MCP-Checkliste.


Häufig gestellte Fragen

Können abgerundete Panels Nine-Slice verwenden?
Ja, aber Insets müssen auf geraden Stretch-Kanten sitzen; Ecken bleiben in Non-Stretch-Corner-Tiles. Wenn der Corner-Radius mit der Panel-Größe wächst → Fail; Art fixen oder Max-Größe begrenzen.

Zählen Schatten zur Border?
Das entscheidet die Produkt-Spec. Wenn Schatten nicht streckt, Layer trennen oder Inset auf dem soliden Rect ohne äußeren Glow markieren.

Tiled vs. Sliced?
Sliced für gerahmte Panels; Tiled (oder tile-freundliche Center-Art) für sich wiederholende mittlere Textur. In der Spec schreiben – nicht Engineering raten lassen.

Separate Slices für Godot / Cocos?
Eine Inset-Semantik; Export-Ziel über Canvas-Multi-Engine-Export wechseln und Patch/Cap gemäß Tabelle verifizieren.

Füllt VberAI Studio Borders automatisch?
Hängt von Export und Assets ab; Abnahme ist immer Engine Sliced/StyleBox. Kein Inset im Design → Engineering setzt Borders im Editor und dokumentiert in der Spec.

Ist VberAI Studio dasselbe wie Google AI Studio?
Nein. Siehe Vergleich.

Weitere Guides, die Sie interessieren könnten