軸を中心に回転するブロックモデル。
PartAは赤、PartBは黒のブロック。
WeldConstraintはPartAとPartBをグループ化してからModelからWeldConstraintを抽出。
PartBはアンカーにする。
スクリプトの数値を変えて回転速度を変えることも可能。
回転ブロックにデススクリプトを付けてオービーの障害物にすることも可能。
もちろんPartAが無い一つのブロックのみのローリングブロックも可能。
このモデルをワークスペースに入れる

WeldConstraint

Script A
local tween = game:GetService("TweenService")
local part = script.Parent
local timeTaken = 5 -- Time it takes for one full rotation
while true do
local changePerSpin = timeTaken/0.03
part.CFrame = part.CFrame * CFrame.Angles(math.rad(360/changePerSpin),0,0)
wait()
end