Unity supports many different types of assets and most common image file types. It uses asset importers to process and convert external files into assets you can use in your project.
Unity supports the following kinds of files:
Unity uses importers to process and convert external files into assets that can be used in your project. Each file type has a corresponding importer that handles its specific requirements.
Unity supports many asset file types via its collection of built-in importers. Most of these importers are implemented in the Unity Editor’s native code. They provide the import functionality for most of Unity’s basic asset types, such as 3D models, textures, and audio files.
Most importers have a corresponding class in the UnityEditor
namespace that exposes the same configurable import settings as the InspectorA Unity window that displays information about the currently selected GameObject, asset or project settings, allowing you to inspect and edit the values. More info
See in Glossary window for the asset type. They also have corresponding pre-process and post-process callbacks on the AssetPostprocessor
class so you can define custom behavior to run before or after asset import. For example, the import settings for the AudioImporter
are configurable in the Audio Clip Inspector window or from code with the AudioImporter
class. You can also create custom pre-import or post-import behavior for audio assets with AssetPostprocessor.OnPreprocessorAudio
and AssetPostprocessor.OnPostprocessAudio
respectively. This pattern applies for most major asset types.
Unity uses the FBX file format as its importing chain. For a list of 3D modeling software that Unity supports, refer to Model file formats.
Importer | Description | Supported file formats |
---|---|---|
FBXImporter | Imports 3D model files. For more information, refer to Importing a model. |
|
Mesh3DSImporter | Imports 3D Studio Max files. For more information, refer to Importing a model. | .3ds |
SketchUpImporter | Imports SketchUp files. For more information, refer to SketchUp Import Settings and SketchUpImporter . |
.skp |
SpeedTreeImporter | Imports SpeedTree files. For more information, refer to SpeedTree Import Settings window and SpeedTreeImporter . |
|
SubstanceImporter | Imports Substance files. | .sbsar |
Importer | Description | Supported file formats |
---|---|---|
AudioImporter | Imports audio files. For more information, refer to Audio files and AudioImporter . |
|
VideoClipImporter | Imports video files. For more information, refer to Video sources and VideoClipImporter . |
|
Unity imports image files as textures. Unity supports most common image file types, such as .bmp
, .tif
, .tga
, .jpg
, and .psd
. For more information, refer to Import a texture.
Importer | Description | Supported file formats |
---|---|---|
IHVImageFormatImporter | Imports specialized image formats. For more information, refer to IHVImageFormatImporter . |
|
TextureImporter | Imports texture files. For more information, refer to Import a texture and TextureImporter . |
|
There are a range of asset types that are native to the Unity Editor. You can create assets of these types using Editor features. When you create these, Unity saves the files which represent them as asset files in the Assets
folder of your project. These include animations, curves, gradients, masksCan refer to a Sprite Mask, a UI Mask, or a Layer Mask More info
See in Glossary, materialsAn asset that defines how a surface should be rendered. More info
See in Glossary, and presets.
Importer | Description | Supported file formats |
---|---|---|
NativeFormatImporter | Imports Unity’s native asset formats. |
|
PrefabImporter | Imports prefabAn asset type that allows you to store a GameObject complete with components and properties. The prefab acts as a template from which you can create new object instances in the scene. More info See in Glossary files. For more information, refer to Creating prefabs. |
.prefab |
VisualEffectImporter | Imports visual effect files. |
|
You can add managed and native plug-ins such as .dll
files into your project to expand the functionality of your application. Unity also supports assembly definitions to help you create and organize your scripts into assemblies.
Importer | Description | Supported file formats |
---|---|---|
AssemblyDefinitionImporter | Imports assembly definition files. For more information, refer to Introduction to assemblies in Unity. | .asmdef |
AssemblyDefinitionReferenceImporter | Imports assembly definition reference files. For more information, refer to Introduction to assemblies in Unity. | .asmref |
DefaultImporter | Imports system files. |
|
PackageManifestImporter | Imports package manifest files. For more information, refer to Package manifestEach package has a manifest, which provides information about the package to the Package Manager. The manifest contains information such as the name of the package, its version, a description for users, dependencies on other packages (if any), and other details. More info See in Glossary. |
.json |
PluginImporter | Imports plug-in files. For more information, refer to Import and configure plug-ins and PluginImporter . |
|
Importer | Description | Supported file formats |
---|---|---|
ComputeShaderImporter | Imports compute shader files. For more information, refer to Writing compute shaders and ComputeShader . |
.compute |
RayTracingShaderImporter | Imports ray tracingThe process of generating an image by tracing out rays from the Camera through each pixel and recording the color contribution at the hit point. This is an alternative to rasterization. raytracing See in Glossary shader files. For more information, refer to Introduction to shaders. |
.raytrace |
ShaderImporter | Imports shader files. For more information, refer to Introduction to shaders and ShaderImporter . |
|
Importer | Description | Supported file formats |
---|---|---|
LocalizationImporter | Imports localization files. | .po |
TextScriptImporter | Imports text and script files. For more information, refer to Text assets. |
|
TrueTypeFontImporter | Imports font files. For more information, refer to Font assets and TrueTypeFontImporter . |
|
Scripted importers allow you to write your own custom importers for formats that Unity doesn’t natively support. Some of Unity’s own built-in importers are implemented as scripted importers because they are written in C# in core packages, rather than within the Unity Editor’s native code itself. Unity imports scripted importer assets after native importer assets.
Importer | Description | File formats |
---|---|---|
SpeedTree9Importer | Imports SpeedTree 9 files. For more information, refer to SpeedTree9Importer . |
.st9 |
StyleSheetImporter | Imports Unity style sheet files. For more information, refer to Introduction to USS. | .uss |
UIElementsViewImporter | Imports Unity XML files. For more information, refer to Structure UI with UXML. | .uxml |