GeometryService
Service containing geometric operations.
| Memory category | Instances |
|---|
Member index 11
Removed member index 1
| History | Member | |
|---|---|---|
| 652 | StitchMeshesAsync(meshParts: Array): ContentId |
Description
Service containing geometric operations not directly related to specific objects.
History 29
- 711 Add CreateSolidPrimitive
- 710 Add GenerateFragmentSites
- 710 Change Parameters of FragmentAsync from (part: BasePart, fragmentSites: Array, options: Dictionary = nil, mainPartSites: Array = {}) to (part: BasePart, sites: Array, options: Dictionary = nil)
- 699 Add SweepPartAsync
- 698 Add FragmentAsync
- 695 Add TranscodeModel
- 692 Add TranscodeMesh
- 652 Remove StitchMeshesAsync
- 645 Change ReturnType of StitchMeshesAsync from Content to ContentId
- 645 Change Parameters of HashMeshAsync from (meshId: Content) to (meshId: ContentId)
- 600 Add StitchMeshesAsync
- 600 Add HashMeshAsync
- 598 Change ReturnType of UnionAsync from Objects to Array
- 598 Change Parameters of UnionAsync from (part: Instance, parts: Objects, options: Dictionary = nil) to (part: Instance, parts: Array, options: Dictionary = nil)
- 598 Change ReturnType of SubtractAsync from Objects to Array
- 598 Change Parameters of SubtractAsync from (part: Instance, parts: Objects, options: Dictionary = nil) to (part: Instance, parts: Array, options: Dictionary = nil)
- 598 Change ReturnType of IntersectAsync from Objects to Array
- 598 Change Parameters of IntersectAsync from (part: Instance, parts: Objects, options: Dictionary = nil) to (part: Instance, parts: Array, options: Dictionary = nil)
- 598 Change Parameters of CalculateConstraintsToPreserve from (source: Instance, destination: Objects, options: Dictionary = nil) to (source: Instance, destination: Array, options: Dictionary = nil)
- 591 Change Parameters of UnionAsync from (part: Instance, parts: Objects, options: Variant) to (part: Instance, parts: Objects, options: Dictionary = nil)
- 591 Change Parameters of SubtractAsync from (part: Instance, parts: Objects, options: Variant) to (part: Instance, parts: Objects, options: Dictionary = nil)
- 591 Change Parameters of IntersectAsync from (part: Instance, parts: Objects, options: Variant) to (part: Instance, parts: Objects, options: Dictionary = nil)
- 591 Change Parameters of CalculateConstraintsToPreserve from (source: Instance, destination: Objects, options: Variant) to (source: Instance, destination: Objects, options: Dictionary = nil)
- 590 Change ReturnType of CalculateConstraintsToPreserve from Dictionary to Array
- 581 Add UnionAsync
- 581 Add SubtractAsync
- 581 Add IntersectAsync
- 581 Add CalculateConstraintsToPreserve
- 581 Add GeometryService
Members 11
CalculateConstraintsToPreserve
| Parameters (3) | Default | |
|---|---|---|
| source | Instance | |
| destination | Array | |
| options | Dictionary | nil |
| Returns (1) | ||
| Array | ||
Returns a table of Constraints and Attachments which you may choose to preserve, along with their respective parents. Iterating over this table lets you decide whether to reparent recommended constraints and attachments to their respective parents.
For more information and detailed examples, see https://create.roblox.com/docs/parts/solid-modeling#in-experience-solid-modeling.
| Thread safety | Unsafe |
|---|
History 4
- 598 Change Parameters of CalculateConstraintsToPreserve from (source: Instance, destination: Objects, options: Dictionary = nil) to (source: Instance, destination: Array, options: Dictionary = nil)
- 591 Change Parameters of CalculateConstraintsToPreserve from (source: Instance, destination: Objects, options: Variant) to (source: Instance, destination: Objects, options: Dictionary = nil)
- 590 Change ReturnType of CalculateConstraintsToPreserve from Dictionary to Array
- 581 Add CalculateConstraintsToPreserve
CreateSolidPrimitive
| Parameters (2) | Default | |
|---|---|---|
| type | SolidPrimitiveType | |
| options | Dictionary | nil |
| Returns (1) | ||
| MeshPart | ||
| Thread safety | Unsafe |
|---|
History 1
FragmentAsync
| Parameters (3) | Default | |
|---|---|---|
| part | BasePart | |
| sites | Array | |
| options | Dictionary | nil |
| Returns (1) | ||
| Array | ||
Breaks a BasePart into multiple MeshPart instances, according to the pattern of points passed in, by using voronoi decomposition. Terrain is not supported. Similar to Clone(), the returned parts have no set Parent.
For more information and detailed examples, see https://create.roblox.com/docs/parts/solid-modeling#in-experience-solid-modeling.
| Thread safety | Unsafe |
|---|
History 2
- 710 Change Parameters of FragmentAsync from (part: BasePart, fragmentSites: Array, options: Dictionary = nil, mainPartSites: Array = {}) to (part: BasePart, sites: Array, options: Dictionary = nil)
- 698 Add FragmentAsync
GenerateFragmentSites
| Parameters (2) | Default | |
|---|---|---|
| part | BasePart | |
| options | Dictionary | nil |
| Returns (1) | ||
| Array | ||
Provides an array of positions which can easily be passed into FragmentAsync() to perform common types of destruction: Fragmenting an entire BasePart into pieces, or a localized area of a BasePart into pieces.
The positions outputted are partially random, so the output should not be relied on to look exactly the same as the first time it is run with the same parameters.
For more information and detailed examples, see https://create.roblox.com/docs/parts/solid-modeling#in-experience-solid-modeling. Luau code to mimic this API has also been provided on that page, which can be freely modified if a slightly different effect is desired.
| Thread safety | Unsafe |
|---|
History 1
HashMeshAsync
| Parameters (1) | ||
|---|---|---|
| meshId | ContentId | |
| Returns (1) | ||
| string | ||
| Security | RobloxScriptSecurity |
|---|---|
| Thread safety | Unsafe |
History 2
- 645 Change Parameters of HashMeshAsync from (meshId: Content) to (meshId: ContentId)
- 600 Add HashMeshAsync
IntersectAsync
| Parameters (3) | Default | |
|---|---|---|
| part | Instance | |
| parts | Array | |
| options | Dictionary | nil |
| Returns (1) | ||
| Array | ||
Creates one or more PartOperations or MeshParts from the intersecting geometry of multiple parts. Primitive Parts, PartOperations, and MeshParts are supported as inputs, but not Terrain.
Similarly to Clone(), the returned parts have no set Parent. In most cases, you should parent the results to the same place as the main part, then Destroy() the original parts.
This function replaces BasePart:IntersectAsync(). Go to that page for a description of the differences.
For more information and detailed examples, see https://create.roblox.com/docs/parts/solid-modeling#in-experience-solid-modeling.
| Thread safety | Unsafe |
|---|
History 4
- 598 Change ReturnType of IntersectAsync from Objects to Array
- 598 Change Parameters of IntersectAsync from (part: Instance, parts: Objects, options: Dictionary = nil) to (part: Instance, parts: Array, options: Dictionary = nil)
- 591 Change Parameters of IntersectAsync from (part: Instance, parts: Objects, options: Variant) to (part: Instance, parts: Objects, options: Dictionary = nil)
- 581 Add IntersectAsync
SubtractAsync
| Parameters (3) | Default | |
|---|---|---|
| part | Instance | |
| parts | Array | |
| options | Dictionary | nil |
| Returns (1) | ||
| Array | ||
Creates one or more PartOperations or MeshParts consisting of the space occupied by one part minus the space occupied by the other parts. Primitive Parts, PartOperations, and MeshParts are supported as inputs, but not Terrain.
Similarly to Clone(), the returned parts have no set Parent. In most cases, you should parent the results to the same place as the main part, then Destroy() the original parts.
This function replaces BasePart:SubtractAsync(). Go to that page for a description of the differences.
For more information and detailed examples, see https://create.roblox.com/docs/parts/solid-modeling#in-experience-solid-modeling.
| Thread safety | Unsafe |
|---|
History 4
- 598 Change ReturnType of SubtractAsync from Objects to Array
- 598 Change Parameters of SubtractAsync from (part: Instance, parts: Objects, options: Dictionary = nil) to (part: Instance, parts: Array, options: Dictionary = nil)
- 591 Change Parameters of SubtractAsync from (part: Instance, parts: Objects, options: Variant) to (part: Instance, parts: Objects, options: Dictionary = nil)
- 581 Add SubtractAsync
SweepPartAsync
| Parameters (3) | Default | |
|---|---|---|
| part | BasePart | |
| cframes | Array | |
| options | Dictionary | nil |
| Returns (1) | ||
| MeshPart | ||
Creates a MeshPart which has the shape of the input part
stretched/dragged through the given set of CFrame positions. The exact
shape of the result is defined as the union of the convex hulls of each
adjacent pair of CFrames.
If a single CFrame is provided, the result will be a convex hull of the
input part.
For more information and detailed examples, see https://create.roblox.com/docs/parts/solid-modeling#in-experience-solid-modeling.
| Thread safety | Unsafe |
|---|
History 1
- 699 Add SweepPartAsync
TranscodeMesh
| Parameters (1) | ||
|---|---|---|
| instance | Instance | |
| Returns (1) | ||
| null | ||
| Security | RobloxScriptSecurity |
|---|---|
| Thread safety | Unsafe |
History 1
- 692 Add TranscodeMesh
TranscodeModel
| Parameters (1) | ||
|---|---|---|
| instance | Instance | |
| Returns (1) | ||
| Array | ||
| Security | RobloxScriptSecurity |
|---|---|
| Thread safety | Unsafe |
History 1
- 695 Add TranscodeModel
UnionAsync
| Parameters (3) | Default | |
|---|---|---|
| part | Instance | |
| parts | Array | |
| options | Dictionary | nil |
| Returns (1) | ||
| Array | ||
Creates one or more PartOperations or MeshParts consisting of the space occupied by one part plus the space occupied by the other parts. Primitive Parts, PartOperations, and MeshParts are supported as inputs, but not Terrain.
Similarly to Clone(), the returned parts have no set Parent. In most cases, you should parent the results to the same place as the main part, then Destroy() the original parts.
This function replaces BasePart:UnionAsync(). Go to that page for a description of the differences.
For more information and detailed examples, see https://create.roblox.com/docs/parts/solid-modeling#in-experience-solid-modeling.
| Thread safety | Unsafe |
|---|
History 4
- 598 Change ReturnType of UnionAsync from Objects to Array
- 598 Change Parameters of UnionAsync from (part: Instance, parts: Objects, options: Dictionary = nil) to (part: Instance, parts: Array, options: Dictionary = nil)
- 591 Change Parameters of UnionAsync from (part: Instance, parts: Objects, options: Variant) to (part: Instance, parts: Objects, options: Dictionary = nil)
- 581 Add UnionAsync
Removed members 1
StitchMeshesAsync
| Parameters (1) | ||
|---|---|---|
| meshParts | Array | |
| Returns (1) | ||
| ContentId | ||
| Security | RobloxScriptSecurity |
|---|---|
| Thread safety | Unsafe |
History 3
- 652 Remove StitchMeshesAsync
- 645 Change ReturnType of StitchMeshesAsync from Content to ContentId
- 600 Add StitchMeshesAsync