NPC

NPC

ํด๋ผ์ด์–ธํŠธ์—์„œ ์‚ฌ์šฉ๋˜๋Š” NPC ๊ฐœ์ฒด์—์š”.

ํ•จ์ˆ˜

SurfaceUI AddNPCHUD(string UIName, UIScreen UI, UIDisplayType Type)

UI HUD๋ฅผ ๋ถ™์ผ ์ˆ˜ ์žˆ์–ด์š”. (๋ถ™ํ˜€ ์งˆ UI ์ด๋ฆ„, ๋ถ™์ผ UI Screen, Enum.UIDisplayType.ํƒ€์ž… )

-- ์ƒ˜ํ”Œ --

local npc = Script.Parent
local AddUI = HUD.PlayerNameUI

wait(2)
npc:AddNPCHUD("NameUI", AddUI, Enum.UIDisplayType.Billboard)

local npcNameUI = npc:GetNPCHUD("NameUI")
npcNameUI.Text:SetText("์šฉ๊ฐํ•œ ๊ธฐ์‚ฌ")

void RemoveNPCHUD(string UIName)

UI HUD๋ฅผ ์ œ๊ฑฐํ•ด์š”. (์ œ๊ฑฐํ•˜๊ณ  ์‹ถ์€ UI ์ด๋ฆ„)

-- ์ƒ˜ํ”Œ --

local npc = Script.Parent
local AddUI = HUD.PlayerNameUI

npc:AddNPCHUD("NameUI", AddUI, Enum.UIDisplayType.Billboard)

wait(5)
npc:RemoveNPCHUD("NameUI")

void RemoveNPCAllHUD()

ํ˜„์žฌ ์บ๋ฆญํ„ฐ์˜ ๋ชจ๋“  UI HUD๋ฅผ ์ œ๊ฑฐํ•ด์š”.

-- ์ƒ˜ํ”Œ --

local npc = Script.Parent
local AddUI = HUD.PlayerNameUI

npc:AddNPCHUD("NameUI", AddUI, Enum.UIDisplayType.Billboard)

wait(5)
npc:RemoveNPCAllHUD()

SurfaceUI GetNPCHUD(string UIName)

UI HUD๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”. (์–ป๊ณ ์‹ถ์€ UI ์ด๋ฆ„)

-- ์ƒ˜ํ”Œ --

local npc = Script.Parent
local AddUI = HUD.PlayerNameUI

wait(2)
npc:AddNPCHUD("NameUI", AddUI, Enum.UIDisplayType.Billboard)

local npcNameUI = npc:GetNPCHUD("NameUI")
npcNameUI.Text:SetText("์šฉ๊ฐํ•œ ๊ธฐ์‚ฌ")

string GetNPCName()

NPC์˜ ์ด๋ฆ„์„ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”.

-- ์ƒ˜ํ”Œ --

local NPC = Script.Parent
print(NPC:GetNPCName())

void SetNPCName(string Name)

NPC์˜ ์ด๋ฆ„์„ ์„ค์ • ํ•  ์ˆ˜ ์žˆ์–ด์š”.

-- ์ƒ˜ํ”Œ --

local NPC = Script.Parent
NPC:SetNPCName("๊ธฐ์‚ฌ")

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

์†์„ฑ

์ด๋ฆ„

์„ค๋ช…

์บ๋ฆญํ„ฐ์˜ ๊ฐ€์‹œ์„ฑ

์บ๋ฆญํ„ฐ์˜ Matring ์—์š”

์บ๋ฆญํ„ฐ ์œ„์น˜๊ฐ’์ด์—์š”.

์บ๋ฆญํ„ฐ ํšŒ์ „๊ฐ’์ด์—์š”.

๊ฐ์ฒด ํ™œ์„ฑํ™” ์—ฌ๋ถ€

๊ฐ์ฒด์˜ Matrix

๊ฐ์ฒด์˜ Local Transform

๊ฐ์ฒด์˜ ์œ„์น˜ Vector

๊ฐ์ฒด์˜ ๋กœ์ปฌ์ขŒํ‘œ Vector

