Roblox용 연기 VFX
Roblox용 무료 연기 이펙트: 연막탄, 착지 먼지, 먼지 충격파, 지면 안개, 순간이동 연기, 드리프트 연기, 만화풍 먼지 구름 플립북과 밤에도 연기가 빛나지 않도록 하는 조명 설정을 제공합니다.
연기는 빛이 아니라 물질이므로 Roblox에서 설정하는 방식도 달라집니다. 일반 블렌딩(LightEmission 0)을 사용해야 회색과 어두운 부분이 사라지지 않으며, 불과 달리 보통 장면에 따라 어두워져야 합니다. Roblox에는 기본 제공 Smoke 객체가 있지만, 자세한 효과에는 ParticleEmitter를 권장하며 플립북을 사용하면 하나의 파티클에서 형태가 잡힌 연기가 피어오릅니다.
연기, 먼지, 안개
- 엄폐: Smoke Screen Grenade는 부풀어 오르듯 퍼지고, 머물다가 사라집니다.
- 먼지: Landing Dust Cloud는 플레이어가 높은 곳에서 착지할 때 사용하고(아래 참조), Dust Shockwave (Top-Down)는 위에서 내려다본 강타 장면에 사용합니다.
- 분위기: Creeping Ground Fog는 지면을 따라 반복 재생되어 늪, 묘지, 호러 맵에 어울립니다.
- 뿜어 나오는 효과: Teleport Smoke Puff는 사라지는 순간에, Smoke poof와 Cartoon Fight Dust Cloud는 만화풍 게임에 사용합니다.
- 차량: 드리프트하는 자동차의 바퀴 뒤에 Tyre Drift Smoke를 사용합니다.
플레이어 착지 시 먼지
착지 순간 먼지를 뿜어내는 것은 움직임을 묵직하게 느끼게 하는 가장 간단한 방법 중 하나입니다. 이 LocalScript는 캐릭터의 Humanoid를 감시하다가 0.4 s 넘게 낙하한 뒤 착지하면 발밑에서 Landing Dust Cloud를 재생합니다. 먼지는 프레임 아래쪽에 있으므로 Part가 바닥보다 Size의 절반만큼 위에 놓입니다.
-- LocalScript in StarterCharacterScripts
local Debris = game:GetService("Debris")
local template = game.ReplicatedStorage.Effects:WaitForChild("Landing Dust Cloud")
local character = script.Parent
local humanoid = character:WaitForChild("Humanoid") :: Humanoid
local root = character:WaitForChild("HumanoidRootPart") :: BasePart
local fallStart = 0
humanoid.StateChanged:Connect(function(_, new)
if new == Enum.HumanoidStateType.Freefall then
fallStart = os.clock()
elseif new == Enum.HumanoidStateType.Landed and os.clock() - fallStart > 0.4 then
local size = template.Attachment.Flipbook.Size.Keypoints[1].Value
-- The floor under an R15 character (for R6, use 3 studs below the root).
local floor = root.Position - Vector3.new(0, humanoid.HipHeight + root.Size.Y / 2, 0)
local fx = template:Clone()
fx:PivotTo(CFrame.new(floor + Vector3.new(0, size / 2, 0)))
fx.Parent = workspace
Debris:AddItem(fx, 3)
end
end)이 효과는 착지한 플레이어에게만 재생됩니다. 모두가 서로의 먼지를 보게 하려면 애니메이션 VFX에서처럼 서버에서 모든 클라이언트로 RemoteEvent를 보내거나, 해당 처리를 생략해도 됩니다. 대부분의 게임에서는 플레이어 자신의 착지 먼지만 표시합니다.
밤에 어두워지는 연기
내보낸 모든 플립북은 언릿(LightInfluence 0) 상태이므로 어떤 조명에서도 디자인 그대로 보입니다. 불과 마법 이펙트에는 적합합니다. 낮과 밤이 바뀌는 맵이나 어두운 방에서 연기를 사용하려면 LightInfluence를 1에 가깝게 높여 연기가 장면의 조명을 받도록 합니다. 낮에는 회색으로, 밤에는 어둡게 보입니다. 0.5부터 시작하는 것이 좋습니다.
연기 설정
- 발광 끄기: 연기는 항상 LightEmission 0이어야 합니다. 내보내기 시 자동으로 설정되며, 이 페이지의 모든 이펙트는 발광을 끈 상태로 내보내집니다.
- 크고 느리게: 연기는 크고 느릴 때 연기로 잘 보입니다. 연막탄 구름에는 Size 10~20, 착지 먼지에는 4~6을 사용합니다. FlipbookBlendFrames가 프레임 사이를 크로스페이드하므로 긴 연기 루프도 부드럽게 재생됩니다.
- 지면에 배치: 안개와 착지 먼지는 프레임 아래쪽에 놓입니다. 프레임 아래쪽이 지면에 닿도록 Part를 지면보다 Size의 절반만큼 위에 배치합니다.
- 수직 유지: 안개와 연기 기둥은 Orientation을 FacingCameraWorldUp으로 설정하면 카메라가 아래를 향해 기울어져도 수평을 유지합니다.
- 플레이어가 지나갈 수 있는 안개: 플립북은 평면이므로 카메라가 통과하면 가장자리만 보입니다. 플레이어 주변에 안개를 만들려면 서로 다른 거리에 여러 이미터를 배치하거나 맵 전체에 Roblox의 Atmosphere를 사용합니다.
플립북 PNG는 무료입니다. 각 이펙트 페이지의 ROBLOX 버튼은 계정 없이 사용할 수 있고, 무료 계정으로 스튜디오에서 원하는 그리드와 텍스처 크기를 선택해 내보낼 수도 있습니다(하루 3개 이펙트). 이미터가 설정되어 있고 재생 스크립트가 포함된 .rbxmx 준비 모델과 UI용 UIFlipbook.luau는 월 $7.99부터 모든 플랜에서 제공됩니다.
게임에 적용하기
모든 설정과 두 가지 적용 방법, 무료 PNG 또는 바로 사용할 수 있는 모델은 Roblox 설정 페이지에서 확인할 수 있습니다. 장르별 이펙트는 무료 Roblox VFX에서 둘러보세요. 내보내기 전에 스튜디오에서 원하는 이펙트를 변경할 수 있습니다. 연기를 더 어둡게, 더 초록색으로, 더 짙게 만들어 보세요.
자주 묻는 질문
연기가 빛나는 것처럼 보이는 이유는 무엇인가요?
LightEmission이 0보다 높아 연기가 빛처럼 추가되거나, LightInfluence가 0이라 어두운 장면에서도 밝게 유지되는 경우입니다. LightEmission을 0으로 설정하고 LightInfluence를 1에 가깝게 높여 조명에 따라 연기가 어두워지게 하세요.
Roblox의 Smoke 객체와 ParticleEmitter 중 무엇을 사용해야 하나요?
기본 제공 Smoke 객체는 설정이 적고 모양이 한 가지라 간단히 사용할 수 있습니다. Roblox는 세밀한 작업에 ParticleEmitter를 권장하며, 여기에 플립북을 사용하면 디자인한 그대로 재생되는 형태 있는 연기, 먼지, 안개를 만들 수 있습니다.
플레이어가 착지할 때 먼지를 어떻게 만들 수 있나요?
LocalScript에서 Humanoid의 StateChanged 이벤트를 감시합니다. 낙하 후 Landed 상태가 되면 캐릭터의 발밑에 착지 먼지 이펙트를 배치하고 Debris로 정리합니다.
Robux를 버는 게임에서 이 이펙트를 사용할 수 있나요?
네. 라이브러리에서 시작한 이펙트를 포함해 내보낸 이펙트는 상업용 게임을 포함한 모든 프로젝트에서 출처 표시 없이 사용할 수 있습니다. 라이브러리 자체를 이펙트 팩으로 재판매하는 것은 허용되지 않습니다.







