Class Importer
Provides asynchronous functionality for importing FBX and OBJ models into Unity at runtime. Leverages coroutines to perform non-blocking imports, converting ufbx scenes into Unity GameObjects with meshes, materials, textures, animations, cameras, and lights.
Inherited Members
Namespace: FBXImporter
Assembly: FBXImporter.dll
Syntax
public class Importer
Remarks
Online documentation: https://ricardoreis.net/fbximporter/docs/
Properties
DefaultLoadOpts
Gets the default model loading options configured for Unity's coordinate system. Ensures models align with Unity's right-handed coordinate system (Y-up, Z-forward).
Declaration
public static ufbx.ufbx_load_opts DefaultLoadOpts { get; }
Property Value
Type | Description |
---|---|
ufbx.ufbx_load_opts |
Methods
ImportFromFile(string, ufbx_load_opts, ufbx_bake_opts, MaterialConverter, Action<Exception>, AdditionalLoadingOptions)
Imports a model from a file (FBX or OBJ) synchronously.
Declaration
public static GameObject ImportFromFile(string filename, ufbx.ufbx_load_opts loadOpts, ufbx.ufbx_bake_opts bakeOpts, MaterialConverter materialConverter, Action<Exception> onError, Importer.AdditionalLoadingOptions additionalLoadingOptions = null)
Parameters
Type | Name | Description |
---|---|---|
string | filename | Path to the model file. |
ufbx.ufbx_load_opts | loadOpts | ufbx options for loading the model. |
ufbx.ufbx_bake_opts | bakeOpts | ufbx options for baking animations. |
MaterialConverter | materialConverter | Converts ufbx materials to Unity Materials. |
Action<Exception> | onError | Action to invoke on import errors. |
Importer.AdditionalLoadingOptions | additionalLoadingOptions | Additional loading options. |
Returns
Type | Description |
---|---|
GameObject | The root GameObject of the loaded model. |
ImportFromFile(string, ufbx_load_opts, ufbx_bake_opts, MaterialConverter, Action<Exception>, out ImportResult, AdditionalLoadingOptions)
Imports a model from a file (FBX or OBJ) synchronously.
Declaration
public static GameObject ImportFromFile(string filename, ufbx.ufbx_load_opts loadOpts, ufbx.ufbx_bake_opts bakeOpts, MaterialConverter materialConverter, Action<Exception> onError, out Importer.ImportResult importResult, Importer.AdditionalLoadingOptions additionalLoadingOptions = null)
Parameters
Type | Name | Description |
---|---|---|
string | filename | Path to the model file. |
ufbx.ufbx_load_opts | loadOpts | ufbx options for loading the model. |
ufbx.ufbx_bake_opts | bakeOpts | ufbx options for baking animations. |
MaterialConverter | materialConverter | Converts ufbx materials to Unity Materials. |
Action<Exception> | onError | Action to invoke on import errors. |
Importer.ImportResult | importResult | Stores the imported GameObject, resources and tracks loading progress. |
Importer.AdditionalLoadingOptions | additionalLoadingOptions | Additional loading options. |
Returns
Type | Description |
---|---|
GameObject | The root GameObject of the loaded model. |
ImportFromFileAsync(ImportResult, string, ufbx_load_opts, ufbx_bake_opts, MaterialConverter, AdditionalLoadingOptions)
Asynchronously imports a model from a file (FBX or OBJ) using a Unity coroutine.
Declaration
public static IEnumerator ImportFromFileAsync(Importer.ImportResult importResult, string filename, ufbx.ufbx_load_opts loadOpts, ufbx.ufbx_bake_opts bakeOpts, MaterialConverter materialConverter, Importer.AdditionalLoadingOptions additionalLoadingOptions = null)
Parameters
Type | Name | Description |
---|---|---|
Importer.ImportResult | importResult | Stores the imported GameObject, resources and tracks loading progress. |
string | filename | Path to the model file. |
ufbx.ufbx_load_opts | loadOpts | ufbx options for loading the model. |
ufbx.ufbx_bake_opts | bakeOpts | ufbx options for baking animations. |
MaterialConverter | materialConverter | Converts ufbx materials to Unity Materials. |
Importer.AdditionalLoadingOptions | additionalLoadingOptions | Additional loading options. |
Returns
Type | Description |
---|---|
IEnumerator | An IEnumerator for use in a Unity coroutine to manage the import process. |
ImportFromStream(Stream, ufbx_load_opts, ufbx_bake_opts, MaterialConverter, Action<Exception>, out ImportResult, string, AdditionalLoadingOptions)
Imports a model from a stream (FBX or OBJ) synchronously.
Declaration
public static GameObject ImportFromStream(Stream stream, ufbx.ufbx_load_opts loadOpts, ufbx.ufbx_bake_opts bakeOpts, MaterialConverter materialConverter, Action<Exception> onError, out Importer.ImportResult importResult, string filename = null, Importer.AdditionalLoadingOptions additionalLoadingOptions = null)
Parameters
Type | Name | Description |
---|---|---|
Stream | stream | Stream containing model data. |
ufbx.ufbx_load_opts | loadOpts | ufbx options for loading the model. |
ufbx.ufbx_bake_opts | bakeOpts | ufbx options for baking animations. |
MaterialConverter | materialConverter | Converts ufbx materials to Unity Materials. |
Action<Exception> | onError | Action to invoke on import errors. |
Importer.ImportResult | importResult | Stores the imported GameObject, resources and tracks loading progress. |
string | filename | Optional filename for resolving external files. |
Importer.AdditionalLoadingOptions | additionalLoadingOptions | Additional loading options. |
Returns
Type | Description |
---|---|
GameObject | The root GameObject of the loaded model. |
ImportFromStream(Stream, ufbx_load_opts, ufbx_bake_opts, MaterialConverter, Action<Exception>, string, AdditionalLoadingOptions)
Imports a model from a stream (FBX or OBJ) synchronously.
Declaration
public static GameObject ImportFromStream(Stream stream, ufbx.ufbx_load_opts loadOpts, ufbx.ufbx_bake_opts bakeOpts, MaterialConverter materialConverter, Action<Exception> onError, string filename = null, Importer.AdditionalLoadingOptions additionalLoadingOptions = null)
Parameters
Type | Name | Description |
---|---|---|
Stream | stream | Stream containing model data. |
ufbx.ufbx_load_opts | loadOpts | ufbx options for loading the model. |
ufbx.ufbx_bake_opts | bakeOpts | ufbx options for baking animations. |
MaterialConverter | materialConverter | Converts ufbx materials to Unity Materials. |
Action<Exception> | onError | Action to invoke on import errors. |
string | filename | Optional filename for resolving external files. |
Importer.AdditionalLoadingOptions | additionalLoadingOptions | Additional loading options. |
Returns
Type | Description |
---|---|
GameObject | The root GameObject of the loaded model. |
ImportFromStreamAsync(ImportResult, Stream, ufbx_load_opts, ufbx_bake_opts, MaterialConverter, string, AdditionalLoadingOptions)
Asynchronously imports a model from a stream (FBX or OBJ) using a Unity coroutine.
Declaration
public static IEnumerator ImportFromStreamAsync(Importer.ImportResult importResult, Stream stream, ufbx.ufbx_load_opts loadOpts, ufbx.ufbx_bake_opts bakeOpts, MaterialConverter materialConverter, string filename = null, Importer.AdditionalLoadingOptions additionalLoadingOptions = null)
Parameters
Type | Name | Description |
---|---|---|
Importer.ImportResult | importResult | Stores the imported GameObject, resources and tracks loading progress. |
Stream | stream | Stream containing model data. |
ufbx.ufbx_load_opts | loadOpts | ufbx options for loading the model. |
ufbx.ufbx_bake_opts | bakeOpts | ufbx options for baking animations. |
MaterialConverter | materialConverter | Converts ufbx materials to Unity Materials. |
string | filename | Optional filename for resolving external files. |
Importer.AdditionalLoadingOptions | additionalLoadingOptions | Additional loading options. |
Returns
Type | Description |
---|---|
IEnumerator | An IEnumerator for use in a Unity coroutine to manage the import process. |