WorldRoot
WorldRoot : Instance
Overview
3D ๊ณต๊ฐ์์ ๋ฌผ์ฒด๋ฅผ ๊ฐ์งํ๊ฑฐ๋ ์๋ฎฌ๋ ์ด์ ํ๋ ๊ธฐ๋ฅ์ ์ํํ๋ ํด๋์ค์ ๋๋ค.
Properties
Methods
Raycast
์ฃผ์ด์ง ์์์ (origin)๊ณผ ๋ฐฉํฅ(direction)์ ๊ธฐ์ค์ผ๋ก ๋ณด์ด์ง ์๋ ๊ด์ (ray)์ ๋ฐ์ฌํด, ๊ฒฝ๋ก์์ ์ค๋ธ์ ํธ๋ฅผ ๊ฐ์งํ๊ณ ๊ฒฐ๊ณผ๋ฅผ RaycastResult ๊ฐ์ฒด๋ก ๋ฐํ๋ฉ๋๋ค.
ํ์ํ ๊ฒฝ์ฐ RaycastParams๋ฅผ ์ค์ ํ์ฌ ๊ฐ์ง ๋์์ด๋ ์กฐ๊ฑด์ ์ง์ ํ ์ ์์ผ๋ฉฐ, RaycastParams๋ฅผ ์๋ตํ๋ฉด ๊ธฐ๋ณธ๊ฐ์ด ์ ์ฉ๋์ด ๋ชจ๋ ํํธ๊ฐ ๊ฐ์ง ๋์์ด ๋ฉ๋๋ค.
Parameters
Vector3
InOrigin
๊ด์ (ray)์ด ๋ฐ์ฌ๋๋ ์ถ๋ฐ ์ง์ ์ ๋๋ค.
Vector3
InDirection
๊ด์ ์ ๋ฐฉํฅ์ ๋ํ๋ด๋ ๋ฒกํฐ์ด๋ฉฐ, ์ด ๋ฒกํฐ์ ๊ธธ์ด(ํฌ๊ธฐ)์ ๋ฐ๋ผ ๊ฐ์ง ๊ฐ๋ฅํ ๊ฑฐ๋ฆฌ๋ ํจ๊ป ๊ฒฐ์ ๋ฉ๋๋ค.
RaycastParams
InRaycastParams
์ด๋ค ์ค๋ธ์ ํธ๋ฅผ ๊ฐ์งํ ์ง ์กฐ๊ฑด์ ์ค์ ํ ์ ์๋ ์ค์ ๊ฐ์ฒด์ ๋๋ค.
RaycastParams๋ฅผ ์ด์ฉํ์ฌ ํน์ ํํธ๋ฅผ ์ ์ธํ๊ฑฐ๋, ์ถฉ๋ ๊ทธ๋ฃน์ ์ง์ ํ ์ ์์ต๋๋ค.
์ด ๊ฐ์ ์ง์ ํ์ง ์์ผ๋ฉด ๊ธฐ๋ณธ๊ฐ์ด ์ ์ฉ๋์ด, ๋ชจ๋ ์ค๋ธ์ ํธ๊ฐ ๊ฐ์ง ๋์์ด ๋ฉ๋๋ค.
Return
RaycastResult
Code Samples
local Workspace = game:GetService("Workspace")
local Origin = Vector3.new(0, 50, 0)
local Direction = Vector3.new(0, 0, -3000)
local RaycastParams = RaycastParams.new()
RaycastParams.FilterType = Enum.RaycastFilterType.Exclude
RaycastParams.FilterDescendantsInstances =
{
Workspace.Part
}
local Result = Workspace:Raycast(Origin, Direction, RaycastParams)
if Result then
print("Result Position : ", Result.Position)
print("Result Name : ", Result.Instance.Name)
else
print("Result nil")
end
GetPartBoundsInBox
์ฃผ์ด์ง ์ค์ฌ ์์น(Center)์ ํฌ๊ธฐ(Size)๋ก ์ ์๋ ๋ฐ์ค ํํ์ ๊ณต๊ฐ์์, ๊ทธ ์์ญ๊ณผ ๊ฒน์น๋ ํํธ๋ค์ ์ฐพ์ ๋ฐฐ์ด๋ก ๋ฐํํฉ๋๋ค.
์ด๋ ์ค์ ํํธ์ ํ์์ด ์๋ ์ธ๊ณฝ ๊ฒฝ๊ณ ์์(Bounding Box)๋ฅผ ๊ธฐ์ค์ผ๋ก ํ๋จ๋๊ธฐ ๋๋ฌธ์, ๊ตฌํ, ์ํตํ, ๋๋ ๋ณต์กํ MeshPart์ฒ๋ผ ์ ์ก๋ฉด์ฒด๊ฐ ์๋ ํํ๋ ์ ํ๋๊ฐ ๋ค์ ๋ฎ์ ์ ์์ต๋๋ค.
ํํฐ๋ง ์กฐ๊ฑด์ด๋ ๊ฐ์ง ๋ฒ์ ๋ฑ์ ์ธ๋ถ์ ์ผ๋ก ์ค์ ํ๊ธฐ ์ํด OverlapParams๋ฅผ ํจ๊ป ์ฌ์ฉํ ์ ์์ต๋๋ค.
Parameters
CFrame
InCenter
๊ฐ์งํ ์์ญ์ ์ค์ฌ ์ขํ์ ๋๋ค.
Vector3
InSize
๋ฐ์ค ํํ๋ก ์ค์ ๋ ๊ฐ์ง ๋ฒ์์ ๊ฐ๋ก, ์ธ๋ก, ๋์ด ํฌ๊ธฐ์ ๋๋ค.
OverlapParams
InOverlapParams
์ด๋ค ์ค๋ธ์ ํธ๋ฅผ ๊ฐ์งํ ์ง ์กฐ๊ฑด์ ์ค์ ํ ์ ์๋ ์ค์ ๊ฐ์ฒด์ ๋๋ค. OverlapParams๋ฅผ ์ด์ฉํ์ฌ ํน์ ํํธ๋ฅผ ์ ์ธํ๊ฑฐ๋, ์ถฉ๋ ๊ทธ๋ฃน์ ์ง์ ํ ์ ์์ต๋๋ค.
์ด ๊ฐ์ ์ง์ ํ์ง ์์ผ๋ฉด ๊ธฐ๋ณธ๊ฐ์ด ์ ์ฉ๋์ด, ๋ชจ๋ ์ค๋ธ์ ํธ๊ฐ ๊ฐ์ง ๋์์ด ๋ฉ๋๋ค.
Return
array
Code Samples
local Center = Vector3.new(0, 50, 0)
local Size = Vector3.new(1000, 1000, 1000)
local Cframe = CFrame.new(Center)
local PartsInBox = workspace:GetPartBoundsInBox(Cframe, Size)
for _, obj in ipairs(PartsInBox) do
print(obj.Name)
end
GetPartBoundsInSphere
Returns an array of parts within a sphere defined by center and radius. Useful for proximity checks and area-of-effect queries. Uses bounding boxes, so complex shapes may be approximated.
Parameters
CFrame
InCenter
number
InRadius
OverlapParams
InOverlapParams
Return
array
Code Samples
GetPartsInPart
Returns an array of parts that overlap with the specified BasePart. Filtering can be customized via OverlapParams to include/exclude certain objects.
Parameters
BasePart
InBasePart
OverlapParams
InOverlapParams
Return
array
Code Samples
DrawRay
์ฃผ์ด์ง ์์์ (origin)๊ณผ ๋ฐฉํฅ(direction)์ ๊ธฐ์ค์ผ๋ก ์ง์ ํ ์์์ ๊ด์ ์ ํ๋ฉด์ ํ์ํ์ฌ ์๊ฐ์ ์ผ๋ก ํ์ธํ ์ ์๋๋ก ํด์ฃผ๋ ๋ฉ์๋์ ๋๋ค.
์ฃผ๋ก ๋๋ฒ๊น ์ฉ๋๋ก ํ์ฉ๋๋ฉฐ, Raycast์ ๋ฐฉํฅ๊ณผ ๋๋ฌ ์์น๋ฅผ ์๊ฐ์ ์ผ๋ก ํ์ ํ ๋ ์ ์ฉํฉ๋๋ค.
Parameters
Vector3
InOrigin
๊ด์ (ray)์ด ๋ฐ์ฌ๋๋ ์ถ๋ฐ ์ง์ ์ ๋๋ค.
Vector3
InDirection
๊ด์ ์ ๋ฐฉํฅ์ ๋ํ๋ด๋ ๋ฒกํฐ์ด๋ฉฐ, ์ด ๋ฒกํฐ์ ๊ธธ์ด(ํฌ๊ธฐ)์ ๋ฐ๋ผ ๊ฐ์ง ๊ฐ๋ฅํ ๊ฑฐ๋ฆฌ๋ ํจ๊ป ๊ฒฐ์ ๋ฉ๋๋ค.
Color3
InColor
๊ด์ ์ ์์์ ๋๋ค.
number
InThickness
๊ด์ ์ ์ ๋๊ป์ ๋๋ค.
number
InLifeTime
๊ด์ ์ด ์๋์์ ์ ์ง๋ ์๊ฐ(์ด ๋จ์)์ ๋๋ค.
Return
void
Code Samples
local Workspace = game:GetService("Workspace")
local Origin = Vector3.new(0, 50, 0)
local Direction = Vector3.new(0, 0, -1000)
local Color = Color3.fromRGB(255, 0, 0)
local Thickness = 5
local LifeTime = 1.5
Workspace:DrawRay(Origin, Direction, Color, Thickness, LifeTime)
Events
Last updated