Smoke

사용되지 않는 항목 표시

*이 콘텐츠는 AI(베타)를 사용해 번역되었으며, 오류가 있을 수 있습니다. 이 페이지를 영어로 보려면 여기를 클릭하세요.

연기는 여러 입자 방출 클래스 중 하나입니다.같은 종류의 다른 입자 방출기와 마찬가지로, 연기 개체는 부모로 지정된 경우 (예: ) 또는 그러한 경우 내부의 내에서 입자를 방출합니다.ParticleEmitter 클래스와 비교하면, 스모크는 다양한 사용자 지정 속성과 특수 메서드(예: ParticleEmitter.Lifetime 또는 ParticleEmitter:Emit() )가 부족합니다.시간에 쫓겨 빠른 특수 효과를 만드는 것이 유용하지만, 더 자세한 작업을 수행하려면 ParticleEmitter 대신 사용하는 것이 좋습니다.

Smoke.Enabled가 끄기이 개체에서 방출되는 입자는 수명이 만료될 때까지 계속 렌더링됩니다.연기 개체의 Instance.Parentnil (및/또는 Instance:Destroy() 편집)으로 설정되면 모든 입자가 즉시 사라집니다.이 효과가 원하지 않는 경우, 먼 위치에서 부모 개체를 숨기고, Debris를 사용하여 몇 초 후에 연기를 제거하여 마지막 입자가 만료될 수 있도록 기회를 제공합니다.이 개체에는 ParticleEmitter:Clear() 메서드가 없지만 Instance.Parentnil 로 설정하고 동일한 효과를 위해 동일한 개체로 되돌릴 수 있습니다.

연기 입자는 부모인 BasePart 의 중심에서만 방출됩니다.연기 개체를 대신 Attachment에 부모로 지정하면 입자의 시작 위치를 사용자 지정할 수 있습니다.

코드 샘플

이 코드 샘플은 재귀 검색을 사용하여 Smoke 개체를 모든 Fire 개체에 추가합니다. 이렇게 하여 Workspace 에 있는 모든 개체에 객체를 추가합니다.

모든 화재에 연기 추가

local function recurseForFire(object)
-- 연기가 없는 화염 개체를 찾았는지 확인
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- 이 화재에 연기 효과 만들기
local smoke = Instance.new("Smoke")
smoke.Color = Color3.new(0, 0, 0)
smoke.Opacity = 0.15
smoke.RiseVelocity = 4
smoke.Size = object.Size / 4
smoke.Parent = object.Parent
end
-- 화염 개체 검색 계속하기
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)

요약

속성

  • 병렬 읽기

    연기 입자의 색상을 결정합니다.

  • 병렬 읽기

    연기 입자가 방출되는지 여부를 결정합니다.

  • 숨김
    복제되지 않음
    병렬 읽기
  • 복제되지 않음
    병렬 읽기

    불투명한 연기 입자가 렌더링되는 방식을 결정합니다.

  • 복제되지 않음
    병렬 읽기

    연기 입자의 속도를 결정합니다.

  • 복제되지 않음
    병렬 읽기

    새로 방출되는 연기 입자의 크기를 결정합니다.

  • 병렬 읽기

    입자 효과의 속도를 제어하는 값은 0-1 사이입니다.

속성

Color

병렬 읽기

색상 속성은 기존 및 미래의 모든 입자를 방출하는 Smoke 개체의 색상을 결정합니다.그것은 색상이 하나이고 ParticleEmitter.Color가 아닌 것을 제외하고 동일하게 행동합니다 ColorSequence .약간의 흰색 색상은 멋진 안개 효과를 만들고, 매우 불투명한 검은색은 개체를 아름답게 보완할 수 있습니다.

코드 샘플

이 코드 샘플은 재귀 검색을 사용하여 Smoke 개체를 모든 Fire 개체에 추가합니다. 이렇게 하여 Workspace 에 있는 모든 개체에 객체를 추가합니다.

모든 화재에 연기 추가

local function recurseForFire(object)
-- 연기가 없는 화염 개체를 찾았는지 확인
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- 이 화재에 연기 효과 만들기
local smoke = Instance.new("Smoke")
smoke.Color = Color3.new(0, 0, 0)
smoke.Opacity = 0.15
smoke.RiseVelocity = 4
smoke.Size = object.Size / 4
smoke.Parent = object.Parent
end
-- 화염 개체 검색 계속하기
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)

Enabled

병렬 읽기

Enabled 속성, 마치 ParticleEmitter.Enabled와 같이, 연기 입자가 방출되는지 여부를 결정합니다.이미 방출된 모든 입자는 수명이 만료될 때까지 계속 렌더링됩니다.이 속성은 나중에 필요할 때까지 미리 만들어진 연기 효과를 제거하는 데 유용합니다.연기 입자는 개체의 가 설정되면 파괴되므로, 이 속성은 기존 입자가 파이어 개체를 완전히 파괴하기 전에 만료할 수 있는 기회를 제공하는 데 유용합니다.아래 함수를 참조하십시오.


local Debris = game:GetService("Debris")
local part = script.Parent
function stopSmoke(smoke)
smoke.Enabled = false -- No more new particles
Debris:AddItem(smoke, 10) -- Remove the object after a delay (after existing particles have expired)
end
stopSmoke(part.Smoke)

