ย ์•ˆ๋…•ํ•˜์„ธ์š”.


ย ์ผ์ง€๋ฅผ ์“ฐ๋Š” ๊ฒƒ์ด ์“ฐ๋Š” ์‹œ๊ฐ„์ด ์•„๊น๋‹ค๊ณ  ์ƒ๊ฐ์„ ๋งŽ์ด ํ–ˆ์—ˆ๋Š”๋ฐ ๊ทธ๋ž˜๋„ ์“ฐ๋‹ค ๋ณด๋‹ˆ๊นŒ ๋‹ค์‹œ ํ•œ๋ฒˆ ์ •๋ฆฌํ•˜๋Š” ๋А๋‚Œ์ด ์žˆ์–ด์„œ ์ข‹์€ ๊ฒƒ ๊ฐ™์•„์š”. ( ์ผ๊ธฐ ์“ฐ๋Š” ๋А๋‚Œ )


ย ์ด๋ฒˆ์— ์ฃผ๋กœ ์ž‘์—…ํ–ˆ๋˜ ๋ถ€๋ถ„์€ ์ฃผ๋กœ ์—๋””ํ„ฐ์—์„œ ๋ฐ์ดํ„ฐ / ์„ธ์ด๋ธŒ ํ•˜๋Š” ๊ฒƒ๊ณผ DB์—๋‹ค๊ฐ€ ๋กœ๋“œํ•  ๋•Œ ๋‚˜๋ˆ ์„œ ํ•˜๋Š” ๊ฒƒ, Dialogue๋ฅผ ์–ด๋–ค ๊ตฌ์กฐ๋กœ ์ €์žฅํ•  ๊ฒƒ์ด๋ฉฐ, ๊ด€๋ฆฌํ•  ๊ฒƒ์ธ์ง€์— ๋Œ€ํ•œ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.


ย ํŠนํžˆ ์ค‘๊ฐ„์— ์ข€ ์ด์ƒํ•˜๊ฒŒ ๋งŒ๋“ค์–ด์„œ ์ฝ”๋“œ ๋ถ€๋ถ„์„ ๋‹ค์‹œ ์ˆ˜์ •ํ•œ ๋ถ€๋ถ„์ด ์žˆ์—ˆ๋„ค์š”... ใ…œใ…œ



a7681caa240276b660b8f68b12d21a1d5e2d86217a

( ์ˆ˜์ •์„ ๋ช‡ ๋ฒˆ ํ•œ ๊ตฌ์กฐ )


์ผ๋‹จ Node Graph๋ฅผ ์ด์šฉํ•ด ๋งŒ๋“  Editor ๋กœ Dialogue ๋ฅผ ๋งŒ๋“ค๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์—ย Editor ์—์„œ ์‚ฌ์šฉํ•  Node Graph ์˜ ์ •๋ณด๋ฅผ ์„ธ์ด๋ธŒ, ๋กœ๋“œํ•  ํ•„์š”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.


Graph๋Š” ๊ทธ๋Ÿฐ ์ •๋ณด๋ฅผ ๋‹ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.


static folder๊ฐ€ 2๊ฐœ ์žˆ๋Š”๋ฐย 


1. Normal

- ์ผ๋ฐ˜ ๋‹ค์ด์–ผ๋กœ๊ทธ๋กœ์„œ ๋Œ€๋ถ€๋ถ„์€ ๋žœ๋ค์— ์˜ํ•ด ๊ณจ๋ผ์ ธ์„œ ํ”Œ๋ ˆ์ด์–ด์—๊ฒŒ ์ œ์‹œ๋˜๋Š” ๋‹ค์ด์–ผ๋กœ๊ทธ์˜ ์ง‘ํ•ฉ์ž…๋‹ˆ๋‹ค.ย 


