HitResult

HitResult

์ถฉ๋Œ ์ฒดํฌ์— ๋Œ€ํ•œ ๊ฒฐ๊ณผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ๊ฐœ์ฒด์—์š”.

์†์„ฑ

HitLocation

์ถฉ๋Œ ์œ„์น˜๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”.

-- ์ƒ˜ํ”Œ --

local startPos = Workspace.Cube.Transform.Location
local dir = Vector.new(1, 0, 0)
local distance = 1000

local targetList = Game:LineTraceList(startPos, dir, distance) --์‹œ์ž‘ ์œ„์น˜์—์„œ ์ง€์ • ๋ฐฉํ–ฅ์˜ ๊ฑฐ๋ฆฌ์— ์ถฉ๋Œ์ฒด๊ฐ€ ์žˆ์œผ๋ฉด ์ถฉ๋Œ ์ •๋ณด ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ฐ˜ํ™˜ํ•ด์š”.
for i = 1, #targetList do
    print(targetList[i].HitObject.Name) --์ถฉ๋Œํ•œ ์˜ค๋ธŒ์ ํŠธ์—์š”.
    print(targetList[i].HitLocation) --์ถฉ๋Œํ•œ ์˜ค๋ธŒ์ ํŠธ์˜ ์œ„์น˜์—์š”.
end

HitObject

์ถฉ๋Œํ•œ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”.

-- ์ƒ˜ํ”Œ --

local startPos = Workspace.Cube.Transform.Location
local dir = Vector.new(1, 0, 0)
local distance = 1000

local targetList = Game:LineTraceList(startPos, dir, distance) --์‹œ์ž‘ ์œ„์น˜์—์„œ ์ง€์ • ๋ฐฉํ–ฅ์˜ ๊ฑฐ๋ฆฌ์— ์ถฉ๋Œ์ฒด๊ฐ€ ์žˆ์œผ๋ฉด ์ถฉ๋Œ ์ •๋ณด ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ฐ˜ํ™˜ํ•ด์š”.
for i = 1, #targetList do
    print(targetList[i].HitObject.Name) --์ถฉ๋Œํ•œ ์˜ค๋ธŒ์ ํŠธ์—์š”.
    print(targetList[i].HitLocation) --์ถฉ๋Œํ•œ ์˜ค๋ธŒ์ ํŠธ์˜ ์œ„์น˜์—์š”.
end

์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ถ€๋ชจ ์˜ค๋ธŒ์ ํŠธ ๊ธฐ๋Šฅ๋“ค

์†์„ฑ

์ด๋ฆ„

์„ค๋ช…

๋ถ€๋ชจ ๊ฐ์ฒด๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”.

๊ฐ์ฒด์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

์ด๋ฒคํŠธ

์ด๋ฆ„

์„ค๋ช…

ํ•จ์ˆ˜

์ด๋ฆ„

์„ค๋ช…

์ถ”๊ฐ€๋œ ๊ฐ’์ด ๋ณ€๊ฒฝ ๋  ๋•Œ ํ˜ธ์ถœ๋˜๋Š” ์ด๋ฒคํŠธ์—์š”. (Value ์ด๋ฆ„, ์—ฐ๊ฒฐ ํ•จ์ˆ˜)

์ด๋ฆ„์œผ๋กœ ์ž์‹ ๊ฐ์ฒด๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”. (์ฐพ๊ณ ์‹ถ์€ ์ž์‹ ๊ฐ์ฒด ์ด๋ฆ„)

์ž์‹ ๊ฐ์ฒด์˜ ๋ฆฌ์ŠคํŠธ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”.

์บ๋ฆญํ„ฐ์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

์Šคํ…Œํ‹ฑ ๋ฉ”์‹œ์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

FX์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

Sound์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

ํฌ์ธํŠธ ๋ผ์ดํŠธ์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

์ŠคํฌํŠธ ๋ผ์ดํŠธ์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

์„œํ”ผ์Šค UI์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

์Šคํฌ๋ฆฐ UI์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

ํ„ฐ์น˜ UI์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

์•„์ดํ…œ์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

NPC์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

์ŠคํŠธ๋ฆฝํŠธ์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

Collider์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

Widget์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

Camera์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

ํ•ด๋‹น ์˜ค๋ธŒ์ ํŠธ๊ฐ€ ์œ ํšจํ•œ์ง€ ํ™•์ธ ํ•  ์ˆ˜์žˆ์–ด์š”.

ํ•ด๋‹น ์˜ค๋ธŒ์ ํŠธ์˜ ๊ฐ’์ด ์œ ํšจํ•œ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

ํ•ด๋‹น ๊ฐ์ฒด์— ์„œ๋ฒ„, ํด๋ผ์ด์–ธํŠธ ๊ฐ„ ๋™๊ธฐํ™”๊ฐ€ ๊ฐ€๋Šฅํ•œ ๋ฒกํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•ด์š”. (์ถ”๊ฐ€ํ•  Value ์ด๋ฆ„, Vector ๋ฐ์ดํ„ฐ, Enum.ReplicateType.ํƒ€์ž… , ๋™๊ธฐํ™” ์‹œ๊ฐ„)

ํ•ด๋‹น ๊ฐ์ฒด์— ์„œ๋ฒ„, ํด๋ผ์ด์–ธํŠธ ๊ฐ„ ๋™๊ธฐํ™”๊ฐ€ ๊ฐ€๋Šฅํ•œ ์‹ค์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ด์š”. (์ถ”๊ฐ€ํ•  Value ์ด๋ฆ„, number ๋ฐ์ดํ„ฐ, Enum.ReplicateType.ํƒ€์ž… , ๋™๊ธฐํ™” ์‹œ๊ฐ„)

ํ•ด๋‹น ๊ฐ์ฒด์— ์„œ๋ฒ„, ํด๋ผ์ด์–ธํŠธ ๊ฐ„ ๋™๊ธฐํ™”๊ฐ€ ๊ฐ€๋Šฅํ•œ bool๋ฅผ ์ถ”๊ฐ€ํ•ด์š”. (์ถ”๊ฐ€ํ•  Value ์ด๋ฆ„, bool ๋ฐ์ดํ„ฐ, Enum.ReplicateType.ํƒ€์ž… , ๋™๊ธฐํ™” ์‹œ๊ฐ„)

ํ•ด๋‹น ๊ฐ์ฒด์— ์„œ๋ฒ„, ํด๋ผ์ด์–ธํŠธ ๊ฐ„ ๋™๊ธฐํ™”๊ฐ€ ๊ฐ€๋Šฅํ•œ ๋ฌธ์ž์—ด์„ ์ถ”๊ฐ€ํ•ด์š”. (์ถ”๊ฐ€ํ•  Value ์ด๋ฆ„, string ๋ฐ์ดํ„ฐ, Enum.ReplicateType.ํƒ€์ž… , ๋™๊ธฐํ™” ์‹œ๊ฐ„)

ํ•ด๋‹น ๊ฐ์ฒด์— ์„œ๋ฒ„, ํด๋ผ์ด์–ธํŠธ ๊ฐ„ ๋™๊ธฐํ™”๊ฐ€ ๊ฐ€๋Šฅํ•œ ์ปฌ๋Ÿฌ๋ฅผ ์ถ”๊ฐ€ํ•ด์š”. (์ถ”๊ฐ€ํ•  Value ์ด๋ฆ„, Color ๋ฐ์ดํ„ฐ, Enum.ReplicateType.ํƒ€์ž… , ๋™๊ธฐํ™” ์‹œ๊ฐ„)

Last updated