Skip to content
Roblox API Reference

ProceduralModel

Procedural models support edit-time procedural generation. Instead of manually constructing model content, a procedural model generates its contents automatically in response to parameter changes.
Memory category
BaseParts
Own members
6
Inherited members
114
Subclasses
0
Siblings
5

Properties43

Inherited fromObject2

Property categoryData

Inherited fromInstance21

Property categoryBehavior

Property categoryData

Property categoryPermissions

Inherited fromPVInstance2

Property categoryPivot

  • Editor-only property that displays and edits the pivot's CFrame relative to the instance, moving only the pivot and leaving the instance in place.
    • Not replicated
    • Not scriptable

Property categoryTransform

  • Editor-only property that reads and sets the world CFrame of the PVInstance's pivot, moving the entire instance when changed from the Studio Properties window.
    • Not replicated
    • Not scriptable
Inherited fromModel14

Property categoryAppearance

Property categoryBehavior

Property categoryData

Property categoryPivot

Defined byProceduralModel4

Property categoryBehavior

  • ProceduralModel.Dirty: boolean = false
    • Hidden
    • Not scriptable
    • Capabilities: Basic
  • ProceduralModel.GenerationError: string = ""
    Stores errors that the generator module might encounter during generation.
    • Read only
    • Capabilities: Basic
    • Save only
  • ProceduralModel.Generator: ModuleScript
    A reference to a ModuleScript that contains code which defines how the ProceduralModel generates its contents in response to parameter changes.
    • Capabilities: Basic

Property categoryTransform

  • ProceduralModel.Size: Vector3 = Vector3.new(12, 12, 12)
    Defines the bounding volume used for generation.
    • Capabilities: Basic

Methods67

Inherited fromObject3
  • Get an event that fires when a given property of the object changes.
    Parameters
    ParameterDescription
    property: string
    The property to connect to.
    Returns
    TypeDescription
    RBXScriptSignal
    A signal that fires whenever the property changes.
  • Object:IsA(className: string): boolean
    Returns true if an object's class matches or inherits from a given class.
    • Custom Lua state
    • Thread safe
    Parameters
    ParameterDescription
    className: string
    The class against which the Object's class will be checked. Case-sensitive.
    Returns
    TypeDescription
    boolean
    Describes whether the Object's class matched or is a subclass of the given class.
  • Object:isA(className: string): boolean
    Deprecated: This deprecated function is a variant of Object:IsA() which should be used instead.
    • Deprecated
    • Custom Lua state
    Parameters
    Parameter
    className: string
    Returns
    Type
    boolean

    Use IsA instead.

Inherited fromInstance39
Inherited fromPVInstance2
Inherited fromModel21
Defined byProceduralModel2
  • ProceduralModel:ForceGeneration(): boolean
    Immediately runs any pending generation instead of waiting for the scheduled regeneration.
    • Capabilities: Basic
    Returns
    TypeDescription
    boolean
    Whether the ProceduralModel is up to date after the call: true if generation completed successfully or nothing needed to be regenerated, false otherwise.
  • ProceduralModel:WaitForGenerationAsync(): boolean
    Waits for generation to complete after making parameter changes.
    • Yields
    • Capabilities: Basic
    Returns
    TypeDescription
    boolean
    Was the generation successful?

Events10

Inherited fromObject1
Inherited fromInstance9