Communitygithub.com

unity-technologies/migrate-birp-to-urp

Plant, führt aus und behebt Probleme bei Unity-Projekten, die von der Built-in Render Pipeline (BiRP) auf die Universal Render Pipeline (URP) migrieren. Verwenden Sie dies, wenn der Benutzer nach einem Upgrade, einer Konvertierung, einem Wechsel oder einer Migration eines Projekts, einer Szene, eines Materials oder eines Shaders zu URP fragt; rosa oder magenta Materialien nach URP beheben; Built-in Materialien/Shader konvertieren; ein 2D-Projekt zu URP 2D migrieren; Beleuchtung, Qualität, Post-Processing, gebackene Lightmaps oder Reflexionssonden nach URP überprüfen; oder visuelle Probleme nach einer Render-Pipeline-Migration diagnostizieren soll.

Was ist migrate-birp-to-urp?

Diese Skill-Anweisung definiert einen strengen, phasenbasierten Workflow für die Migration von Unity-Projekten von der Built-in Render Pipeline (BiRP) zur Universal Render Pipeline (URP). Sie ist für KI-Agenten (z. B. Claude Code, Cursor, Codex) konzipiert und behandelt sowohl einfache Anfragen wie „Projekt zu URP migrieren“ als auch komplexe Fehlerbehebungen wie rosa Materialien oder fehlerhafte Beleuchtung nach der Migration. Der Workflow besteht aus fünf Phasen (0-4): Inspektion und Planung, URP-Einrichtung und Materialkonvertierung, Post-Processing und Kamera-Migration, Beleuchtung und Lightmaps sowie abschließende Validierung und Bericht. Kritische Regeln umfassen die obligatorische Prüfung von Rollback-Sicherheit (Branch/Backup), automatische Erkennung von Abhängigkeiten wie PPv2 oder gebackene Lightmaps und die strikte Validierung des gespeicherten Projektzustands (nicht nur Tool-Logs), bevor eine Migration als „erfolgreich“ deklariert wird. Der Agent muss vor dem ersten `eval`-Aufruf, der Projekteinstellungen ändert, die Datei `references/implementation-patterns.md` lesen, und bei Nichtverfügbarkeit dieser Ressource seine Konfidenz senken.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/unity-technologies/skills/tree/main/skills/migrate-birp-to-urp

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Klassifiziere die Anfrage, inspiziere den aktuellen Projektzustand, wähle den korrekten Migrationspfad und validiere das Ergebnis der Built-in zu URP-Migration sorgfältig.

Verbindliche Ausführungsreferenz

Lies vor jedem tatsächlichen Migrations- oder Reparaturdurchlauf references/implementation-patterns.md vor dem ersten eval-Aufruf, der Projekteinstellungen, Materialien, Post-Processing, Beleuchtung, Sonden oder Szenen bearbeitet. Dies ist zwingend erforderlich, selbst für kurze Aufforderungen wie „Migriere dieses Projekt zu URP“, wenn die Rollback-Sicherheit bereits bestätigt wurde.

Wenn diese Ressource nicht geladen werden kann, verwende die eingebetteten Regeln in dieser SKILL.md und senke deine Konfidenz: behaupte keine PPv2-Konvertierung, Beleuchtungs-/Sondenaktualisierung oder Migrationsabschluss allein aus Absicht oder Tool-Logs.

Kritischer Standard

Beginne bei einfachen Anfragen wie „Migriere dieses Built-in-Projekt zu URP“ oder „Verschiebe dieses Projekt zu URP“ mit dem sicheren Migrationsworkflow, anstatt direkt zur Konvertierung zu springen.

Eine allgemeine Upgrade-Aufforderung darf nicht verlangen, dass der Benutzer jedes Migrationsrisiko erwähnt. Untersuche und behandle häufige Built-in-Abhängigkeiten wie PPv2, gebackene Beleuchtung/Lightmaps, Reflexionssonden, Partikel-/Nebel-/Rauchmaterialien, Qualitätsstufen, Kamera-Post-Processing und repräsentative Szenenvalidierung.