๊ฐ์ฒด์˜ ํšŒ์ „ Vector

๊ฐ์ฒด์˜ ๋กœ์ปฌ ํšŒ์ „ Vector

๊ฐ์ฒด์˜ ํฌ๊ธฐ Vector

๊ฐ์ฒด์˜ ๊ฐ€์‹œ์„ฑ

์ด๋ฒคํŠธ

์ด๋ฆ„

์„ค๋ช…

์ƒ์„ฑ ํ›„ ๋งค ํ”„๋ ˆ์ž„๋งˆ๋‹ค ํ˜ธ์ถœ๋˜๋Š” ์ด๋ฒคํŠธ์—์š”. ์—ฐ๊ฒฐํ•จ์ˆ˜ ํ˜•์‹์€ function(updateTime), updateTime ์€ number ์ž…๋‹ˆ๋‹ค.

์‚ญ์ œ๋  ๋•Œ ํ˜ธ์ถœ๋˜๋Š” ์ด๋ฒคํŠธ์—์š”. ์—ฐ๊ฒฐํ•จ์ˆ˜ ํ˜•์‹์€ function() ์ž…๋‹ˆ๋‹ค.

Enable ๋ ๋•Œ ํ˜ธ์ถœ๋˜๋Š” ์ด๋ฒคํŠธ์—์š”. ์—ฐ๊ฒฐํ•จ์ˆ˜ ํ˜•์‹์€ function() ์ž…๋‹ˆ๋‹ค.

Disable ๋ ๋•Œ ํ˜ธ์ถœ๋˜๋Š” ์ด๋ฒคํŠธ์—์š”. ์—ฐ๊ฒฐํ•จ์ˆ˜ ํ˜•์‹์€ function() ์ž…๋‹ˆ๋‹ค.

ํ•จ์ˆ˜

์ด๋ฆ„

์„ค๋ช…

Game:AddAnimStateMachineSetting๋กœ ์ถ”๊ฐ€๋œ ์ƒํƒœ ๋จธ์‹  ์ค‘ ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ƒํƒœ ๋จธ์‹ ์„ ์ถ”๊ฐ€ํ•ด์š”. (์ถ”๊ฐ€ํ•  ์ƒํƒœ ๋จธ์‹  ์ด๋ฆ„)

ํ•ด๋‹น ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ƒํƒœ ๋จธ์‹ ์„ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”. (์–ป๊ณ ์‹ถ์€ ์ƒํƒœ ๋จธ์‹  ์ด๋ฆ„)

ํ˜„์žฌ ์• ๋‹ˆ๋ฉ”์ด์…˜์˜ ์ƒํƒœ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”.

ํ•ด๋‹นํ•˜๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์˜ ์ƒํƒœ๋กœ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์–ด์š”. (๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ์€ ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ƒํƒœ ์ด๋ฆ„)

ํ•ด๋‹นํ•˜๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์˜ ์ƒํƒœ๋กœ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์–ด์š”. (๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ์€ ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ƒํƒœ ์ด๋ฆ„, ๋ธ”๋ Œ๋”ฉ ์‹œ๊ฐ„)

ํ•ด๋‹น ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ƒํƒœ ๋จธ์‹ ์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์–ด์š”. (๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ์€ ์ƒํƒœ ๋จธ์‹  ์ด๋ฆ„)

ํ•ด๋‹นํ•˜๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์˜ ์ƒํƒœ์™€ ํ‘œ์ •์œผ๋กœ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์–ด์š”(์ƒํƒœ๊ฐ€ ๋ณ€๊ฒฝ๋˜๋ฉด ํ‘œ์ •๋„ ์žฌ์ƒ์„ ์ค‘์ง€ํ•ด์š”).

์บ๋ฆญํ„ฐ์˜ ํ‘œ์ •์„ ์žฌ์ƒํ•ด์š”.

์บ๋ฆญํ„ฐ์˜ ํ‘œ์ • ์žฌ์ƒ์„ ์ทจ์†Œํ•ด์š”.

