Preparing search index...

    Class ClothVisual

    Simulates and renders cloth visuals in a Lens.

    Handles the mesh data of cloth and prepares it for cloth simulation. Also controls all the parameters of the cloth simulator and colliders.

    // @input  Component.ClothVisual clothVisual
    // @input Asset.RenderMesh mesh
    // @input Asset.Material material

    var clothVisual = script.clothVisual;

    clothVisual.bendMode = ClothVisual.BendMode.Isometric;
    clothVisual.mesh = script.mesh;
    clothVisual.mainMaterial = script.material;
    clothVisual.gravity = new vec3(0, -100, 0);
    clothVisual.stretchStiffness = 0.1;
    clothVisual.bendStiffness = 0.1;
    clothVisual.friction = 0.1;
    clothVisual.repulsionEnabled = true;
    clothVisual.repulsionOffset = 0.1;
    clothVisual.repulsionStiffness = 0.1;
    clothVisual.repulsionFriction = 0.1;
    clothVisual.iterationsPerStep = 60;
    clothVisual.frameRate = 30;
    clothVisual.colliders = script.Colliders;
    clothVisual.debugModeEnabled = false;
    clothVisual.drawCollider = true;
    clothVisual.updateNormalsEnabled = true;
    clothVisual.mergeCloseVerticesEnabled = true;
    clothVisual.onInitialized = clothInitCallback;
    clothVisual.updatePriority = 0;

    function clothInitCallback(clothVisualArg) {
    clothVisualArg.resetSimulation();
    }

    Hierarchy (View Summary)

    Index

    Properties

    bendMode: BendMode

    Select bend mode to use (Isometric bending/Linear bending).

    ClothVisual.BendMode.Isometric
    
    bendStiffness: number

    BendStiffness value.

    Lens Scripting Version 149

    0.1
    
    bendStiffnessVertexWeight: number

    BendStiffness value weight on all the VertexSettings.

    Lens Scripting Version 149

    1
    
    colliders: ColliderComponent[]

    List of colliders assigned.

    Lens Scripting Version 149

    []
    
    enabled: boolean

    If disabled, the Component will stop enacting its behavior.

    true
    
    extentsTarget: ScreenTransform

    When a ScreenTransform is present on this SceneObject, and extentsTarget is a child of this SceneObject, extentsTarget will be repositioned to match the exact area this MeshVisual is being rendered. Very useful for Image and Text components.

    null
    
    externalBodyMeshWeight: number

    The influence of the external body mesh acting on the cloth visual.

    Lens Scripting Version 167

    1
    
    friction: number

    Friction value.

    Lens Scripting Version 149

    0
    
    frictionVertexWeight: number

    Friction value weight on all the VertexSettings.

    Lens Scripting Version 149

    1
    
    gravity: vec3

    Gravity force vector.

    Lens Scripting Version 149

    (0, -10, 0)
    
    horizontalAlignment: HorizontalAlignment

    When a ScreenTransform is attached to the same SceneObject, this controls how the mesh will be positioned horizontally depending on stretchMode.

    HorizontalAlignment.Center
    
    isBeingDestroyed: boolean

    Returns true if this Component is currently being destroyed. Becomes true as soon as destruction begins via Component#destroy or destruction of its owning SceneObject, before any OnDestroyEvent callbacks fire.

    Lens Scripting Version 364

    if (!script.isBeingDestroyed) {
    // Component is still fully alive
    }
    isEnabledInHierarchy: boolean

    Returns true if this Component, its SceneObject, and all of that SceneObjects parents are enabled.

    iterationsPerStep: number

    Number of simulation iterations to perform per each step. Higher number contributes to higher quality, but can be difficult for device performance.

    10
    
    mainMaterial: Material

    Returns the first Material.

    Lens Scripting Version 304

    null
    
    mainPass: Pass

    Returns the mainPass of the mainMaterial.

    Lens Scripting Version 304

    null
    
    mainPassOverrides: PassPropertyOverrides

    Overrides the mainPass on the material, without affecting other visuals referencing the same material.

    Lens Scripting Version 304

    mass: number

    Mass value.

    Lens Scripting Version 149

    1
    
    massVertexWeight: number

    Mass value weight on all the VertexSettings.

    Lens Scripting Version 149

    1
    
    materials: Material[]

    Get the array of materials used by the MaterialMeshVisual.

    Lens Scripting Version 304

    []
    
    maxAcceleration: number

    Control for the acceleration on motion of vertices in cloth simulation.

    Lens Scripting Version 149

    10000
    
    mergeCloseVerticesEnabled: boolean

    Whether to merge close vertices (Lens Studio might split vertices when loading FBX mesh). Changing this resets the simulation.

    Lens Scripting Version 149

    true
    
    mergeCloseVerticesThreshold: number

    Threshold of close vertices. Changing this value resets the simulation.

    Lens Scripting Version 149

    1e-6
    

    Attached mesh.

    Lens Scripting Version 149

    null
    
    meshShadowMode: MeshShadowMode

    None = 0, Caster = 1, Receiver = 2

    MeshShadowMode.None
    
    onInitialized: (clothVisual: ClothVisual) => void

    Function called when the ClothVisual is initialized.

    Lens Scripting Version 149

    null
    
    propertyOverrides: PropertyOverrides

    Overrides the property on the material, without affecting other visuals referencing the same material.

    Lens Scripting Version 304

    renderOrder: number

    The order in which the visual should be rendered.

    Lens Scripting Version 323

    0
    
    repulsionEnabled: boolean

    Indicates whether we will enable collision repulsion with collider models.

    Lens Scripting Version 149

    false
    
    repulsionFriction: number

    Collision friction to dampen relative motion.

    Lens Scripting Version 149

    0
    
    repulsionOffset: number

    Indicates the offset we set when the cloth mesh is too close to the colliders.

    Lens Scripting Version 149

    0
    
    repulsionStiffness: number

    Indicates the stiffness of repulsion when collision.

    Lens Scripting Version 149

    1
    
    sceneObject: SceneObject

    The SceneObject this component is on.

    shadowColor: vec4

    Affects the color of shadows being cast by this MeshVisual. The color of the cast shadow is a mix between shadowColor and the material's base texture color. The alpha value of shadowColor controls the mixing of these two colors, with 0 = shadowColor and 1 = shadowColor * textureColor.

    (1, 1, 1, 1)
    
    shadowDensity: number

    Density of shadows cast by this MeshVisual.

    1
    
    simulatedMesh: RenderMesh

    Returns the modified simulated mesh which can be used in another RenderMeshVisual if the same simulated mesh is needed. Useful when creating effects that might require the same mesh to be rendered twice, such as with a mirror effect. Prevents the need to run a simulation twice.

    Lens Scripting Version 167

    stretchMode: StretchMode

    When a ScreenTransform is attached to the same SceneObject, this controls how the mesh will be stretched relative to the ScreenTransform's boundaries.

    StretchMode.Stretch
    
    stretchStiffness: number

    StretchStiffness Value.

    Lens Scripting Version 149

    0.5
    
    stretchStiffnessVertexWeight: number

    StretchStiffness Value weight on all the VertexSettings.

    Lens Scripting Version 149

    1
    
    uniqueIdentifier: string

    Lens Scripting Version 176

    updateNormalsEnabled: boolean

    Whether to update normals for the cloth mesh each frame in order to get reflection update.

    Lens Scripting Version 149

    false
    
    verticalAlignment: VerticalAlignment

    When a ScreenTransform is attached to the same SceneObject, this controls how the mesh will be positioned vertically depending on stretchMode.

    VerticalAlignment.Center
    

    Methods

    • Adds a collider to the list of colliders.

      Parameters

      Returns void

      Lens Scripting Version 149

    • Clears the colliders list.

      Returns void

      Lens Scripting Version 149

    • Returns all available vertex colors on cloth mesh.

      Returns vec4[]

      Lens Scripting Version 149

    • Returns the number of Materials used for rendering.

      Returns number

      Lens Scripting Version 304

    • Returns the vertex color by vertex index.

      Parameters

      • index: number

      Returns vec4

      Lens Scripting Version 149

    • Returns all the indices of vertices that are labeled by this color.

      Parameters

      Returns number[]

      Lens Scripting Version 149

    • Returns all the indices on the cloth mesh that are matching the color mask. Match means that the color has value on the channels which in colorMask is true.

      Parameters

      Returns number[]

      Lens Scripting Version 149

    • Gets binding SceneObject of the vertex.

      Parameters

      • index: number

      Returns SceneObject

      Lens Scripting Version 149

    • Returns true if the Cloth Simulation feature is supported by the current device.

      Returns boolean

      Lens Scripting Version 149

    • Returns true if the Cloth Simulation and resources are initialized. Always return false if device is not supported.

      Returns boolean

      Lens Scripting Version 149

    • Returns true if the object matches or derives from the passed in type.

      Parameters

      • type: string

      Returns boolean

    • Range maximum of the local-space axis-aligned bounding box (AABB) of the visual.

      Returns vec3

      Lens Scripting Version 156

    • Range minimum of the local-space axis-aligned bounding box (AABB) of the visual.

      Returns vec3

      Lens Scripting Version 156

    • Removes collider by its index and returns the removed collider.

      Parameters

      • index: number

      Returns ColliderComponent

      Lens Scripting Version 149

    • Resets the cloth simulation.

      Returns void

      Lens Scripting Version 149

    • Sets the order of this Visual in the render queue.

      Parameters

      • value: number

      Returns void

    • Sets the binding SceneObject for the vertex.

      Parameters

      Returns void

      Lens Scripting Version 149

    • Projects screen positions from camera's view onto the mesh's UVs. If the MeshVisual's material uses the same texture as the camera input, the MeshVisual will look identical to the part of the screen it covers.

      Parameters

      Returns void

    • Range maximum of the world-space axis-aligned bounding box (AABB) of the visual.

      Returns vec3

      Lens Scripting Version 156

    • Range minimum of the world-space axis-aligned bounding box (AABB) of the visual.

      Returns vec3

      Lens Scripting Version 156