1. Workspace に Part を1つ追加します。
  2. 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

By schilverberch

ROBLOXでゲームを作ろう! 一緒にプログラミングを学びましょう。

コメントを残す