Reference API Roblox

Engine API

Website

Related

Reference API Roblox

WrapLayer

The WrapLayer object defines a 3D accessory's inner and outer surfaces and other properties related to layering accessories. These surfaces, or the Inner Cage and Outer Cage, are similar to collision boxes, and describe the surfaces of which other 3D accessories can be placed without clipping or breaking.

Member index 14

HistoryMember
726AutoSkin: WrapLayerAutoSkin
726BindOffset: CFrame
726Color: Color3
726DebugMode: WrapLayerDebugMode
726Enabled: bool
726Order: int
726Puffiness: float
726ReferenceMeshContent: Content
645ReferenceMeshId: ContentId
726ReferenceOrigin: CFrame
726ReferenceOriginWorld: CFrame
726ShrinkFactor: float
inherited from BaseWrap
726CageMeshContent: Content
726CageMeshId: ContentId
726CageOrigin: CFrame
726CageOriginWorld: CFrame
726HSRAssetId: ContentId
726ImportOrigin: CFrame
726ImportOriginWorld: CFrame
603GetCageOffset(): Vector3
475GetFaces(cageType: CageType): Array
629GetUVs(cageType: CageType): Array
475GetVertices(cageType: CageType): Array
499IsHSRReady(): bool
573ModifyVertices(cageType: CageType, vertices: Array): null
639VerticesModified(vertices: Array)
inherited from Instance
726Archivable: bool
726Capabilities: SecurityCapabilities
726IsInSandbox: bool
726Name: string
726Parent: Instance
726PredictionMode: PredictionMode
726Sandboxed: bool
726UniqueId: UniqueId
576AddTag(tag: string): null
573ClearAllChildren(): null
462Clone(): Instance
573Destroy(): null
486FindFirstAncestor(name: string): Instance
486FindFirstAncestorOfClass(className: string): Instance
486FindFirstAncestorWhichIsA(className: string): Instance
486FindFirstChild(name: string, recursive: bool = false): Instance
486FindFirstChildOfClass(className: string): Instance
486FindFirstChildWhichIsA(className: string, recursive: bool = false): Instance
486FindFirstDescendant(name: string): Instance
563GetActor(): Actor
486GetAttribute(attribute: string): Variant
462GetAttributeChangedSignal(attribute: string): RBXScriptSignal
631GetAttributes(): Dictionary
648GetChildren(): Instances
462GetDebugId(scopeLength: int = 4): string
707GetDescendants(): Instances
486GetFullName(): string
706GetStyled(name: string, selector: string?): Variant
657GetStyledPropertyChangedSignal(property: string): RBXScriptSignal
576GetTags(): Array
576HasTag(tag: string): bool
486IsAncestorOf(descendant: Instance): bool
486IsDescendantOf(ancestor: Instance): bool
664IsPropertyModified(property: string): bool
698QueryDescendants(selector: string): Instances
573Remove(): null
576RemoveTag(tag: string): null
664ResetPropertyToDefault(property: string): null
573SetAttribute(attribute: string, value: Variant): null
462WaitForChild(childName: string, timeOut: double): Instance
726children(): Instances
726clone(): Instance
726destroy(): null
726findFirstChild(name: string, recursive: bool = false): Instance
726getChildren(): Instances
726isDescendantOf(ancestor: Instance): bool
726remove(): null
462AncestryChanged(child: Instance, parent: Instance)
462AttributeChanged(attribute: string)
462ChildAdded(child: Instance)
462ChildRemoved(child: Instance)
462DescendantAdded(descendant: Instance)
462DescendantRemoving(descendant: Instance)
500Destroying()
657StyledPropertiesChanged()
726childAdded(child: Instance)
inherited from Object
726ClassName: string
726className: string
647GetPropertyChangedSignal(property: string): RBXScriptSignal
647IsA(className: string): bool
726isA(className: string): bool
647Changed(property: string)

Removed member index 1

HistoryMember

Description

