Was ist das UNITYPACKAGE-Dateiformat?
Eine .unitypackage-Datei ist das proprietäre Format von Unity Technologies zum Verpacken und Verteilen von Unity-Assets zwischen Projekten und über den Asset Store. Unter der Haube handelt es sich um ein gzip-komprimiertes TAR-Archiv - benennen Sie die Datei in .tar.gz um, und jedes Tool wie 7-Zip kann sie dekomprimieren, aber Assets werden nur korrekt reproduziert, wenn sie über den Unity Editor importiert werden.
Im Inneren enthält das Archiv ein Verzeichnis pro Asset, benannt nach der 128-Bit-GUID des Assets. Jedes Verzeichnis enthält:
- die rohen Asset-Datenteile
- eine
.meta-Datei, die die GUID und die Importeinstellungen enthält - einen
pathname-Texteintrag, der den ursprünglichen projektrelativen Pfad aufzeichnet - ein optionales
preview.png-Vorschaubild
Dieses Layout ermöglicht es Unity, die ursprüngliche Ordnerstruktur zu rekonstruieren und Asset-übergreifende Referenzen beim Import intakt zu halten. Zum Importieren ziehen Sie die Datei auf das Unity Editor-Fenster oder verwenden Sie Assets > Import Package.
Das .unitypackage ist seit dem Start im Jahr 2010 die Standard-Distributionseinheit für den Unity Asset Store und wird auch in Unity 6 weiterhin unterstützt. Es koexistiert mit dem neueren Unity Package Manager (UPM)-Format, das diesen Ansatz durch einen einfachen Tarball und ein package.json-Manifest ersetzt, das über das Package Manager-Fenster installiert und nicht direkt importiert wird.
Das Archiv trägt eine gzip CRC-32-Prüfsumme, enthält jedoch keine kryptografische Signatur, sodass die Urheberschaft ohne externe Tools nicht verifiziert werden kann.
Sicherheit
RISIKO: MEDIUMEine .unitypackage kann C#-Skripte (.cs), Editor-Skripte und DLLs enthalten, die beim Import innerhalb des Unity Editors ausgeführt werden - ein bösartiges Paket kann also Code in Ihrem Projekt ausführen, nicht nur inerte Grafiken hinzufügen. Importieren Sie Pakete nur aus vertrauenswürdigen Quellen (der offizielle Unity Asset Store prüft Einreichungen; zufällige Foren- oder Torrent-Pakete tun dies nicht). Überprüfen Sie enthaltene Skripte/DLLs vor dem Import und behandeln Sie ein heruntergeladenes Paket wie jeden Drittanbieter-Code. Das vorherige Extrahieren als .tar.gz ermöglicht es Ihnen, den Inhalt zu inspizieren.
Formatdetails
kurz gefasstProgramme zum Öffnen von UNITYPACKAGE-Dateien
Technische Details
technische Spezifikation| Container-Format | gzip-komprimiertes POSIX-tar-Archiv, äquivalent zu einer .tar.gz-Datei |
| Magic Bytes | 0x1F 0x8B bei Byte-Offset 0 (Standard-gzip-Signatur) |
| Kompression | gzip / DEFLATE auf den gesamten Archiv-Stream angewendet |
| Interne Struktur | Ein Verzeichnis pro Asset, jedes Verzeichnis benannt nach der 128-Bit-GUID des Assets |
| Einträge pro Asset | Asset-Datendatei, .meta-Datei (GUID + Importeinstellungen), pathname-Textdatei und ein optionales preview.png-Vorschaubild |
| Asset-Identifikation | Jedem Asset wird eine 128-Bit-GUID zugewiesen, die in der zugehörigen .meta-Datei gespeichert ist; GUIDs überdauern den Transfer zwischen Projekten |
| Pfadwiederherstellung | Ein pathname-Texteintrag in jedem GUID-Ordner zeichnet den ursprünglichen projektrelativen Pfad auf, der zur Rekonstruktion des Ordnerlayouts beim Import verwendet wird |
| Integritätsprüfung | gzip CRC-32 auf dem komprimierten Stream; es wird keine kryptografische Signatur oder Code-Signierung angewendet |
| Verschlüsselung | Keine - keine integrierte Verschlüsselung; Archivinhalte sind nach der Dekomprimierung vollständig lesbar |
| MIME-Typ | application/octet-stream (primär); application/gzip wird ebenfalls von einigen Hosts verwendet |
| Typische Dateigröße | Einige Kilobyte bis mehrere Gigabyte, abhängig von der Menge der enthaltenen Texturen, Modelle und Audiodaten |
| Plattformunterstützung | Windows, macOS und Linux - überall dort, wo der Unity Editor oder ein tar-fähiges Tool verfügbar ist |
| Importmethode | Ziehen Sie die Datei auf das Unity Editor-Fenster oder verwenden Sie Assets > Import Package in der Menüleiste |
| Beziehung zu UPM | Unterscheidet sich von Unity Package Manager-Paketen, die einen einfachen Tarball mit einem package.json-Manifest verwenden und über das Package Manager-Fenster installiert statt als Assets importiert werden |
| Veröffentlicht | Mid-2000s (Unity asset export; Asset Store launched 2010) |
| Neueste Version | Legacy .unitypackage export (current Unity 6); coexists with the newer UPM/tarball package format |
| Spezifikation | docs.unity3d.com |
UNITYPACKAGE-Konvertierungen
Community Q&A
von Nutzern gefragtNoch keine Fragen - stellen Sie die erste Frage zu UNITYPACKAGE-Dateien.