Das Standardergebnis ist phasenbasiert:

  1. Erkenne, ob das Projekt Built-in, teilweise migriert, bereits URP oder HDRP ist.
  2. Klassifiziere die Anfrage als Standard 3D URP, URP 2D, ausgewählte Materialkonvertierung, nur Planung oder Fehlerbehebung.
  3. Untersuche Migrationsrisiken, bevor Änderungen empfohlen werden: deckende Materialien, Partikel-/VFX-Materialien, benutzerdefinierte Shader, Post-Processing, Kameraeffekte, gebackene Beleuchtung/Lightmaps/Reflexionssonden, Qualitätsstufen und repräsentative Szenen.
  4. Halte vor jeder Pipeline-ändernden Arbeit an, bis der Benutzer einen Rollback-Punkt wie einen Branch, ein Backup, ein Archiv oder eine Wegwerfkopie bestätigt. Pipeline-ändernde Arbeit umfasst die Installation von URP, die Zuweisung eines URP-Assets in den Grafik-/Qualitätseinstellungen, das Ausführen von Konvertern und das Bearbeiten von Materialien oder Szenen.
  5. Wähle die nächste Migrationsphase, führe diese Phase aus, speichere/frage ihre Ausgaben erneut ab und melde ihren Phasenstatus.
  6. Behandle benutzerdefinierte Shader, GrabPass, Surface Shader, OnRenderImage, Ersatz-Shader und paket-eigene Shader als abgegrenzte Follow-up-Arbeit, nicht als automatische Konverterarbeit.
  7. Validiere repräsentative Szenen, die Konsolenausgabe, Kamera-Rendering, Beleuchtungs-/gebackenen GI-Zustand, Materialien, Post-Processing-Persistenz und Qualitätsstufenzuweisungen, bevor der volle Migrationserfolg erklärt wird.

Standardphasen:

  • Phase 0: Inspizieren und planen. Erkenne Pipeline-Zustand, repräsentative Szenen, Rollback-Sicherheit, PPv2, Material-/Shader-Risiken, Qualitätsstufen, Beleuchtungs-/Lightmap-/Sonden-Zustand und benutzerdefinierten Rendercode.
  • Phase 1: URP-Einrichtung und unterstützte Materialkonvertierung. Installiere/wiederverwende URP, erstelle/weise URP-Assets in Grafik/Qualität zu, konvertiere unterstützte deckende und Partikel-/Effektmaterialien und überprüfe, dass keine unterstützten Materialien mehr Built-in-Shader verwenden.
  • Phase 2: Post-Processing und Kamera-Migration. Erstelle persistente URP-Volume-Profile, verkabel Szenen-Volumes/Kamera-Post-Processing, deaktiviere Legacy-PPv2 zur URP-Validierung und klassifiziere nicht unterstützte PPv2-Effekte wie SSR.
  • Phase 3: Beleuchtung, Lightmaps und Reflexionssonden. Löse veraltete Built-in-Beleuchtungszustände auf, konfiguriere URP-Beleuchtungs-/Sonden-Einstellungen, backe/aktualisiere falls machbar erneut oder markiere Beleuchtung/Sonden eindeutig als teilweise.
  • Phase 4: Abschließende Validierung und Bericht. Speichere/lade/frage den Projektzustand erneut ab, erfasse repräsentative Szenen, überprüfe die Konsole und melde vollständige/unvollständige/manuelle Elemente.

Ein Durchlauf kann mehrere Phasen abschließen, wenn das Projekt klein ist und Unity stabil bleibt, aber erzwinge nicht alle Phasen in einer Antwort. Bevorzuge eine ehrliche Phasengrenze gegenüber einem übermäßig beanspruchten „vollständigen“ Ergebnis.

Stelle Konfigurationsfragen nur, wenn der Projektzustand oder die Benutzerabsicht eine echte ungelöste Entscheidung hinterlässt. Wenn der Benutzer sagt „keine Dateien ändern“, bleibe im Audit-/Planungsmodus und führe keine Konvertierung oder Asset-Bearbeitung durch.

Allgemeiner Upgrade-Vertrag