코드 샘플

이 코드 샘플은 재귀 검색을 사용하여 Smoke 개체를 모든 Fire 개체에 추가합니다. 이렇게 하여 Workspace 에 있는 모든 개체에 객체를 추가합니다.

모든 화재에 연기 추가

local function recurseForFire(object)
-- 연기가 없는 화염 개체를 찾았는지 확인
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- 이 화재에 연기 효과 만들기
local smoke = Instance.new("Smoke")
smoke.Color = Color3.new(0, 0, 0)
smoke.Opacity = 0.15
smoke.RiseVelocity = 4
smoke.Size = object.Size / 4
smoke.Parent = object.Parent
end
-- 화염 개체 검색 계속하기
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)

LocalTransparencyModifier

숨김
복제되지 않음
병렬 읽기

Opacity

복제되지 않음
병렬 읽기

불투명도는 연기 입자의 불투명도를 결정합니다.범위 [0, 1]에 있어야 합니다.이 속성은 부품의 또는 파편 방출기의 과 반대로 작동합니다. 값 0은 완전히 보이지 않고, 1은 완전히 보입니다.

Roblox가 입자에 사용하는 텍스처는 부분적으로 투명하므로 이 속성을 1로 설정하면 렌더링된 연기에서도 투명도가 유지됩니다.

코드 샘플

이 코드 샘플은 재귀 검색을 사용하여 Smoke 개체를 모든 Fire 개체에 추가합니다. 이렇게 하여 Workspace 에 있는 모든 개체에 객체를 추가합니다.

모든 화재에 연기 추가

local function recurseForFire(object)
-- 연기가 없는 화염 개체를 찾았는지 확인
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- 이 화재에 연기 효과 만들기
local smoke = Instance.new("Smoke")
smoke.Color = Color3.new(0, 0, 0)
smoke.Opacity = 0.15
smoke.RiseVelocity = 4
smoke.Size = object.Size / 4
smoke.Parent = object.Parent
end
-- 화염 개체 검색 계속하기
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)

RiseVelocity

복제되지 않음
병렬 읽기

RiseVelocity는 ParticleEmitter.SpeedFire.Heat와 유사하게 작동합니다: 그것은 그들의 수명 동안 연기 입자가 얼마나 빨리 이동하는지 결정합니다.범위 [-25, 25]에 있어야 합니다.음의 값은 입자가 부모의 하단(-Y) 방향으로 방출되도록 합니다 (-Y).

안개를 생성하기 위해 효과 Smoke를 사용할 때 이 속성을 0으로 설정합니다.대형 연기 효과의 경우, 상승을 미묘하게 만드십시오(2~8).굴뚝과 연기 스택에 대해서는 더 높은 값이 적합합니다.

코드 샘플

이 코드 샘플은 재귀 검색을 사용하여 Smoke 개체를 모든 Fire 개체에 추가합니다. 이렇게 하여 Workspace 에 있는 모든 개체에 객체를 추가합니다.

모든 화재에 연기 추가

local function recurseForFire(object)
-- 연기가 없는 화염 개체를 찾았는지 확인
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- 이 화재에 연기 효과 만들기
local smoke = Instance.new("Smoke")
smoke.Color = Color3.new(0, 0, 0)
smoke.Opacity = 0.15
smoke.RiseVelocity = 4
smoke.Size = object.Size / 4
smoke.Parent = object.Parent
end
-- 화염 개체 검색 계속하기
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)

Size

복제되지 않음
병렬 읽기

Smoke의 Size 속성은 새로 방출되는 연기 입자의 크기를 결정합니다.Smoke.Color 와 달리, 이 속성은 기존 입자의 크기를 변경하지 않습니다.범위 [0.1, 100]에 있어야 합니다.ParticleEmitter.Size 와 달리, 이 속성은 숫자일 뿐입니다(NumberSequence는 아님).또한 입자의 크기가 스터드와 1대1로 일치하지 않는다는 점에도 주목하십시오; 사실, 연기 입자의 크기는 2배 이상 커집니다.가장 큰 크기에서 연기 입자는 200스터드 이상 넓게 렌더링될 수 있습니다!

코드 샘플

이 코드 샘플은 재귀 검색을 사용하여 Smoke 개체를 모든 Fire 개체에 추가합니다. 이렇게 하여 Workspace 에 있는 모든 개체에 객체를 추가합니다.

모든 화재에 연기 추가

local function recurseForFire(object)
-- 연기가 없는 화염 개체를 찾았는지 확인
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- 이 화재에 연기 효과 만들기
local smoke = Instance.new("Smoke")
smoke.Color = Color3.new(0, 0, 0)
smoke.Opacity = 0.15
smoke.RiseVelocity = 4
smoke.Size = object.Size / 4
smoke.Parent = object.Parent
end
-- 화염 개체 검색 계속하기
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)

TimeScale

병렬 읽기

0-1 사이의 값은 입자 효과의 속도를 제어합니다.1에서는 정상 속도로 실행되고, 0.5에서는 절반 속도로 실행되며, 0에서는 시간이 동결됩니다.

메서드

이벤트