SpecialMesh
The SpecialMesh object applies a mesh to a BasePart depending on the MeshType property.
Memory category | PhysicsParts |
---|
Member index 1
Description
The SpecialMesh object applies a mesh to a BasePart depending on the MeshType property. A number of options are available.
- Brick - A block shape, equivalent to a BlockMesh
- Cylinder - A cylinder, identical to a Part with a Part.Shape of 'Cylinder'
- FileMesh - A user uploaded Mesh, equivalent to FileMesh that a texture can be applied to using the FileMesh.TextureId property
- Head - A character head shape
- Sphere - A sphere shape, similar to a Part with a Part.Shape of 'Ball' but can be freely resized on all axis
- Wedge - A wedge shape, identical to a WedgePart
- Torso - A block with sloped sides, due to be deprecated
Note, each SpecialMesh.MeshType will scale differently when using DataModelMesh.Scale, for more information on this please see the page on DataModelMesh.Scale. The SpecialMesh object also exposes the DataModelMesh.Offset property.
It is important to remember that when using a SpecialMesh, only the appearance of a part changes. The collision model of the part remains the same. For example, a character will not be able to walk correctly over a mesh as the mesh geometry is not taken into account.
SpecialMesh vs MeshPart
There are currently two ways of using a developer created mesh. They are using a SpecialMesh with the SpecialMesh.FileType set to 'FileMesh', or by using a MeshPart. Although, on the whole, the MeshPart object has superseded the SpecialMesh there are some differences developers should be aware of.
- BasePart.Material displays correctly on the mesh when using a MeshPart and not when using a SpecialMesh
- MeshParts include the MeshPart.CollisionFidelity property, meaning the collision model of a MeshPart can be set to resemble the geometry of the mesh. The SpecialMesh object by contrast, uses the parent BaseParts collision model
- The mesh of a MeshPart scales on all axis depending on the Size property of the MeshPart, the mesh of a SpecialMesh does not
- The SpecialMesh object includes the Offset and Scale properties whereas MeshParts do not
- The MeshId property of a SpecialMesh can be changed by a Script or LocalScript during runtime. The MeshId property of a MeshPart can not.
History 8
- 553 Change Default of MeshType from to Head
- 486 Change ThreadSafety of MeshType from ReadOnly to ReadSafe
- 462 Change ThreadSafety of MeshType from to ReadOnly
- 454 Change MemoryCategory of SpecialMesh from Instances to PhysicsParts
- 452 Change MemoryCategory of SpecialMesh from PhysicsParts to Instances
- 453 Change MemoryCategory of SpecialMesh from Instances to PhysicsParts
- 47 Add MeshType
- 47 Add SpecialMesh
Members 1
MeshType
Type | Default | |
---|---|---|
MeshType | Head |
The mesh that the SpecialMeshobject applies to the BasePart depends on the MeshType property. A number of options are available.
- Brick - A block shape, equivalent to a BlockMesh
- Cylinder - A cylinder, identical to a Part with a Part.Shape of 'Cylinder'
- FileMesh - A user uploaded Mesh, equivalent to FileMesh that a texture can be applied to using the FileMesh.TextureId property
- Head - A character head shape
- Sphere - A sphere shape, similar to a Part with a Part.Shape of 'Ball' but can be freely resized on all axis
- Wedge - A wedge shape, identical to a WedgePart
- Torso - A block with sloped sides, due to be deprecated
Note, each MeshType will scale differently when using DataModelMesh.Scale, for more information on this please see the page on DataModelMesh.Scale.
Thread safety | ReadSafe |
---|---|
Category | Data |
Loaded/Saved | true |