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 |
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.