Roblox UtilitiesDevlHub Roblox Documentation

Procedural models

Procedural models let you build parameter-driven 3D objects using code or AI.

ProceduralModels are a type of parameter-driven Model that let you build and generate 3D objects using code. Instead of manually editing a model's content, you define its structure through a generator module and a set of attributes. When those attributes change, or when the model is resized, the generator automatically runs to update the model.

Procedural models make it easier to:

  • Adjust models non-destructively by changing parameters instead of rebuilding them. For example, changing the StepSize value on a spiral staircase automatically regenerates the staircase with the updated number of steps.
  • Automatically integrate with existing Studio systems like undo/redo, Team Create, and dragger tools by implementing a single OnGenerate function.
  • Keep performance high, with models behaving like standard objects until their parameters change.
  • Generate content both at edit time and at runtime, using the same system in Studio and in-game.
  • Share parametized models on the Creator Store, making assets more flexible and customizable.
Example: Procedural model that dynamically adds more chairs as the table's width or length increases.