๋ถˆ๋Ÿฌ์˜ค๊ฒŒํ–ˆ๋Š”๋ฐ


์ผ๋ถ€๋Ÿฌ ํ…Œ์ŠคํŠธํ•ด๋ณผ๋ ค๊ณ  1000๊ฐœ์ •๋„ ๋„ฃ์–ด๋ดค๋Š”๋ฐ ๊ฐ‘์ž๊ธฐ ๋ฉˆ์ถ”๋„ค ๋ญ” ์‹ค์ˆ˜ํ•œ๊ฑด๊ฐ€


์•„์ดํ…œ ์ƒ์„ฑ ์ฝ”๋“œ๋ฅผ ์ž˜ ๋ชป ์ง ๊ฑด๊ฐ€


์ด๋ฒˆ๋‹ฌ ๋‚ด์— ์–ด์ฐจํ”ผ ์™„์„ฑํ•œ๋‹ค๋Š” ๋งˆ์ธ๋“œ๋ผ ์ข€ ์—ฌ์œ ๋กญ๊ธดํ•œ๋ฐ, ํŒ” ๋‹ค์ณ์„œ ์ฝ”๋“œ ์งœ๋Š”๊ฒƒ๋„ ๊ณ ์—ญ์ด๋ผ ์ผ๋‹จ ์ด๋ก ๋ถ€ํ„ฐ ๋ด์•ผํ• ๋“ฏ



์ฝ”๋“œ๋Š” ์ด๋ ‡๊ฒŒ ์งฐ๋Š”๋ฐ, ๊ฒŒ์ž„ ์‹œ์ž‘ํ•˜๊ณ  ๋ฐ์ดํ„ฐ ๋ถˆ๋Ÿฌ์˜ค๋ฉด ์ด์ƒํ•˜๊ฒŒ ๋ฉˆ์ถค.


SO ์ €์žฅ๋œ ํด๋”์—์„œ ์Šคํฌ๋ฆฝํ„ฐ๋ธ” ์˜ค๋ธŒ์ ํŠธ ์ „๋ถ€ ๋กœ๋“œํ•˜๋Š”๋ฐ ์™œ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธฐ๋Š”๊ฑธ๊นŒ? ์ด์œ  ์•„๋Š” ์‚ฌ๋žŒ ์žˆ์Œ?
์ด๋ ‡๊ฒŒ ์“ฐ๋Š”๊ฒŒ ์•„๋‹Œ๊ฐ€


๋‹ค๋ฅธ๋ฐฉ์‹์œผ๋กœ ๋ถˆ๋Ÿฌ์™€์•ผํ•˜๋‚˜





[SerializeField] private string itemDataFolderName = "ItemData"; // Resources ํด๋” ๋‚ด์— ์žˆ๋Š” Scriptable Object๋“ค์ด ์ €์žฅ๋œ ํด๋” ์ด๋ฆ„


[SerializeField] public List<Item> itemList = new List<Item>();// ๋ชจ๋“  ์•„์ดํ…œ์„ ์ €์žฅํ•˜๋Š” ๋ฆฌ์ŠคํŠธ



private void LoadItems()

{

// Resources ํด๋”์—์„œ ๋ชจ๋“  Scriptable Object ๋กœ๋“œ

ItemData[] itemDataArray = Resources.LoadAll<ItemData>(itemDataFolderName);

itemDataList.AddRange(itemDataArray);


// ๋กœ๋“œํ•œ Scriptable Object๋“ค์„ ์ด์šฉํ•˜์—ฌ itemList๋ฅผ ์ฑ„์›€

foreach (var itemData in itemDataList)

{

itemList.Add(CreateItemFromData(itemData));

}

}

}