Wenn der Benutzer eine allgemeine Migrationsanfrage stellt und Änderungen erlaubt, treibe die nächste Phase basierend auf dem Projektzustand voran:

  1. Bitte den Benutzer nicht, bekannte Built-in-Funktionen vor der Inspektion aufzulisten. Entdecke sie selbst.
  2. Wenn PPv2, gebackene Beleuchtung, Reflexionssonden, Partikel-/Nebel-/Rauchmaterialien oder mehrere Qualitätsstufen existieren, schließe sie automatisch in die Migration ein.
  3. Bevorzuge Phasenabschluss gegenüber Alles-in-einem-Abschluss. Jede Phase sollte ihre eigenen Ausgaben speichern/erneut abfragen und mit „Phase abgeschlossen“, „Phase teilweise“ oder „Blockiert“ enden.
  4. Wenn Unity-Kompilierung, Paketinstallation, Domain-Neuladen oder ein langer Licht-Backdurchlauf den Durchlauf unterbricht, melde die Unterbrechung als Phasengrenze und setze im nächsten Durchlauf vom gespeicherten Teilzustand fort, anstatt von vorne zu beginnen.
  5. Verlasse dich nicht darauf, dass der Benutzer eine detaillierte Checkliste schreibt, um korrektes Verhalten zu erhalten. Die detaillierte Checkliste dient dem Benchmarking oder Stresstesten; normale Benutzeraufforderungen sollten trotzdem diesen phasenweisen Vertrag auslösen.
  6. Eine allgemeine Migrationsanfrage gibt die Erlaubnis zu inspizieren und zu planen, beweist aber keine Rollback-Sicherheit. Wenn kein Rollback-Punkt bestätigt ist, halte vor der Paketinstallation oder URP-Zuweisung an und frage nach Bestätigung. Hinterlasse das Projekt nicht in einem magentafarbenen Teilzustand, nur um zur Backup-Frage zu gelangen.
  7. Wenn die Rollback-Sicherheit bereits bestätigt ist oder der Benutzer sagt, dass es sich um eine Wegwerfkopie handelt, fahre innerhalb der aktuellen Phase fort, ohne für Routinearbeit erneut zu fragen.
  8. Gib am Ende einer Phase eine kurze Aufforderung für die nächste Phase oder sage, welche Phase als nächstes ausgeführt werden sollte. Frage vor der nächsten Phase nur nach Bestätigung, wenn sie einen neuen kostspieligen oder riskanten Vorgang einführt, wie einen langen Licht-Backdurchlauf, Löschung/Bereinigung von Legacy-Assets oder eine Neuschreibung benutzerdefinierter Shader.
  9. Wenn die Rollback-Sicherheit bestätigt wurde und gewöhnliche Arbeit innerhalb der aktiven Phase unvollständig bleibt, frage nicht „Möchten Sie, dass ich fortfahre?“ Fahre mit der Reparatur dieser Phase fort, bis ihr Tor passiert ist, eine Tool-/Domain-Neuladungsgrenze die Ausführung unterbricht oder eine wirklich neue riskante Entscheidung auftritt.

Allgemeiner Migrationserfolgs-Gate

Bevor du eine allgemeine Migration als „erfolgreich“, „abgeschlossen“ oder „vollständig migriert“ bezeichnest, überprüfe den gespeicherten Projektzustand, nicht nur Tool-Logs:

  1. Die Grafikeinstellungen und jede relevante Qualitätsstufe zeigen auf das beabsichtigte URP-Asset.
  2. Das URP-Asset hat einen gültigen Standard-Renderer im gespeicherten Zustand, und die aktuelle Konsolenausgabe enthält keine ungelösten Render-Pipeline-Fehler wie „Default Renderer ist nicht vorhanden“. Wenn nach der Zuweisung ein Renderer-Fehler auftritt, frage die gespeicherte Renderer-Liste/den Standard-Index erneut ab, lösche veraltete Konsolenausgabe, wenn möglich, löse eine frische Szenen-/Kamera-Validierung aus und setze die Reparatur fort, anstatt mit „URP-Einrichtung abgeschlossen“ anzuhalten.
  3. Unterstützte Built-in-Materialien, einschließlich Partikel-/Nebel-/Rauchmaterialien, haben URP-kompatible Shader oder sind explizit als ungelöste benutzerdefinierte/Paket-Shader-Fälle aufgeführt. Texturierte/kolorierte Quellmaterialien müssen ihre Quell-Maps/Farben bewahren; eine URP-Shader-Zuweisung mit fehlender _BaseMap oder komplett weißer _BaseColor ist unvollständig, wenn die Quelle _MainTex oder _Color Inhalt hatte. Partikel-, Nebel-, Rauch-, Dampf-, Decal-, VFX-, additive und transparente Effektmaterialien sollten nicht blind zu Universal Render Pipeline/Lit gezwungen werden; bevorzuge URP-Partikel-/Effekt-Shader wie Universal Render Pipeline/Particles/Unlit, wenn angemessen.
  4. Wenn die Quellszene PPv2 verwendete, enthält ein gespeichertes URP

Individual skills in this repo

This repo contains 9 individual skills — each has its own dedicated page.

unity-technologies/2d-pixel-perfect

Sets up, diagnoses, and fixes pixel perfect 2D rendering in Unity projects. Use when working on any retro-style or pixel art 2D game.

unity-technologies/audio-setup-mixers

Scans the scene and audio assets to appropriately route Audio Sources into existing Audio Mixer Groups, classifying each source by what it plays. Use when the user asks about cleaning up mixer assignments, routing audio through a mixer, or which group a sound belongs in. Creating mixers and groups, and setting volumes, are not automated — the skill inventories what exists and asks the user to add anything missing.