์ด ํด๋”์˜ ํŠน์ง•์œผ๋กœ๋Š” Original / Version 1 / ...ย  ์ด๋ ‡๊ฒŒ ๋˜์–ด ์žˆ๋Š”๋ฐ ์ดํ›„ ํ™•์žฅํŒฉ์ด๋‚˜ ๋‹ค๋ฅธ ์Šคํ† ๋ฆฌ๋ผ์ธ๊ณผ ๊ฐ™์€, dlc ๊ฐ™์€ ๋А๋‚Œ์œผ๋กœ ๊ตฌ์ž…ํ–ˆ์„ ๋•Œ ์ถ”๊ฐ€๋  ์ˆ˜ ์žˆ๋Š” ๋‹ค์ด์–ผ๋กœ๊ทธ๊ฐ€ ๋“ค์–ด๊ฐ€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์ž๋ฉด [ ํ™•์žฅํŒฉ1 - ๋ถˆํƒ€๋Š” ๋„์‹œ (๊ฐ€์ œ์ž…๋‹ˆ๋‹ค.) ] ๋ผ๋Š” ์ธ์•ฑ ๊ฒฐ์ œ๋ฅผ ํ•˜๋ฉด ํ•ด๋‹น ๋‹ค์ด์–ผ๋กœ๊ทธ๋„ ์ผ๋ฐ˜ ๋‹ค์ด์–ผ๋กœ๊ทธ๋กœ ๋“ค์–ด๊ฐ€์„œ ์ผ๋ฐ˜ ๋‹ค์ด์–ผ๋กœ๊ทธ์˜ ์ˆซ์ž๊ฐ€ ๋งŽ์•„์ง€๋Š” ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.ย 


2. Character_Specific

- ์ด ํด๋”๋Š” ๊ฒŒ์ž„์— ๋“ค์–ด๊ฐ€๊ฒŒ ๋์„ ๋•Œย 

a16720ad231fb542be3332759b32d973665e4d0ac372c63b7245c6b4a124

์ด๋Ÿฐ ์บ๋ฆญํ„ฐ ์„ ํƒ์— ๋”ฐ๋ผ์„œ, ํ•ด๋‹น ์บ๋ฆญํ„ฐ๋ฅผ ํ”Œ๋ ˆ์ดํ•  ๋•Œ๋งŒ ๋‚˜์˜ค๋Š” ๋‹ค์ด์–ผ๋กœ๊ทธ์ž…๋‹ˆ๋‹ค.ย 



์ตœ๊ทผ ์ž‘์—…์ด ๋‘, ์„ธ ๋ฒˆ์”ฉ ์†์„ ๋Œ€์•ผ ํ–ˆ๋˜ ์ด์œ ๊ฐ€ ์ด๋Ÿฐ ๊ตฌ์กฐ๋ฅผ ์ž˜๋ชป๋˜๊ฒŒ ์„ค๊ณ„ํ•ด์„œ ์ž˜๋ชป๋œ ์„ค๊ณ„๋กœ ์„ธ์ด๋ธŒ/๋กœ๋“œ ํ•  ๋•Œ ์ฝ”๋“œ ๋ถ€๋ถ„์—์„œ ์ž๊พธ ์ˆ˜์ •์„ ํ•ด์•ผํ•˜๊ณ  ์—๋””ํ„ฐ ๋ณ€๊ฒฝ์„ ํ•ด์•ผ ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. (ใ…œใ…œ)



a14138ad0a36b45cbeff5a42e65ad0c969c2a8b3f08124ac717997acbe145bc8cf8113661de7d7aee1


ํ˜„์žฌ ์—๋””ํ„ฐ์— ์ค‘์•™์— Normal - Version or Original ( ๋ฒ„์ „์— ๋”ฐ๋ผ ) // Character_Specific - ์บ๋ฆญํ„ฐ ๋ชฉ๋ก ( ํ˜„์žฌ๋Š” ์ œ์ž„์Šค ๋ฐ–์— ์—†์Œ ) ์œผ๋กœ ์„ค์ •์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค



a04828aa1806b35bb232347158c12a3a5d20b2ed917c932a9d9e0e


์ด ํ›„ ์ €์žฅ์„ ๋ˆ„๋ฅด๊ฒŒ ๋˜๋ฉด Graph๋Š” ์•„๋ž˜ ์ชฝ์— ํด๋”๊ฐ€ ์ž๋™ ์ƒ์„ฑ๋˜๋ฉฐ ๊ทธ๊ณณ์—์„œ ๋งŒ๋“  Dialogue๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.( ์•„๋ž˜ ๋นจ๊ฐ„์ƒ‰)





์œ„์— ๋นจ๊ฐ„์ƒ‰์€ ์‹ค์ œ ๋Ÿฐํƒ€์ž„์—์„œ ์‚ฌ์šฉ๋˜๋Š” Dialogue ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.ย 


Editor๋ฅผ ํ†ตํ•ด Node๋ฅผ ๋งŒ๋“ค๊ณ  Save๋ฅผ ํ•˜๊ฒŒ ๋˜๋ฉดย 


1. Editor ๋กœ๋“œ๋ฅผ ์œ„ํ•ด Graph ์ •๋ณด๊ฐ€ ํ•„์š”ํ•˜๊ณ 

2. ์‹ค์ œ ์‚ฌ์šฉํ•  Dialogue ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.


