🎮 UnityDocs

El Package Manager (UPM)

Cómo gestionar paquetes en Unity con el Package Manager: qué son los paquetes oficiales, cómo añadirlos (incluidos los preview/experimental y por Git URL), el archivo manifest.json y por qué conviene fijar versiones en un proyecto de equipo.

📄 ArtículoPrincipiante✅ RevisadoUnity 6.0 LTSActualizado 2026-07-17
DificultadConceptual Código Matemáticas
Tiempo📖 Lectura 7 min

Qué es un paquete#

Unity es modular: muchas funciones (Input System, URP, Cinemachine, Addressables, TextMeshPro...) no vienen "de fábrica" sino como paquetes que añades cuando los necesitas. El Package Manager (Window → Package Manager) es donde los instalas, actualizas y quitas.

De dónde salen#

En el desplegable Packages de la ventana eliges la fuente:

  • Unity Registry: los paquetes oficiales de Unity (lo más habitual).
  • In Project: los que ya tienes instalados.
  • My Assets: lo que compraste en la Asset Store.
  • Built-in: módulos del motor que puedes activar/desactivar.

Buscas, seleccionas la versión y pulsas Install. Muchos paquetes traen escenas de Samples que puedes importar para aprender.

Añadir por nombre o por Git#

Para paquetes que no salen en la lista (experimentales, o de un repositorio):

  • Add package by name: escribes el ID (com.unity.cinemachine) y, opcionalmente, la versión.
  • Add package from git URL: instalas directamente desde un repositorio Git (muchas librerías de la comunidad se distribuyen así).
Paquetes de la comunidad: OpenUPM y Git

Herramientas muy usadas (por ejemplo el framework de DI VContainer, o UniTask) se instalan por Git URL o vía OpenUPM (un registro alternativo). Es la forma estándar de traer utilidades que no están en el registro oficial, sin copiar código a mano.

El manifest.json#

Todo lo instalado se anota en Packages/manifest.json (texto). Es la lista de dependencias del proyecto:

JSON
{
  "dependencies": {
    "com.unity.inputsystem": "1.11.2",
    "com.unity.render-pipelines.universal": "17.0.3",
    "com.unity.cinemachine": "3.1.2"
  }
}
Fija versiones en proyectos de equipo

Como el manifest.json va en el control de versiones (ver Git para Unity), todo el equipo comparte las mismas versiones de paquetes. No lo edites a mano a la ligera y evita saltar de versión mayor a mitad de producción: un cambio de major (por ejemplo Cinemachine 2 → 3) puede romper APIs. Actualiza a conciencia y prueba.

Errores frecuentes#

  • Copiar código de utilidades a mano en vez de instalar el paquete (te pierdes actualizaciones).
  • Actualizar un paquete a una versión mayor a mitad de proyecto sin revisar rupturas de API.
  • Borrar Packages/ o manifest.json sin entenderlo (rompe el proyecto).
  • Instalar paquetes preview/experimental en producción sin ser consciente de que pueden cambiar.
  • No versionar el manifest.json → cada miembro del equipo con paquetes distintos.

Ponte a prueba#

📝 Pon a prueba lo aprendido

Resumen#

Unity es modular: sus funciones (Input System, URP, Cinemachine, Addressables...) son paquetes que gestionas en el Package Manager. Los instalas desde el Unity Registry, por nombre o por Git URL (comunidad, OpenUPM). Todo queda anotado en Packages/manifest.json, que va al control de versiones para que el equipo comparta las mismas versiones: fíjalas y actualiza con cabeza para no romper APIs a mitad de proyecto.

Fuentes y para profundizar