unity-technologies/build-live-game

Build and operate a live game using Unity Services. Use when the user needs to implement, connect, or debug backend-driven features — battle passes, achievements, player progression, cloud saves, leaderboards, matchmaking, virtual economies, server-authoritative logic, anti-cheat, player accounts and authentication, remote configuration, feature flags, A/B testing, analytics, or cloud resource deployment. Triggers on live-ops, live service, backend, server authority, cloud code, cloud save, remote config, player data, retention, monetization loop, season pass, ranking, multiplayer sessions, lobbies, or any Unity Services integration.

unity-technologies/generate-editor-search-query

Generates Unity Search / Quick Search queries and opens the Unity Search window for read-only Unity Editor asset or scene-object lookup requests. Always use when the user asks to find, search, show, locate, filter, look up, query, or list concrete assets or scene objects in the current project or scene, even if Unity Search is not named. Covers materials, textures, prefabs, scenes, scripts, shaders, GameObjects, components, Lights, Cameras, UI objects, labels, paths, references, selected or named assets, and asset types. Also use when the user explicitly mentions Unity Search, Quick Search, Search window, open Search, or asks what Unity Search query to use. Do not use for general project overview, project structure, folder-purpose summaries, gameplay/system explanations, how-to programming questions, web search, repository text search, build logs, package installation, menu or settings search, modifying results, or non-Unity filesystem search unless the user explicitly asks to use Unity Search.

unity-technologies/implement-in-app-purchases

Implement, configure, and debug Unity In-App Purchases (IAP) — store connection, product catalog, consumable/non-consumable/subscription purchases, two-step pending-confirm flow, receipt validation, entitlement checking, restore transactions, Apple extensions (promotional purchases, Ask-to-Buy, code redemption), and Google Play extensions (subscription upgrade/downgrade), D2C Capabilities(direct to customer), 3rd party payment provider (Stripe/Coda) via Unity IAP/Unity Cloud. Use when the user needs to add, modify, debug, or migrate from native Android/iOS billing, 3rd party packages(RevenueCat/Adapty/Essential Kit/Unipay supported) to IAP. Triggers on microtransactions (MTX), monetization, real-money purchases, store purchases, buying items, support D2C, purchase via Stripe/Coda, migrate from native billing(Google's BillingClient or Apple's StoreKit/SKPaymentQueue/SKProduct)/RevenueCat/Adapty/EssentialKit/Unipay.

unity-technologies/initialize-ai-navigation

Sets up and configures the Unity AI Navigation system — NavMesh surfaces, NavMesh agents, obstacles, links, modifiers, areas and costs. Use when creating walkable navigation meshes, adding pathfinding agents, setting up patrol routes, configuring obstacle avoidance and carving, connecting separate NavMeshes with links, coupling navigation with animation, or troubleshooting navigation issues.

unity-technologies/levelplay-unity-integration

Integrates the LevelPlay Mediation SDK via the Ads Mediation UPM package. Use when a developer asks about adding ads to a Unity game, implementing rewarded, interstitial, or banner ads, setting up ad mediation, configuring ad networks, installing or updating the Ads Mediation package, troubleshooting LevelPlay namespace errors, resolving Android gradle or iOS CocoaPods dependency issues for ads, configuring ATT or privacy settings for ad compliance, tracking impression-level revenue (ILRD), initializing the LevelPlay SDK, or setting up ad unit IDs. Also use when a developer wants to monetize their Unity game with ads, asks how to get started with LevelPlay, ads, or mediation, or needs help with any part of the LevelPlay integration workflow including platform-specific setup for iOS or Android. Also use when upgrading the LevelPlay or IronSource SDK version, migrating from deprecated IronSource.Agent APIs, or migrating a game from Unity Ads to LevelPlay.

unity-technologies/localization

Sets up and configures Unity Localization, including locales, String/Asset Tables, CJK font support, and Addressables workflows. Use when the user wants to add languages to a project, translate UI text, support Asian (CJK) languages with TMP fonts, or mentions i18n, l10n, multilingual support, or making a game support multiple languages.

unity-technologies/manage-sprite-atlas

Manage SpriteAtlas using prebuild pipeline with IPreprocessBuildWithReport (DEFAULT approach). Use it to configure master atlases, variant atlases, texture settings, packing settings, and platform-specific configurations. Use when the user asks about creating sprite atlases, optimizing sprites, configuring atlas settings, adding sprites to atlases, creating variant atlases, implementing automated atlas generation, or runtime sprite atlas access. Always use prebuild approach unless user explicitly requests manual authoring.

Verwandte Skills