์บ๋ฆญํ„ฐ์— ํƒ€๊ฒŸ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๋ถ™์ผ ์ˆ˜ ์žˆ์–ด์š”. (ํƒ€๊ฒŸ ์˜ค๋ธŒ์ ํŠธ, ๋ถ™์ผ AttachPoint)

์บ๋ฆญํ„ฐ์— ํƒ€๊ฒŸ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๋ถ™์ผ ์ˆ˜ ์žˆ์–ด์š”. (ํƒ€๊ฒŸ ์˜ค๋ธŒ์ ํŠธ, ๋ถ™์ผ Bone)

์บ๋ฆญํ„ฐ์— ๋ถ™์–ด์žˆ๋Š” ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๋–จ์–ด๋œจ๋ฆด ์ˆ˜ ์žˆ์–ด์š”. (ํƒ€๊ฒŸ ์˜ค๋ธŒ์ ํŠธ)

์บ๋ฆญํ„ฐ์— ๋ถ™์–ด์žˆ๋Š” ๋ชจ๋“  ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๋–จ์–ด๋œจ๋ ค์š”.

๊ฐ์ฒด์˜ ํ‚ค ๊ฐ’์„ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”.

ํ˜„์žฌ ๋งคํŠธ๋ฆญ์Šค์—์„œ ์„ค์ • ๋œ ๋งคํŠธ๋ฆญ์Šค๋กœ ๋ณด๊ฐ„์ด ๋˜๋Š” ๋งคํŠธ๋ฆญ์Šค๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์–ด์š” ์„ค์ •ํ•  ์ˆ˜ ์žˆ์–ด์š”. (Matrix ๊ฐ’, bool ์ถฉ๋Œ ์ฒ˜๋ฆฌ ์—ฌ๋ถ€)

ํ˜„์žฌ ๋งคํŠธ๋ฆญ์Šค์—์„œ ์„ค์ • ๋œ ๋งคํŠธ๋ฆญ์Šค๋กœ ๋ณด๊ฐ„์ด ๋˜๋Š” ๋งคํŠธ๋ฆญ์Šค๋ฅผ ๋กœ์ปฌ์ขŒํ‘œ๊ธฐ์ค€์œผ๋กœ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์–ด์š” ์„ค์ •ํ•  ์ˆ˜ ์žˆ์–ด์š”. (Matrix ๊ฐ’, bool ์ถฉ๋Œ ์ฒ˜๋ฆฌ ์—ฌ๋ถ€)

์ˆœ๊ฐ„์ด๋™ ํ•˜๋Š” ๋งคํŠธ๋ฆญ์Šค๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์–ด์š”. (Matrix ๊ฐ’)

๊ฐ์ฒด์˜ ์œ„์น˜๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์–ด์š”. (์„ค์ •ํ•  ์œ„์น˜ Vector ๊ฐ’, ์ถฉ๋Œ ์ฒ˜๋ฆฌ ์—ฌ๋ถ€)

๊ฐ์ฒด์˜ tag๋ฅผ ์„ค์ •ํ•ด์š”. (์„ค์ •ํ•  tag)

๊ฐ์ฒด์— ์„ค์ •๋œ tag๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”.

์œ ์ €๊ฐ€ ์ถ”๊ฐ€ํ•œ ์˜ค๋ธŒ์ ํŠธ ์ปค์Šคํ…€ ์ด๋ฒคํŠธ์— ํ•จ์ˆ˜๋ฅผ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์–ด์š”. (์ด๋ฒคํŠธ ์ด๋ฆ„, ์—ฐ๊ฒฐ ํ•จ์ˆ˜)

์˜ค๋ธŒ์ ํŠธ๊ฐ€ ํ•ด๋‹นํ•˜๋Š” ์œ„์น˜๋ฅผ ๋ฐ”๋ผ๋ณด๊ฒŒ ํ•  ์ˆ˜ ์žˆ์–ด์š”. (๋ฐ”๋ผ๋ณผ ์œ„์น˜ Vector)

Last updated

Was this helpful?