The WrapLayer object defines a 3D accessory's inner and outer surfaces and other properties related to layering accessories. These surfaces, or the Inner Cage and Outer Cage, are similar to collision boxes, and describe the surfaces of which other 3D accessories can be placed without clipping or breaking.

Internally, WrapLayer also uses the UV layout of the Inner and Outer cages to match coordinates to another 3D object's cage. This powers the deformation of objects around differently shaped avatars and underlying accessories.

History 80

Members 14

AutoSkin

TypeDefault
WrapLayerAutoSkin

History 3

BindOffset

TypeDefault
CFrame

This property is intended for fine-tuning purposes and is highly optional.

CFrame to adjust a binding point for a clothing item mesh. Allows for fine-tuning of clothing items (slight adjustment of position/rotation to get a unique look) in contexts such as community-made avatar editors.

History 8

Color

TypeDefault
Color3

Sets color used for the debug rendering. See WrapTarget.DebugMode

This property is not scriptable. It cannot be accessed by script code.
This property is not replicated. Its interface does not cross the network boundary.

History 5

Tags: [NotReplicated, NotScriptable]

DebugMode

TypeDefault
WrapLayerDebugMode

Allows switching between different debugging visualization modes for cage meshes.

This property is not scriptable. It cannot be accessed by script code.
This property is not replicated. Its interface does not cross the network boundary.

History 5

Tags: [NotReplicated, NotScriptable]

Enabled

TypeDefault
bool

Allows for disabling of the WrapLayer object as if it does not exist.

History 5

Order

TypeDefault
int

Controls the composition order for layered clothing. Clothing items with higher order will appear on top of clothing items with lower order. If two items have the same order, the deformer composition order is ambiguous and depends on serialization order. Default value is 1.

History 6

  • 726 Change Default of Order from 1 to
  • 553 Change Default of Order from to 1
  • 529 Change WriteSecurity of Order from PluginSecurity to None
  • 486 Change ThreadSafety of Order from ReadOnly to ReadSafe
  • 462 Change ThreadSafety of Order from to ReadOnly
  • 458 Add Order

Puffiness

TypeDefault
float

Controls how much underlying clothing items inflate the current clothing item.

Valid range is -1 to 1. A value of -1 compresses the clothing, body, and all underlying layers such that the clothing itself takes the shape of the body. A value of 0 makes the clothing item fit as if it was the only piece of clothing being worn, compressing all underlying layers. A value of 1 (default) never compresses anything and infinitely inflates over underlying clothing items.

History 6

ReferenceMeshContent

TypeDefault
Content

History 5

ReferenceMeshId

TypeDefault
ContentId

AssetID for reference mesh used to define Inner Cage of a 3D object

Reference mesh is used to define standard topology and UV coordinates for index matching. It is expected that for all catalog avatars, this will point to one of 15 standard reference meshes provided by Roblox. But for some NPCs or a custom avatar system, this might point to other meshes.

Note: this property is set up automatically by the FBX importer

History 4

ReferenceOrigin

TypeDefault
CFrame

Reference mesh offset relative to parent MeshPart (in the parent MeshPart space)

Note: this property is set up automatically by the FBX importer

History 8

ReferenceOriginWorld

TypeDefault
CFrame

Reference mesh offset relative to parent MeshPart (in the world space)

Note: this property is set up automatically by the FBX importer

This property is not replicated. Its interface does not cross the network boundary.
This property is read-only. Its value can be read, but it cannot be modified.

History 8

Tags: [ReadOnly, NotReplicated]

ShrinkFactor

TypeDefault
float

This property is intended for fine-tuning purposes and is highly optional.

Allows slight shrinking/expanding of the resulting render mesh, without affecting any other layers. This is useful in rare cases when the clothing mesh does not precisely fit the underlying clothing layers (the cage is usually slightly overestimated atop the real shape to avoid layer interpenetration). Even slight overestimation has the tendency to accumulate, especially when there are a lot of layers. While this is usually not critical, some items like backpacks may be problematic.

Valid range is -1 to 1. A value of -1 will maximally expand while a value of 1 will maximally shrink. A value of 0 (default) has no effect.

History 5

Removed members 1

Settings