์œ„์— ์žˆ๋Š” ๋ถ‰์€ ๋ถ€๋ถ„์ด ์‹ค์ œ ๊ฒŒ์ž„ ์ƒ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ScriptableObject ๋ฅผ ์ด์šฉํ•ด ๋งŒ๋“  Dialogue๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.ย 




a05118aa0f16782aad635a53fa91aeee3fccf94aa5f84f2c3fa51a08e25dda4f88dbc992


Graph์™€ SO๋ฅผ ์ €์žฅํ•  ๋•Œ path ๊ณ„์‚ฐ์ด ์ค‘์š”ํ•˜๊ฒŒ ๋˜๋Š”๋ฐ ํ˜„์žฌ ์ œ ์„ค์ •๊ณผ ๊ธฐ์ค€์œผ๋กœ๋Š” Editor์—์„œ ์„ค์ •ํ•œ type ๋ณ„๋กœ string ๊ฐ’์— ๋”ํ•ด์ง€๊ณ  ๋น ์ง€๋ฉด์„œ ์ „์ฒด ์ฃผ์†Œ๊ฐ€ ๋‚˜์˜ค๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.ย 


์‚ฌ์‹ค ์ด ๋ถ€๋ถ„์—์„œ ์ž‘์€ ์‹ค์ˆ˜๊ฐ€ ์žˆ์„ ๋•Œ๋งˆ๋‹ค ( ๊ฒฝ๋กœ ๊ณ„์‚ฐ์„ ์‹ค์ˆ˜ํ•ด์„œ ์ข€ ๊ฑธ๋ ธ์Šต๋‹ˆ๋‹ค. ์ด๊ฒŒ ๋ˆˆ์— ์ž˜ ์•ˆ ๋ณด์ด๋Š” ๋ถ€๋ถ„์ด ์žˆ์–ด์„œ...) ๋˜๊ฒŒ ์งœ์ฆ๋‚ฌ๋„ค์š”.




a0513caa0e03782db85f5d63f29f34335fc849e088089f8f0ae1ff8e05


์ด ์ฝ”๋“œ๋Š” ๋ฐ˜๋Œ€๋กœ ๋กœ๋“œ๋ฅผ ํ•  ๋•Œ์˜ ์ฝ”๋“œ์ธ๋ฐ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์€ ๋กœ๋“œํ•˜๋Š” graph์˜ ์ „์ฒด ์ฃผ์†Œ๋ฅผ ๊ฐ€์ ธ๋‹ค๊ฐ€ string ์ž๋ฅด๊ณ  ๋ถ™์ด๊ธฐ๋กœ ๋งŒ๋“ค๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.


startPath์˜ ๊ฒฝ์šฐ๋Š” Save/Load๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” Utility Class์— readonly๋กœ ์„ค์ •ํ•œ ๋ถ€๋ถ„์ด ์žˆ๋Š”๋ฐ ์ง€๊ธˆ ๋ณด๋‹ˆ๊นŒ ๊ทธ๋ƒฅ ์ง€์—ญ๋ณ€์ˆ˜๋กœ ์“ฐ๊ณ  ์žˆ๋„ค์š”.ย 


์—ฌํŠผ๊ฐ„ ์—ฌ๊ธฐ์„œ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์€ย 


ํ˜„์žฌ ์ €๋Š” ๋…ธํŠธ๋ถ์„ ์ด์šฉํ•ด ์นดํŽ˜์—์„œ ์ž‘์—…ํ•  ๋•Œ์™€ ์ง‘์—์„œ pc๋กœ ์ž‘์—…ํ•  ๋•Œ๊ฐ€ ์žˆ๋Š”๋ฐ


์งค๋ ค์žˆ์ง€๋งŒ filePath๋Š” ๋กœ๋“œํ•  ๋•Œ์˜ graph์˜ ์ „์ฒด ๊ฒฝ๋กœ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๊ธฐ์—ย 


๋…ธํŠธ๋ถ์ผ ๋• /๋…ธํŠธ๋ถ ๋กœ์ปฌ/์–ด์ฉŒ๊ณ /์ €์ฉŒ๊ณ /์ด๋Ÿฌ์ฟต/์ €๋Ÿฌ์ฟต/Assets/~~~/ ์ด๋Ÿฐ ๋ถ€๋ถ„์ด๊ณ 

pc ์ผ๋•Œ๋Š” /ํ”ผ์”จ ๋กœ์ปฌ/์ €์ฉŒ๊ณ /์–ด์ฉŒ๊ณ /์ด๋Ÿฌ์ฟต/์ €๋Ÿฌ์ฟต/์ฟต์ฟต/์พ…์พ…/Assets/~~~/ ์ด๋Ÿฐ ๋ถ€๋ถ„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.ย 


