์‚ฌ์‹ค ๋กœ์ง์— ์ •๋‹ต์ด๋ผ๋Š”๊ฒƒ์€ ์™„์ „ํžˆ ์กด์žฌํ•˜์ง„ ์•Š์•„. ๊ทธ๋ž˜์„œ ๋ฐ‘์— ๊ธ€์—์„œ ๊ทธ๋ฆฌ๋“œ๋„ ๋ณต์ˆ˜๊ฐ€ ์กด์žฌํ•  ์ˆ˜ ์žˆ๊ณ , ๋˜ํ•œ ํ•˜๋‚˜์˜ ์…€์— N๊ฐœ์˜ ์œ ๋‹›์„ ๋‹ด์„ ์ˆ˜๋„ ์žˆ์ง€. ์š”๋Š” ๊ตฌํ˜„์ž์˜ ํƒˆ๋ชจ๋ฅผ ์–ผ๋งˆ๋‚˜ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋Š”๊ฐ€์•ผ.



์ด ๊ฒŒ์ž„ํƒ€์ผ(์…€) ์„ ๋ณด๋ฉด ๋‚ด๊ฐ€ ์ง€๊ธˆ ๊ฐœ๋ฐœ์ค‘์ธ ๊ฒŒ์ž„์— ์žˆ๋Š”๋ฐ, ์ด๋ฏธ ๊ทธ๋ฆฌ๋“œ๊ฐ€ 2๊ฐœ์ž„์„ ๊ฐ€์ •ํ•˜๊ณ  ์žˆ์Œ์ด ๋ณด์ด์ง€. (๊ธธ์ฐพ๋Š” ๊ทธ๋ฆฌ๋“œ๊ฐ€ ๋”ฐ๋กœ ์žˆ๊ณ , Node2D) ํ•ด๋‹น GameTile์„ ๊ด€๋ฆฌํ•˜๋Š” ๊ทธ๋ฆฌ๋“œ๋Š” ๋‹ค๋ฅธ 3d ํŒŒํ‹ฐ์— ์˜ํ•ด ๊ด€๋ฆฌ๋˜๊ณ  ์žˆ์„ ํ„ฐ์ด๊ณ .

์—ฌ๊ธฐ์„œ Entity, ์œ ๋‹›์€ ์˜ค๋กœ์ง€ ํ•˜๋‚˜๋งŒ ์˜ฌ๋ผ๊ฐ์„ ์ „์žฌํ•˜๊ณ  ์žˆ๋Š”๋ฐ, ๋งŒ์•ฝ ์ด Entity๋ฅผ List<Entity> Entities ๋กœ ๊ด€๋ฆฌํ•˜๊ฒŒ ๋˜๋ฉด, ์ด๊ฑด ์—ฌ๋Ÿฌ ์œ ๋‹›์ด ์˜ฌ๋ผ๊ฐ„๋‹จ ๊ฐ€์ •์ด์ง€, ์ˆœ์„œ์— ๋งž๊ฒŒ ์ •๋ ฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ๋„ฃ๊ธฐ์—๋Š” ์ฝ”์ŠคํŠธ๊ฐ€ ์ปค์ง€๊ฑฐ๋‚˜ ํƒˆ๋ชจ๊ฐ€ ์˜ฌ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์•„.


๊ทธ๋ž˜์„œ ๋ณดํ†ต ์ด๋Ÿฐ์‹์œผ๋กœ ๊ฐ€์•ผ ํ•œ๋‹ค๋Š” ๋ง์ด์•ผ.


์ด๋ ‡๊ฒŒ ๋˜๋ฉด ํ•ด๋‹น ์…€์— ์ ‘๊ทผํ–ˆ์„๋•Œ, ์–ด๋–ค ๋ ˆ์ด์–ด ์— ์ ‘๊ทผํ•  ๊ฒƒ์ธ๊ฐ€๋ฅผ

public Entity GetEntity(Layer layer) => Entities[layer];

์ด๋Ÿฐ ์‹์œผ๋กœ ํŽธ๋ฆฌ ํ•˜๊ฒŒ ์ •์˜ ํ•ด ์ค„ ์ˆ˜ ์žˆ๊ณ ,

๋งŒ์•ฝ ๊ทธ๋ฆฌ๋Š” ๋กœ์ง์„ ๊ตฌํ˜„ ํ•œ๋‹ค ํ• ๋•Œ๋„ ๋ ˆ์ด์–ด ๋ณ„๋กœ ๋”ฐ๋กœ ๊ฐ€์ ธ์™€์„œ ๊ด€๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•œ๊ฑฐ์ง€.