Class ElasticsManager
ElasticsManager can be used to add elastics simulation to supporting components. Call Initialize on manipulation start. Call ApplyHostTransform to apply elastics calculation to target transform. Elastics will continue simulating once manipulation ends through it's update function - to block the elastics auto update set EnableElasticsUpdate to false.
Namespace: Microsoft.MixedReality.Toolkit.Experimental.Physics
Assembly: cs.temp.dll.dll
Syntax
public class ElasticsManager : MonoBehaviour
Properties
ElasticTypes
Indication of which manipulation types use elastic feedback.
Declaration
public TransformFlags ElasticTypes { get; set; }
Property Value
Type | Description |
---|---|
TransformFlags |
EnableElasticsUpdate
Enables elastics simulation in the update method.
Declaration
public bool EnableElasticsUpdate { get; set; }
Property Value
Type | Description |
---|---|
Boolean |
RotationElasticConfigurationObject
Reference to the ScriptableObject which holds the elastic system configuration for rotation manipulation.
Declaration
public ElasticConfiguration RotationElasticConfigurationObject { get; set; }
Property Value
Type | Description |
---|---|
ElasticConfiguration |
RotationElasticExtent
Extent of the rotation elastic.
Declaration
public QuaternionElasticExtent RotationElasticExtent { get; set; }
Property Value
Type | Description |
---|---|
QuaternionElasticExtent |
ScaleElasticConfigurationObject
Reference to the ScriptableObject which holds the elastic system configuration for scale manipulation.
Declaration
public ElasticConfiguration ScaleElasticConfigurationObject { get; set; }
Property Value
Type | Description |
---|---|
ElasticConfiguration |
ScaleElasticExtent
Extent of the scale elastic.
Declaration
public VolumeElasticExtent ScaleElasticExtent { get; set; }
Property Value
Type | Description |
---|---|
VolumeElasticExtent |
TranslationElasticConfigurationObject
Reference to the ScriptableObject which holds the elastic system configuration for translation manipulation.
Declaration
public ElasticConfiguration TranslationElasticConfigurationObject { get; set; }
Property Value
Type | Description |
---|---|
ElasticConfiguration |
TranslationElasticExtent
Extent of the translation elastic.
Declaration
public VolumeElasticExtent TranslationElasticExtent { get; set; }
Property Value
Type | Description |
---|---|
VolumeElasticExtent |
Methods
ApplyTargetTransform(MixedRealityTransform, TransformFlags)
Applies elastics calculation to the passed targetTransform and applies to the host transform.
Declaration
public TransformFlags ApplyTargetTransform(MixedRealityTransform targetTransform, TransformFlags transformsToApply = null)
Parameters
Type | Name | Description |
---|---|---|
MixedRealityTransform | targetTransform | Precalculated target transform that's influenced by elastics |
TransformFlags | transformsToApply | Indicates which types of transforms are going to be applied. Default is Move, Rotate and Scale. |
Returns
Type | Description |
---|---|
TransformFlags | Modified transform types. |
InitializeElastics(Transform)
Initialize elastics system with the given host transform. Caches a reference to the host transform to be able to keep updating elastics after manipulation.
Declaration
public void InitializeElastics(Transform elasticsTransform)
Parameters
Type | Name | Description |
---|---|---|
Transform | elasticsTransform | host transform the elastics are applied to. |