๊ทธ๋Ÿฌ๋‚˜ ์‚ฌ์ „์— save ํ•  ๋•Œ ์•„์ฃผ ๋ช…์‹œ์ ์ธ ์œ„์น˜๋ฅผ ์ง€์ •ํ•ด์„œ save๋ฅผ ํ–ˆ๊ธฐ์— ์ „์ฒด fullPath์—์„œ ์“ธ๋ชจ์—†๋Š” ์•ž๋ถ€๋ถ„์„ ๋‹ค ๋‚ ๋ฆฌ๊ณ  ํ•„์š”ํ•œ string๋งŒ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


์ดํ›„ ๋‚จ์€ String์„ ์ œ๊ฐ€ ์ €์žฅํ•œ ์ˆ˜์ˆœ์— ๋งž๊ฒŒ ๊ฑฐ๊พธ๋กœ ๊ฐ€์ ธ์™€ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋กœ ํ˜•๋ณ€ํ™˜ํ•ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.ย 




a17d25ad360676b660b8f68b12d21a1de25a8d961b


(์ž๊พธ ๋งŒ์ง€์ž‘๊ฑฐ๋ฆฌ๋‹ค ๋ณด๋‹ˆ ๊ธฐ์กด์— ๋งŒ๋“ค์—ˆ๋˜ graph ์‚ญ์ œํ•˜๊ณ  ํ…Œ์ŠคํŠธ๋กœ ๋งŒ๋“  4๊ฐœ )



a7681caa240276b660b8f68b12d21a1d5e2d86217a


Char_Specific - James

Char_Specific - ๋ฐ€๋Ÿฌ(ํ…Œ์ŠคํŠธ๋กœ ๋Œ€์ถฉ๋งŒ๋“ )

Normal - Original

Normal - Version 1 ( ํ…Œ์ŠคํŠธ๋กœ ๋Œ€์ถฉ ๋งŒ๋“ )


์ด 4๊ฐœ์˜ SO๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.



a64925aa002676b660b8f68b12d21a1df11a9748d2



์›๋ž˜๋Š” Dialogue List์— ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์—ˆ์ง€๋งŒ Dictionary๋กœ ๊ด€๋ฆฌํ•˜๋ฉฐ ์ด์ œ ํ•„์š”์— ๋”ฐ๋ผ์„œ


1. ์บ๋ฆญํ„ฐ ์„ ํƒ ์‹œ, ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ๋ฅผ ์–ธ๋กœ๋“œ ํ•˜๊ฑฐ๋‚˜ย 

2. ํ”Œ๋ ˆ์ด์–ด๊ฐ€ Original ๋ง๊ณ  ๋‚˜์ค‘์— ์ถ”๊ฐ€๋ ( ์ˆ˜ ์žˆ์„๊นŒ์š”?) Normal Dialogue ๋ฅผ ํ™•์ธํ•ด db์—์„œ ๊ฐ€์ ธ๋‹ค๊ฐ€ ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.






์ฝ์–ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.ย 


๊ด€๋ จ๋œ ๋ถ€๋ถ„์—์„œ ์กฐ๊ธˆ ๋” ๋งŒ์ ธ์•ผ ํ•  ๋ถ€๋ถ„์€ Character_Specific ์ผ ๋•Œ, ๊ฐ€์žฅ ์ฒ˜์Œ์— ๋‚˜์˜ค๋Š” ( ๊ฐœ์ธ์ ์œผ๋กœ๋Š” ์บ๋ฆญํ„ฐ ๋ณ„ Starting Dialogue๋ผ๊ณ  ์ƒ๊ฐํ•˜๋Š” ) ๋ถ€๋ถ„, ์ค‘๊ฐ„์— ๋‚˜์™€์•ผ ํ•˜๋Š” ๋ถ€๋ถ„ ๋˜๋Š” ์กฐ๊ฑด ๋“ฑ...


์บ๋ฆญํ„ฐ ๋ณ„๋กœ ์žˆ๋Š” ํŠน์ • ๋‹ค์ด์–ผ๋กœ๊ทธ์˜ ์กฐ๊ฑด์— ๋”ฐ๋ผ์„œ ๊ณจ๋ผ์งˆ ์ˆ˜ ์žˆ๊ฒŒ, ๊ทธ๋Ÿฐ ์กฐ๊ฑด์„ Editor์— ์ถ”๊ฐ€ํ•ด์•ผ ํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.







ย