title | description |
---|---|
Parts |
Parts are Roblox's primary building blocks. |
Class.Part|Parts
are descendants of the Class.BasePart
class and are Roblox's
primitive building blocks with properties like position, size, orientation, and
color. You can use basic parts as is, or you can apply solid
modeling operations to combine parts into more complex
shapes.
For advanced and intricate 3D models, you can also import third-party model
files as Class.MeshPart|MeshParts
as outlined in Meshes.
By default, parts are rigid bodies that follow real-world physical mechanics,
including gravity, collision, and momentum. You can connect related parts
together as a single assembly using a
Class.WeldConstraint
, or a joint like Class.Motor6D
or Class.Bone
. As an
assembly, the connected parts act as a single rigid entity, referencing a common
position, orientation, and scale.
You can use a Class.Model
container to group related parts together and access
the group as a single assembly in the Explorer. See
Models for more information.
Class.Part
objects can take the shape of blocks, spheres, cylinders, wedges, or corner wedges. In addition, Class.TrussPart
acts as a truss beam that characters can climb like a ladder.
Each part has a variety of properties that you can customize through the Properties window.
The following are commonly utilized properties:
-
To view lighted outlines around the base of anchored parts in order to visualize which parts cannot move under gravity or physics, toggle on **Anchored parts** from the [Visualization Options](../studio/ui-overview.md#visualization-options) widget in the upper‑right corner of the 3D viewport.Class.BasePart|Anchored
controls if physics affects the position of the part. When this property is set to true, the part never changes position due to gravity or any other force. You should anchor most parts in your experience or gravity and physics will affect your parts as soon as the experience runs. -
Class.BasePart|CanCollide
controls whether or not a part can collide with other parts. When this property is set to true, the part is impenetrable and the physics engine accounts for it within your experience. Conversely, when this property is set to false, the part can pass through anything, and the physics engine does not account for it. -
Class.BasePart|Transparency
sets a part's visibility to any value between the default value of 0 (fully visible) and 1 (fully transparent). If you have many partially transparent parts, they can slow down performance. To alleviate this, merge them using solid modeling.
The Part button inserts a new part into the workspace. Clicking the small dropdown arrow on the button lets you select either Block, Sphere, Wedge, Corner Wedge, or Cylinder.
To insert a `Class.TrussPart` (not available on the insertion menu), use the [Explorer](../studio/explorer.md) as outlined [here](../studio/explorer.md#insert-and-parent).As you hover over parts in the viewport, they are outlined to indicate their potential selection. You can select an outlined part by clicking it, or you can select multiple parts by holding Shift, Ctrl, or ⌘ as you hover over and click them. See here for advanced methods of selecting parts in the 3D viewport.
You can move, scale, and rotate selected parts either through modeling tools or by setting a new position, size, or orientation in the Properties window.
When using the tools, you can move, scale, or rotate parts in either world orientation or local orientation by pressing CtrlL on Windows or ⌘L on Mac. When you enable local orientation, the arrow axis indicators change to a part's local orientation, and an L indicator displays.
You can move a selected part to a new position using the Move tool (default shortcut 2) or by cursor dragging. While moving a part, you can temporarily toggle snapping by holding Shift.
To move a part by an axis dragger along the X, Y, or Z axis, click/drag an arrow pointing along the desired axis of movement.
After releasing the drag, the numerical distance indicator remains visible. If desired, fine‑tune the distance that was moved by clicking inside the indicator and entering any number.
If you drag a part by its pivot point while the Move tool is selected, the pivot will "soft snap" to surfaces and edges of nearby parts.
To move a part by cursor dragging, click anywhere on the part to grab it. If [transform snapping](../studio/model-tab.md#transform-snapping) is **enabled**, a ruler will appear as you hover, showing what point you'll grab the part by. As you drag the part around, another ruler will appear on the surface/edge of nearby parts, indicating alignment of the grab point.If transform snapping is disabled, the part will "soft snap" to surfaces and edges of nearby parts.
While cursor dragging, T and R can be used to quickly rotate the part in 90° increments around the point you picked it up by. T tilts the part 90° towards the camera, while R rotates the part 90° around the normal of the hovered surface.
To scale (resize) a selected part along the X, Y, or Z axis, use the Scale tool (default shortcut 3) and click/drag a handle. While dragging, you can temporarily toggle snapping by holding Shift.
To rotate a selected part around the X, Y, or Z axis, use the Rotate tool (default shortcut 4) and click/drag a rotation ring. While dragging, you can temporarily toggle snapping by holding Shift.
While a part is gray by default, you can change it to any color through the following methods.
Clicking the small dropdown arrow on the Color widget reveals a hexagonal color picker.
By default, clicking the overall Color button applies the chosen color to any selected parts. If you prefer a fill/paint workflow instead, toggle on Color Action as Tool and then click parts in the 3D viewport to apply the chosen color.
The Colors popup allows you to set a color through your operating system's color picker widget. To access it, navigate to the Properties window and click the small box to the left of the Class.BasePart.Color|Color
property.
To define a specific RGB color value for a part, enter an RGB value into the
Class.BasePart.Color|Color
property field.
Similar to color, you can customize a part's material to simulate real-world materials such as wood, glass, or fabric. When selecting a material, consider the following:
-
Material affects the physical traits of a part, not just its appearance. For example, the Concrete material is heavier than the Plastic material, so a concrete brick will have higher density than a plastic brick and sink in water faster.
-
Some materials have special physical effects. For example, parts will appear to glow if they are set to the Neon material.
SmoothPlastic Neon
See Materials for more information on how to apply both default and custom materials to parts.