- Workspace に Part を1つ追加します。
- Part に Script を追加します。
local part = script.Parent
part.Transparency = 0.5 -- 透明度50%、1で完全な透明
モデルを透明にする
モデルを透明にするには、その中に含まれるパーツを1つ1つ透明に設定しなくてはなりません。
Modelの透明度を変える関数を作る
Model内の全Partの透明度を変える関数です。valueは0から1の値になります。1が透明度100%です。
巨大なモデルを扱う場合は、ループ内にwaitを入れた方がベストです。ただし、あまり多くwaitを入れると遅くなります。
function setTransparency(model,value)
for _, child in pairs(model:GetDescendants()) do
if child:IsA('BasePart') then
child.Transparency = value
end
end
end
一瞬でモデルを透明にする方法
Touched イベントや、MouseClick イベントなどで使用できます。
透明にしたからといっても通り抜けは出来ません。通り抜けられるようにするには、PartのCanCollideをFlaseに設定しなくてはなりません。
setTransparency(Model,1)
徐々にモデルを透明にする方法
0.1秒ごとに10%だけ透明にします。
for t = 0,1,0.1 do
setTransparency(Model,t)
wait(0.1)
end
ModelのCanCollideを変更する関数
通り抜けできる、できないを設定する関数です。f は true か false です。falseが通り抜けできます。
function setCanCollide(model,f)
for _, child in pairs(model:GetDescendants()) do
if child:IsA('BasePart') then
child.CanCollide = f
end
end
end