# UGCValidationService

Roblox Engine API class from Roblox Studio 0.744.0.7441077 (version-7aaa6838d36c4448).

- Inherits from, nearest first: [Instance](https://rapi.sleaze.dev/classes/Instance.md), [Object](https://rapi.sleaze.dev/classes/Object.md)
- Tags: Not creatable, Not replicated, Service
- Memory category: Instances
- HTML page: https://rapi.sleaze.dev/classes/UGCValidationService/
- Roblox documentation: https://create.roblox.com/docs/reference/engine/classes/UGCValidationService

## Methods

### AreInstanceTreesEquivalent

```luau
UGCValidationService:AreInstanceTreesEquivalent(expectedTree: Instance, candidateTree: Instance): boolean
```

- Tags: Roblox script security

### CalculateAverageEditableCageMeshDistance

```luau
UGCValidationService:CalculateAverageEditableCageMeshDistance(innerCage: EditableMesh, outerCage: EditableMesh, refMesh: EditableMesh, innerTransform: CFrame, outerTransform: CFrame): number
```

- Tags: Roblox script security

### CalculateBodyMaxCageDistance

```luau
UGCValidationService:CalculateBodyMaxCageDistance(inputBodyParts: { any }): ...any
```

- Tags: Yields, Roblox script security

### CalculateEditableMeshInsideMeshPercentage

```luau
UGCValidationService:CalculateEditableMeshInsideMeshPercentage(editableMeshRoot: EditableMesh, editableMeshQuery: EditableMesh, meshQueryTransform: CFrame, meshQueryScale: Vector3): number
```

- Tags: Roblox script security

### CalculateEditableMeshModifiedCageBoundingBox

```luau
UGCValidationService:CalculateEditableMeshModifiedCageBoundingBox(referenceUVValues: { any }, innerCage: EditableMesh, innerTransform: CFrame, outerCage: EditableMesh, outerTransform: CFrame): ...any
```

- Tags: Roblox script security

### CalculateEditableMeshNumModifiedCageUVsInSet

```luau
UGCValidationService:CalculateEditableMeshNumModifiedCageUVsInSet(referenceUVValues: { any }, innerCage: EditableMesh, innerTransform: CFrame, outerCage: EditableMesh, outerTransform: CFrame): ...any
```

- Tags: Roblox script security

### CalculateEditableMeshTotalSurfaceArea

```luau
UGCValidationService:CalculateEditableMeshTotalSurfaceArea(editableMesh: EditableMesh, meshScale: Vector3): number
```

- Tags: Roblox script security

### CalculateEditableMeshUniqueUVCount

```luau
UGCValidationService:CalculateEditableMeshUniqueUVCount(editableMesh: EditableMesh): number
```

- Tags: Roblox script security

### CanLoadAsset

```luau
UGCValidationService:CanLoadAsset(assetId: string): boolean
```

- Tags: Yields, Roblox script security

### CheckEditableMeshInCameraFrustum

```luau
UGCValidationService:CheckEditableMeshInCameraFrustum(editableMesh: EditableMesh, meshScale: Vector3, handleWorldCF: CFrame, cameraWorldCF: CFrame): boolean
```

- Tags: Roblox script security

### CreateEditableImageFromBinaryStringRobloxOnly

```luau
UGCValidationService:CreateEditableImageFromBinaryStringRobloxOnly(value: BinaryStringValue): EditableImage
```

- Tags: Roblox script security

### CreateEditableImageOriginalSizeAsync

```luau
UGCValidationService:CreateEditableImageOriginalSizeAsync(textureId: string): EditableImage
```

- Tags: Yields, Roblox script security

### CreateEditableMeshFromBinaryStringRobloxOnly

```luau
UGCValidationService:CreateEditableMeshFromBinaryStringRobloxOnly(value: BinaryStringValue): EditableMesh
```

- Tags: Roblox script security

### DoesMeshHaveSkinningData

```luau
UGCValidationService:DoesMeshHaveSkinningData(meshId: string): boolean
```

- Tags: Yields, Roblox script security

### DoesSurfaceAppearanceMatchTexturePackAsync

```luau
UGCValidationService:DoesSurfaceAppearanceMatchTexturePackAsync(surfaceAppearance: SurfaceAppearance): boolean
```

- Tags: Yields, Roblox script security

### FetchAssetWithFormat

```luau
UGCValidationService:FetchAssetWithFormat(url: string, assetFormat: string): { Instance }
```

- Tags: Yields, Roblox script security

### GetBoundingBoxManipulationData

```luau
UGCValidationService:GetBoundingBoxManipulationData(partMeshObjects: { any }, partCFs: { any }, meshScales: { any }): { [any]: any }
```

- Tags: Roblox script security

### GetDynamicHeadEditableMeshInactiveControls

```luau
UGCValidationService:GetDynamicHeadEditableMeshInactiveControls(editableMesh: EditableMesh, controlNames: { any }): ...any
```

- Tags: Roblox script security

### GetEditableCagingRelevancyMetrics

```luau
UGCValidationService:GetEditableCagingRelevancyMetrics(innerCage: EditableMesh, outerCage: EditableMesh, refMesh: EditableMesh, offsetInner: Vector3, offsetOuter: Vector3): ...any
```

- Tags: Roblox script security

### GetEditableImageSize

```luau
UGCValidationService:GetEditableImageSize(editableImage: EditableImage): Vector2
```

- Tags: Roblox script security

### GetEditableMeshMaxNearbyVerticesCollisions

```luau
UGCValidationService:GetEditableMeshMaxNearbyVerticesCollisions(editableMesh: EditableMesh, meshScale: Vector3): number
```

- Tags: Roblox script security

### GetEditableMeshSkinningTransferJointsInfo

```luau
UGCValidationService:GetEditableMeshSkinningTransferJointsInfo(editableMesh: EditableMesh): { [string]: any }
```

- Tags: Roblox script security

### GetEditableMeshTriCount

```luau
UGCValidationService:GetEditableMeshTriCount(editableMesh: EditableMesh): number
```

- Tags: Roblox script security

### GetEditableMeshVertColors

```luau
UGCValidationService:GetEditableMeshVertColors(editableMesh: EditableMesh): { any }
```

- Tags: Roblox script security

### GetEditableMeshVerticesSimilarityRate

```luau
UGCValidationService:GetEditableMeshVerticesSimilarityRate(editableMesh: EditableMesh, meshScale: Vector3): number
```

- Tags: Roblox script security

### GetEditableMeshVerts

```luau
UGCValidationService:GetEditableMeshVerts(editableMesh: EditableMesh): { any }
```

- Tags: Roblox script security

### GetExpectedTposeRotation

```luau
UGCValidationService:GetExpectedTposeRotation(jointLabel: Enum.RigLabel, partsFolder: Instance): CFrame
```

- Tags: Roblox script security

### GetFacsDrivenJointNamesFromEditableMesh

```luau
UGCValidationService:GetFacsDrivenJointNamesFromEditableMesh(editableMesh: EditableMesh): ...any
```

- Tags: Roblox script security

### GetLayeredClothingPostDeformationSize

```luau
UGCValidationService:GetLayeredClothingPostDeformationSize(accessory: Accessory, editableMesh: EditableMesh, meshScale: Vector3): Vector3
```

- Tags: Roblox script security

### GetLayeredClothingPostDeformationSizeAsync

```luau
UGCValidationService:GetLayeredClothingPostDeformationSizeAsync(accessory: Accessory, editableMesh: EditableMesh, meshScale: Vector3): Vector3
```

- Tags: Yields, Roblox script security

### GetMaximalJointDistancesWithinFacs

```luau
UGCValidationService:GetMaximalJointDistancesWithinFacs(editableMesh: EditableMesh): { any }
```

- Tags: Roblox script security

### GetMeshDataBinaryString

```luau
UGCValidationService:GetMeshDataBinaryString(meshId: string): BinaryStringValue
```

- Tags: Yields, Roblox script security

### GetMeshVerts

```luau
UGCValidationService:GetMeshVerts(meshId: string): { any }
```

- Tags: Yields, Roblox script security

### GetMinAndMaxMeshSizeAcrossAllFacs

```luau
UGCValidationService:GetMinAndMaxMeshSizeAcrossAllFacs(editableMesh: EditableMesh): { any }
```

- Tags: Roblox script security

### GetPropertyValue

```luau
UGCValidationService:GetPropertyValue(instance: Instance, property: string): any
```

- Tags: Roblox script security

### GetSerializedSizeExcludingCollisionAsync

```luau
UGCValidationService:GetSerializedSizeExcludingCollisionAsync(inputInstances: { Instance }): number
```

- Tags: Yields, Roblox script security

### GetSkinnedJointNamesFromEditableMesh

```luau
UGCValidationService:GetSkinnedJointNamesFromEditableMesh(editableMesh: EditableMesh): ...any
```

- Tags: Roblox script security

### IsDeformedLayeredClothingOutOfRenderBounds

```luau
UGCValidationService:IsDeformedLayeredClothingOutOfRenderBounds(accessory: Accessory): boolean
```

- Tags: Yields, Roblox script security

### IsEditableMeshNumCoplanarIntersectionsOverLimit

```luau
UGCValidationService:IsEditableMeshNumCoplanarIntersectionsOverLimit(editableMesh: EditableMesh, limit: number, meshScale: Vector3, intersectBackFaces: boolean): boolean
```

- Tags: Roblox script security

### RegisterAlternateMesh

```luau
UGCValidationService:RegisterAlternateMesh(alternateId: string, binaryStringValue: BinaryStringValue)
```

- Tags: Roblox script security

### RegisterUGCValidationFunction

```luau
UGCValidationService:RegisterUGCValidationFunction(setFunction: (...any) -> ...any)
```

- Tags: Roblox script security

### ReportUGCValidationCounter

```luau
UGCValidationService:ReportUGCValidationCounter(success: boolean, validationType: string)
```

- Tags: Roblox script security

### ReportUGCValidationFailureTelemetry

```luau
UGCValidationService:ReportUGCValidationFailureTelemetry(errorType: string)
```

- Tags: Roblox script security

### ReportUGCValidationTelemetry

```luau
UGCValidationService:ReportUGCValidationTelemetry(assetType: string, data: { [string]: any })
```

- Tags: Roblox script security

### ResetCollisionFidelity

```luau
UGCValidationService:ResetCollisionFidelity(meshPart: Instance, collisionFidelity: Enum.CollisionFidelity? = Enum.CollisionFidelity.Box)
```

- Tags: Roblox script security

### ResetCollisionFidelityWithEditableMeshDataLua

```luau
UGCValidationService:ResetCollisionFidelityWithEditableMeshDataLua(meshPart: MeshPart, editableMesh: EditableMesh, collisionFidelity: Enum.CollisionFidelity? = Enum.CollisionFidelity.Box)
```

- Tags: Roblox script security

### SetMeshIdBlocking

```luau
UGCValidationService:SetMeshIdBlocking(meshPart: Instance, meshId: string)
```

- Tags: Roblox script security

### ValidateDynamicHeadEditableMesh

```luau
UGCValidationService:ValidateDynamicHeadEditableMesh(editableMesh: EditableMesh): boolean
```

- Tags: Roblox script security

### ValidateEditableMeshCageMeshIntersection

```luau
UGCValidationService:ValidateEditableMeshCageMeshIntersection(innerCage: EditableMesh, outerCage: EditableMesh, refMesh: EditableMesh): ...any
```

- Tags: Roblox script security

### ValidateEditableMeshCageNonManifoldAndHoles

```luau
UGCValidationService:ValidateEditableMeshCageNonManifoldAndHoles(editableMesh: EditableMesh): ...any
```

- Tags: Roblox script security

### ValidateEditableMeshCageUVCoincident

```luau
UGCValidationService:ValidateEditableMeshCageUVCoincident(editableMesh: EditableMesh): boolean
```

- Tags: Roblox script security

### ValidateEditableMeshCageUVTriangleArea

```luau
UGCValidationService:ValidateEditableMeshCageUVTriangleArea(editableMesh: EditableMesh): boolean
```

- Tags: Roblox script security

### ValidateEditableMeshFacialBounds

```luau
UGCValidationService:ValidateEditableMeshFacialBounds(editableMesh: EditableMesh, boundsScale: number, partSize: Vector3): boolean
```

- Tags: Roblox script security

### ValidateEditableMeshFacialExpressiveness

```luau
UGCValidationService:ValidateEditableMeshFacialExpressiveness(editableMesh: EditableMesh, minDelta: number, partSize: Vector3): number
```

- Tags: Roblox script security

### ValidateEditableMeshFullBodyCageDeletion

```luau
UGCValidationService:ValidateEditableMeshFullBodyCageDeletion(editableMesh: EditableMesh): boolean
```

- Tags: Roblox script security

### ValidateEditableMeshMisMatchUV

```luau
UGCValidationService:ValidateEditableMeshMisMatchUV(innerCage: EditableMesh, outerCage: EditableMesh): boolean
```

- Tags: Roblox script security

### ValidateEditableMeshOverlappingVertices

```luau
UGCValidationService:ValidateEditableMeshOverlappingVertices(editableMesh: EditableMesh): boolean
```

- Tags: Roblox script security

### ValidateEditableMeshTriangleArea

```luau
UGCValidationService:ValidateEditableMeshTriangleArea(editableMesh: EditableMesh): boolean
```

- Tags: Roblox script security

### ValidateEditableMeshTriangles

```luau
UGCValidationService:ValidateEditableMeshTriangles(editableMesh: EditableMesh): boolean
```

- Tags: Roblox script security

### ValidateEditableMeshUniqueUVCount

```luau
UGCValidationService:ValidateEditableMeshUniqueUVCount(editableMesh: EditableMesh, numRequired: number): boolean
```

- Tags: Roblox script security

### ValidateEditableMeshUVDuplicates

```luau
UGCValidationService:ValidateEditableMeshUVDuplicates(referenceValues: { any }, editableMesh: EditableMesh): number
```

- Tags: Roblox script security

### ValidateEditableMeshUVSpace

```luau
UGCValidationService:ValidateEditableMeshUVSpace(editableMesh: EditableMesh): boolean
```

- Tags: Roblox script security

### ValidateEditableMeshUVValuesInReference

```luau
UGCValidationService:ValidateEditableMeshUVValuesInReference(referenceValues: { any }, editableMesh: EditableMesh): boolean
```

- Tags: Roblox script security

### ValidateEditableMeshVertColors

```luau
UGCValidationService:ValidateEditableMeshVertColors(editableMesh: EditableMesh, includeAlpha: boolean? = true): boolean
```

- Tags: Roblox script security

### ValidateHSRMeshIds

```luau
UGCValidationService:ValidateHSRMeshIds(wrapLayerInstance: Instance, hsrInstance: Instance): boolean
```

- Tags: Roblox script security

### ValidateLeaderSkinnedVertsNearCageIslands

```luau
UGCValidationService:ValidateLeaderSkinnedVertsNearCageIslands(renderMesh: EditableMesh, innerCage: EditableMesh, cageUVs: { any }, referenceOrigin: CFrame, distanceThreshold: number): boolean
```

- Tags: Roblox script security

### ValidatePartBBoxAfterFullFacs

```luau
UGCValidationService:ValidatePartBBoxAfterFullFacs(headEditableMesh: EditableMesh, partEditableMesh: EditableMesh, headScale: Vector3, partScale: Vector3, boundsMaxMultiplier: number): boolean
```

- Tags: Roblox script security

### ValidatePropertiesSensible

```luau
UGCValidationService:ValidatePropertiesSensible(instance: Instance, stringLenRestrictions: { [string]: any }? = nil): ...any
```

- Tags: Roblox script security

### ValidateSkinnedEditableMesh

```luau
UGCValidationService:ValidateSkinnedEditableMesh(editableMesh: EditableMesh): boolean
```

- Tags: Roblox script security

## Inherited members

- From [Instance](https://rapi.sleaze.dev/classes/Instance.md): `Archivable`, `archivable`, `Attributes`, `AttributesReplicate`, `AttributesSerialize`, `HistoryId`, `Name`, `Parent`, `PredictionMode`, `PropertyStatusStudio`, `RobloxLocked`, `SerializedOverrides`, `SourceAssetId`, `Tags`, `UniqueId`, `numExpectedDirectChildren`, `DataCost`, `Capabilities`, `DefinesCapabilities`, `IsInSandbox`, `Sandboxed`, `AddTag`, `ClearAllChildren`, `Clone`, `Destroy`, `FindFirstAncestor`, `FindFirstAncestorOfClass`, `FindFirstAncestorWhichIsA`, `FindFirstChild`, `FindFirstChildOfClass`, `FindFirstChildWhichIsA`, `FindFirstDescendant`, `GetActor`, `GetAttribute`, `GetAttributeChangedSignal`, `GetAttributes`, `GetChildren`, `GetDebugId`, `GetDescendants`, `GetFullName`, `GetStyled`, `GetStyledPropertyChangedSignal`, `GetTags`, `HasTag`, `IsAncestorOf`, `IsDescendantOf`, `IsPropertyModified`, `QueryDescendants`, `RemoveTag`, `ResetPropertyToDefault`, `SetAttribute`, `WaitForChild`, `Remove`, `children`, `clone`, `destroy`, `findFirstChild`, `getChildren`, `isDescendantOf`, `remove`, `AncestryChanged`, `AttributeChanged`, `ChildAdded`, `ChildRemoved`, `DescendantAdded`, `DescendantRemoving`, `Destroying`, `StyledPropertiesChanged`, `childAdded`
- From [Object](https://rapi.sleaze.dev/classes/Object.md): `ClassName`, `className`, `GetPropertyChangedSignal`, `IsA`, `isA`, `Changed`
