Component:AssetMultiplexer: Difference between revisions

From Resonite Wiki
add info, no longer stub
add information about referencemultidriver
 
(2 intermediate revisions by one other user not shown)
Line 6: Line 6:
|Name=Asset Multiplexer`1
|Name=Asset Multiplexer`1
}}
}}
The AssetMultiplexer component is used to drive a field to one asset from a list, based on its position in the list.
 
The '''AssetMultiplexer''' component is used to drive an asset field from a list of assets and an index within the list.


<!--T:2-->
<!--T:2-->
== Fields ==
== Fields ==
{{Table ComponentFields
{{Table ComponentFields
|Target|AssetRef`1|TypeString0=AssetRef<IAsset`1>| The field to drive.
|Target|{{RootFieldType|DriveRef`1|[[Type:AssetRef`1|AssetRef`1]]&lt;A&gt;}}|TypeAdv0=true| The field to drive.
|Index|Int| Which element in <code>Assets</code> to drive to <code>Target</code>
|Index|Int| Which element in <code>Assets</code> to drive to <code>Target</code>
|Assets|Asset`1|TypeString2=SyncAssetList<IAsset`1>| The list of assets to multiplex between.
|Assets|{{RootFieldType|SyncAssetList`1|A}}|TypeAdv2=true| The list of assets to multiplex between.
}}
}}


Line 19: Line 20:
== Usage ==
== Usage ==
Add the list of assets you want to use through the SyncAssetList<IAsset`1> area, then add in your assets into the items. Then you can specify the field through the Target you wanna switch between different assets for. Changing the Index will change which asset the Target has in it.
Add the list of assets you want to use through the SyncAssetList<IAsset`1> area, then add in your assets into the items. Then you can specify the field through the Target you wanna switch between different assets for. Changing the Index will change which asset the Target has in it.
{{Note|This component directly drives a value, not a reference. Therefore, trying to combine it with other components using an [[Type:IAssetProvider|IAssetProvider]]<T> type, such as a [[Component:ReferenceMultiDriver|ReferenceMultiDriver]], will not work. To drive by reference and thus interop this component, use a [[Component:ReferenceMultiDriver|ReferenceMultiDriver]]<IAssetProvider<T>>|information}}


<!--T:4-->
<!--T:4-->
Line 29: Line 32:
[[Category:Generics{{#translation:}}]]
[[Category:Generics{{#translation:}}]]
[[Category:Components{{#translation:}}|Asset Multiplexer`1]]
[[Category:Components{{#translation:}}|Asset Multiplexer`1]]
[[Category:Generic Components{{#translation:}}|Asset Multiplexer`1]]
[[Category:Components:Assets:Utility{{#translation:}}|Asset Multiplexer`1]]
[[Category:Components:Assets:Utility{{#translation:}}|Asset Multiplexer`1]]

Latest revision as of 21:45, 16 June 2024

Component image 
Asset Multiplexer`1 component as seen in the Scene Inspector


The AssetMultiplexer component is used to drive an asset field from a list of assets and an index within the list.

Fields

Fields
Name Type Description
persistent Bool Determines whether or not this item will be saved to the server.
UpdateOrder Int Controls the order in which this component is updated.
Enabled Bool Controls whether or not this component is enabled.
Target direct DriveRef`1<AssetRef`1<A>> The field to drive.
Index Int Which element in Assets to drive to Target
Assets list of A The list of assets to multiplex between.

Usage

Add the list of assets you want to use through the SyncAssetList<IAsset`1> area, then add in your assets into the items. Then you can specify the field through the Target you wanna switch between different assets for. Changing the Index will change which asset the Target has in it.

This component directly drives a value, not a reference. Therefore, trying to combine it with other components using an IAssetProvider<T> type, such as a ReferenceMultiDriver, will not work. To drive by reference and thus interop this component, use a ReferenceMultiDriver<IAssetProvider<T>>

Examples

Using an asset multiplexer to allow your avatar to switch shirts via changing the texture, a pattern changer for a music visualizer.

Related Components