Para la mayoría de veces, usted puede escoger cualquier nombre que quiera para las carpetas que usted crea para organizar su proyecto. Sin embargo, hay un número de nombres de carpeta que Unity va a interpretar como una instrucción que el contenido de la carpeta debe ser tratado de una manera especial. Por ejemplo, los scripts del editor deben colocarse en una carpeta llamada Editor con el fin de que funcionen bien. La lista completa de los nombres especiales de carpeta utilizados por Unity se da abajo.
La carpeta Assets es la carpeta principal que contiene los assets que pueden ser utilizados por un proyecto de Unity. El contenido de la vista del proyecto (Project view) corresponden directamente a los contenidos de la carpeta Assets. La mayoría de funciones API asume que todo está ubicado en la carpeta Assets por lo que no requieren que sean mencionados explícitamente. Sin embargo, algunas funciones sí necesitan tener la carpeta Assets incluida como parte del nombre de una ruta (eg, ciertas funciones en la clase AssetDatabase).
Todos los scripts que son colocados en una carpeta llamada Editor (o una sub-carpeta dentro de esta) serán tratados como scripts del editor en vez de scripts de tiempo de ejecución. Tales scripts están diseñados para agregarle funcionalidad a Unity en sí durante el desarrollo y no están disponibles en el juego final en tiempo de ejecución. Más de una carpeta Editor se puede utilizar en un proyecto a la vez pero tenga en cuenta que la ubicación exacta de una carpeta Editor afecta el tiempo en el cual lo scripts serán compilados relativo a otros scripts. Ver la página acerca de Carpetas Especiales y Orden de Compilación de Scripts para una descripción completa de esto. Tenga en cuenta: Unity no permitirá que los componentes derivados de MonoBehaviour sean asignados a GameObjects si los scripts están en la carpeta del Editor.
Los scripts del editor hacen uso de archivos assets cargados en demanda utilizando la función EditorGUIUtility.Load. Esta función buscará los archivos assets en una carpeta llamada Editor Default Resources que debería ser colocada directamente dentro de la carpeta Assets.
Los “Gizmos” de Unity le permiten a usted agregar gráficas a la scene view (vista de escena) para ayudarlo a visualizar detalles de diseño que por el contrario serían invisibles. La función Gizmos.DrawIcon coloca un icono en la escena para que funcione como un marcador para un objeto especial o posición. El archivo de imagen utilizado para dibujar este icono debe ser colocado en una carpeta llamada Gizmos con el fin de que sea ubicado por la función DrawIcon.
Unity le permite a usted agregar Plugins a un proyecto para extender las características disponibles a Unity. Los Plugins son DLLs nativos que son escritos típicamente en C/C++. Pueden acceder código de librerías de terceros, llamados al sistema y otras cosas que no son proporcionadas por Unity. Los plugins deben ser colocados en una carpeta llamada Plugins para que sean detectados por Unity y, como la carpeta del Editor, esto afecta el orden en el que los scripts son compilados. Ver carpetas especiales y orden de compilación de scripts por detalles, y Plugin Inspector para información acerca del control del plugin en la plataforma.
Por lo general, usted crea instancias de assets en la escena que son utilizadas en el gameplay pero Unity también le permite a usted cargar assets en demande desde un script. Usted hace esto colocando assets en una carpeta llamada Resources o una sub-carpeta (usted en realidad puede tener cualquier número de carpetas Resources y colocarlas dónde sea en el proyecto). Estos assets se pueden cargar utilizando la función Resources.Load.
Cuando usted importe un paquete de standard asset (menú: Assets > Import Package) los assets son colocados en una carpeta llamada Standard Assets. Al igual que contener los assets, estas carpetas también tienen un efecto en el orden de compilación scripts; ver la página acerca de carpetas especiales y orden de compilación scripts por detalles adicionales.
La mayoría de assets del juego son incorporados directamente al reproductor construido pero hay algunos casos dónde usted quiere que el asset esté disponible como un archivo separado en su formato original. Por ejemplo, reproducir un video en iOS, usted debe acceder el archivo del video desde el filesystem (sistema de archivos) en vez de utilizarlo como una MovieTexture. Si usted coloca un archivo en una carpeta llamada StreamingAssets, este será copiado sin cambiar a la maquina objetivo dónde estará disponible de una carpeta específica. Ver la página acerca de Streaming Assets para detalles adicionales.
Para construcciones del webplayer, Unity le permite a usted proporcionar una página de alojamiento personalizada para entregar el reproductor. La página anfitriona es proporcionada en la forma de un template que puede incorpora información especifica del proyecto como su nombre. Estos templates (planillas) deben ser colocados en una carpeta llamada WebPlayerTemplates para que estén disponibles a Unity; ver la página acerca de utilizar Web Player templates para detalles adicionales. También vale la pena tener en cuenta que cualquier script colocado en la carpeta WebPlayerTemplates será ignorado por el compilador. Colocar los archivos scripts puede ser una manera útil temporal de pararlos en ser compilados, digamos si contienen código incompleto que evitará que el juego corra.
Durante el proceso de importación, Unity completamente ignora los siguientes archivos y carpetas en la carpeta Assets (o una sub-carpeta dentro de esta):
Esto es utilizado para prevenir que se importen archivos especiales y temporales creados por el sistema operativo u otras aplicaciones.