Class GltfAssetBase
Base component for code-less loading of glTF files
Inherited Members
Namespace: GLTFast
Syntax
public abstract class GltfAssetBase : MonoBehaviour
Properties
CurrentSceneId
Scene ID of the recently instantiated scene. Null if there was no scene instantiated (successfully).
Declaration
public int? CurrentSceneId { get; protected set; }
Property Value
Type | Description |
---|---|
Nullable<Int32> |
Importer
Instance used for loading the glTF's content
Declaration
public GltfImport Importer { get; protected set; }
Property Value
Type | Description |
---|---|
GltfImport |
ImportSettings
glTF import settings
Declaration
public ImportSettings ImportSettings { get; set; }
Property Value
Type | Description |
---|---|
ImportSettings |
IsDone
Indicates whether the glTF was loaded (no matter if successfully or not)
Declaration
public bool IsDone { get; }
Property Value
Type | Description |
---|---|
Boolean | True when loading routine ended, false otherwise. |
SceneCount
Number of scenes loaded
Declaration
public int SceneCount { get; }
Property Value
Type | Description |
---|---|
Int32 |
SceneNames
Array of scenes' names (entries can be null, if not specified)
Declaration
public string[] SceneNames { get; }
Property Value
Type | Description |
---|---|
String[] |
Methods
ClearScenes()
Removes previously instantiated scene(s)
Declaration
public abstract void ClearScenes()
Dispose()
Releases previously allocated resources.
Declaration
public void Dispose()
GetDefaultInstantiator(ICodeLogger)
Returns an instance of the default instantiator
Declaration
protected abstract IInstantiator GetDefaultInstantiator(ICodeLogger logger)
Parameters
Type | Name | Description |
---|---|---|
ICodeLogger | logger | Custom logger to use with the instantiator |
Returns
Type | Description |
---|---|
IInstantiator | Default instantiator instance |
GetMaterial(Int32)
Returns an imported glTF material. Note: Asset has to have finished loading before!
Declaration
public Material GetMaterial(int index = 0)
Parameters
Type | Name | Description |
---|---|---|
Int32 | index | Index of material in glTF file. |
Returns
Type | Description |
---|---|
Material | glTF material if it was loaded successfully and index is correct, null otherwise. |
Instantiate(ICodeLogger)
Creates an instance of the main scene
Declaration
public async Task<bool> Instantiate(ICodeLogger logger = null)
Parameters
Type | Name | Description |
---|---|---|
ICodeLogger | logger | Used for message reporting |
Returns
Type | Description |
---|---|
Task<Boolean> | True if instantiation was successful. |
InstantiateScene(Int32, GameObjectInstantiator)
Creates an instance of the scene specified by the scene index.
Declaration
protected async Task<bool> InstantiateScene(int sceneIndex, GameObjectInstantiator instantiator)
Parameters
Type | Name | Description |
---|---|---|
Int32 | sceneIndex | Index of the scene to be instantiated |
GameObjectInstantiator | instantiator | Receives scene construction calls |
Returns
Type | Description |
---|---|
Task<Boolean> | True if instantiation was successful. |
InstantiateScene(Int32, ICodeLogger)
Creates an instance of the scene specified by the scene index.
Declaration
public virtual async Task<bool> InstantiateScene(int sceneIndex, ICodeLogger logger = null)
Parameters
Type | Name | Description |
---|---|---|
Int32 | sceneIndex | Index of the scene to be instantiated |
ICodeLogger | logger | Used for message reporting |
Returns
Type | Description |
---|---|
Task<Boolean> | True if instantiation was successful. |
Load(String, IDownloadProvider, IDeferAgent, IMaterialGenerator, ICodeLogger)
Method for manual loading with custom IDownloadProvider and IDeferAgent.
Declaration
public virtual async Task<bool> Load(string gltfUrl, IDownloadProvider downloadProvider = null, IDeferAgent deferAgent = null, IMaterialGenerator materialGenerator = null, ICodeLogger logger = null)
Parameters
Type | Name | Description |
---|---|---|
String | gltfUrl | URL of the glTF file. |
IDownloadProvider | downloadProvider | Download Provider for custom loading (e.g. caching or HTTP authorization) |
IDeferAgent | deferAgent | Defer Agent takes care of interrupting the loading procedure in order to keep the frame rate responsive. |
IMaterialGenerator | materialGenerator | Used to convert glTF materials to Material instances |
ICodeLogger | logger | Used for message reporting |
Returns
Type | Description |
---|---|
Task<Boolean> | Async Task that loads the glTF's contents |
OnDestroy()
Called before GameObject is destroyed
Declaration
protected virtual void OnDestroy()
PostInstantiation(IInstantiator, Boolean)
Callback that is called after instantiation
Declaration
protected virtual void PostInstantiation(IInstantiator instantiator, bool success)
Parameters
Type | Name | Description |
---|---|---|
IInstantiator | instantiator | instantiator that was used |
Boolean | success | True if instantiation was successful, false otherwise |