AssetReference
An object that manages the case where an object holds a reference to an asset and needs to be notified when changes occur in the asset. e.g. notifications include load, add and remove events.
const reference = new pc.AssetReference('textureAsset', this, this.app.assets, {
load: this.onTextureAssetLoad,
add: this.onTextureAssetAdd,
remove: this.onTextureAssetRemove
}, this);
reference.id = this.textureAsset.id;
Summary
Properties
id | Get or set the asset id which this references. |
url | Get or set the asset url which this references. |
Details
Constructor
AssetReference(propertyName, parent, registry, callbacks, [scope])
Create a new AssetReference instance.
const reference = new pc.AssetReference('textureAsset', this, this.app.assets, {
load: this.onTextureAssetLoad,
add: this.onTextureAssetAdd,
remove: this.onTextureAssetRemove
}, this);
reference.id = this.textureAsset.id;
Parameters
propertyName | string | The name of the property that the asset is stored under, passed into callbacks to enable updating. |
parent | Asset, object | The parent object that contains the asset reference, passed into callbacks to enable updating. Currently an asset, but could be component or other. |
registry | AssetRegistry | The asset registry that stores all assets. |
callbacks | object | A set of functions called when the asset state changes: load, add, remove. |
callbacks.load | object | The function called when the asset loads load(propertyName, parent, asset). |
callbacks.add | object | The function called when the asset is added to the registry add(propertyName, parent, asset). |
callbacks.remove | object | The function called when the asset is remove from the registry remove(propertyName, parent, asset). |
callbacks.unload | object | The function called when the asset is unloaded unload(propertyName, parent, asset). |
scope | object | The scope to call the callbacks in. |