์ ๋ฐ์ ํผ๊ฒฉํ์ ์๊ธฐ ๋์๊ธธ๋ ๋ง์นจ ์ ๋ถํฐ ์ฐ๊ณ ์ถ๋ ๋ด์ฉ์ด๋ผ ๊ธ์ผ๋ค
๋ด๊ฐ ๋ง๋๋ ๊ฒ์ ๋์ถฉ ์ด๋ฐ๊ฒ์
ํ๋ทฐ ์ค์๊ฐ ์ก์ ๊ฒ
์์ ์ ์ก์ ๊ฒ ๊ฐ๋ฐํ ๋ ์จ๋ณธ ๋ฐฉ๋ฒ์ ๋์ถฉ ์ด๋ ๋ค
1. ํผ๊ฒฉ ์ ๋๋ฉ์ด์ ์ด ์์ํ๋ฉด ํผ๊ฒฉํ์ ์ด ์ฌ๋ผ์ง๋ค
=> ์ผ๋ถ ๊ณ ์ค์ ๊ฒ์์์ ์ฐ๋ ๋ฐฉ๋ฒ. ๋ค๋จํํธ ๊ตฌํ์ด ๋ฐ๋ก ํ์์์ง๋ง, ๋ค๋จํํธ ์๋๋ฅผ ์กฐ์ ํ ์ ์๊ณ ์ฌ๋ฌ ์ ์๊ฒ ๋์์ ์ณ๋ง์ ์ ์๋ค.
๊ทธ๋ฆฌ๊ณ ํนํ ์ํผ์๋จธ ๊ตฌํ์ด ๋ถ๊ฐ๋ฅํจ. ํผ๊ฒฉ ์ ๋๋ฉ์ด์ ์ด ์๋์ค๋ฉด ํ๋ ์๋ง๋ค ์ณ๋ง๊ณ ์์๊ฐ์ ์ฃฝ์ํ ๋๊น
2. ํผ๊ฒฉ์ ์ ๋๋ฉ์ด์ ๊ณผ ์๊ด์์ดย ํผ๊ฒฉํ์ ์ด ์ ์ ๊บผ์ง๋ค
=> ์ด๊ฒ๋ ์์๊บผ๋ ๋น์ทํ๋ฐ ์ํผ์๋จธ ๊ตฌํ์ ๊ฐ๋ฅํจ. ์ด์จ๋ ๋ค๋จํํธ ์๋ ์กฐ์ ์ด ์๋๊ณ ๋ค๊ตด๋นํ๋๊ฒ ๋ถ๊ฐ๋ฅํจ
๊ทผ๋ฐ ๋ด๊ฐ ๋ฅ๋คํฌ๋์ ์ ๊ฐ๋ฐํ๋ฉด์ ๊ฝํ๋ ๊ฒ์์ ๋ค-ํฌ ์์ธ์.
๋คํฌ์์ธ์ ํผ๊ฒฉ๋ฌด์ ์์? ๋ง์์ ๊ฒฝ์ง๋๋ฉด ๋๋ง์ผ๋ฉด ๋๋ง์์ง ๋ด์ฃผ๋๊ฑด ์์
๊ทธ๋์ ๋๋ ํ๋์ฝ์ดํ, ๋ค๊ตด๋ง์ผ๋ฉด ๋ค์ง๋ ๊ฒ์์ ๋ง๋ค๊ธฐ ์ํด์ ์ ๋ฐ์ ๊ธ์ด์ด๊ฐ ์ด๊ฒ๊ณผ ๊ฐ์ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๊ธฐ๋ก ํ๋ค
๋ฅ ๋คํฌ ๋์ ์ ํผ๊ฒฉํ์ Ver.1
1. ๊ฐ ๊ณต๊ฒฉ์ ๊ณ ์ ๊ฐ์ ์ง๋๋ค.
=> Random.Range๋ ์ฐ์ง ์๋๋ค. ์ด์ฐจํผ ์ฐ๋ฆฌ๋ง ์ด๋ฐ ๊ธฐ๋ฅ ํ์ํ๊ฑฐ ์๋๊ณ , ์ ์ง์๋ค์ด ๋ค ์ด์๊ฒ ๊ตฌํํด๋จ๋ค.
์ฌ์ง์ด 32๋นํธ ์ ์๊ฐ ๊ฐ์ง๊ณ ์ ย ์์ฌ์ด ์๋ผ์ 128๋นํธ ๋๋ค๊ฐ์ ๋น๊ตํ๋ ๊ธฐ๋ฅ์ด C#์ ๊ธฐ๋ณธ์ผ๋ก ์์.
๊ทธ๊ฒ ๋ฐ๋ก GUID์.
https://msdn.microsoft.com/ko-kr/library/system.guid(v=vs.110).aspx
32๋นํธ ์ ์๊ฐ์ด ๊ฒน์น ํ๋ฅ ๋ ๋ฌด์งํ๊ฒ ์ ์๋ฐ 128๋นํธ๋ฉด ๊ฑฐ์ ๊ณ ์ ๊ฐ์ด๋ผ๊ณ ๋ด๋ ๋๋ค.
์๋๋ ๋น ๋ฅด๊ณ ์ด์ฉํ๊ธฐ๋ย ํธํจ.
2. ๊ณต๊ฒฉํ์ ์ด Enable ๋ ๋ ๊ณต๊ฒฉ์ ๊ณ ์ ๊ฐ์ ๋ฆฌ์ ํ๋ค.
=> ์ด์ฐจํผ ๊ณต๊ฒฉํ์ ์ด ์๋ก ์ผ์ก๋ค๋๊ฑด ๊ณต๊ฒฉ์ ์๋ก ํ๋ค๋ ๋ป๋ฐ์ ๋๋จ?
3. ํผ๊ฒฉํ์ ์ ๊ฐ์ HashSet<GUID>๋ฅผ ๊ฐ์ง๋ค.
=> ๊ทธ๋์ ๋ฆฌ์ ๋์ง ์์ ๊ณต๊ฒฉํ์ ์๋ ๋๋ฒ๋ค์ ๋ฐ์ํ์ง ์๋๋ค.
์ด๋ ๊ฒ ๊ตฌํํ๋๋ฐ, ์ฒ์์ ๋ค๋จํํธ๋ฅผ ๊ตฌํํ๊ธฐ ์ํด์ ์ ๋๋ฉ์ด์ ์์ ๊ณต๊ฒฉํ์ ์ ์ผฐ๋ค๊ป๋คํ๋ค.
๊ณต๊ฒฉํ์ ์ด Enable ๋ ๋ ๊ณ ์ ๊ฐ์ด ๋ฆฌ์ ๋๋๊น, ํ์ ์ ๊ป๋ค์ผฐ๋คํ๋ฉด ๋ค๋จํํธ๊ฐ ๋๊ฒ ์ง...
๋ ์ฌํ ์ ๋๋ฉ์ด์ ๋ง๋๋๋ฐ ๊ท์ฐฎ์ ๋ค์ง๊ฑฐ๊ฐ๊ณ ํ๊ฒฉ๊ฐ๊ฒฉ์ด ๊ท ์ผํ์ง ์๋ค
๊ทธ๋์ ๋ค๋จํํธ๋ฅผ ์ผ๋งค๋ก ์ถ๊ฐ๋กย ๊ตฌํํ๋ค
๋ฅ ๋คํฌ ๋์ ์ ํผ๊ฒฉํ์ Ver.2
4. ๊ณต๊ฒฉํ์ ์คํฌ๋ฆฝํธ๋ ์ ๋๋ฉ์ด์
์์ ์ด๋น ํ๊ฒฉ์์ ๋ค๋จํํธ ์ฌ๋ถ๋ฅผ ๋ฐ์์จ๋ค.
=> ๊ทธ๋ฌ๋ฉด ๊ณต๊ฒฉํ์ ์คํฌ๋ฆฝํธ์์ ์์์ ์ด๋น nํ GUID๋ฅผ ๋ฆฌ์ ํ๋ค.
์ ๊ตฌํ์์ ๋ค๋จํํธ๋ฅผ ๊ตฌํํ ์ ์๋ ๊ฐ์ฅ ํธํ ๋ฐฉ๋ฒ์ด์์. ์ค์ ๋ก ๋น๋ถ๊ฐ ์ ์๋ํ๊ณ ์ฐ๊ธฐ๋ ํธํ๋ค.
์ ๋๋ฉ์ด์ ๋ง๋ค๋ฉด์ ๊ณต๊ฒฉํ์ ์ ๊ณ์ ๊ป๋ค์ผฐ๋คํ๋ ์ฝ์ง๋ ํ ํ์๊ฐ ์์์.
๊ทผ๋ฐ ๋ฌธ์ ๋, ๊ณต๊ฒฉํ์ ์ธก์์ GUID๋ฅผ ๋ฆฌ์ ํ๋ค๋ณด๋ ํ์ด๋ฐ์ด ๊ฐํ์ด์๋จ๊ฑฐ์.
0.5์ด ๊ฐ๊ฒฉ์ผ๋ก ์ป์ด๋ง๋ ๋ค๋จํํธ์ฌ๋, ์ฌ์์์ผ๋ฉด 0.2์ด๋ง ๋ฟ์๋๋ฐ ํ๋ฅ ํ๊ณ ๋๋๋ง์ ๊ฐ๋ฅ์ฑ์ด ์์๋ค.
์ฌ์์๊ฒ ๊ณต๊ฒฉํ์ ์ธก์์ GUID ๋ฆฌ์ ํ ๋ ๋ฟ์์์ผ๋ฉด ๋๋ฒ ์ฐ์์ผ๋ก ํ์ ์ ์ฑ๊ณตํ๋๊น.
๋น๋ถ๊ฐ์ ์ด์ ๋๋ ๋ณ๋ก ๋ฌธ์ ๊ฐ ์๋๋ผ๊ณ ์๊ฐํ๊ณ ์์๋๋ฐ, ์ ํ์ ์ด ์ด.
์ ์ ๊ฐค์๋ ์์ ์ฌ๋ ธ๋๊ฑฐ ๊ฐ์๋ฐ, ๊ทธ๋์ ์ฌ์ฌ์ฒ ํด ๋๋ฌธ์ด์์.
์ด ๋ฌด์๋ฌด์ํ ๋ฌด๊ธฐ๋ ์๊ธฐ ๋ชธํต๋งํ ์ฒ ํด๋ฅผ ๋น๊ธ๋น๊ธ ๋๋ฆฌ๋๋ฐ,
๋ฒํผ์ ๋๋ฅธ ๋์ ๊ณ์ ๋๋ฆฌ๊ธฐ ๋๋ฌธ์ ์์ ์์ผ๋ฉด ํ๋ฐํด์ ํ๋์ฉ ์ณ๋ง๋ ๋ฌด์์ด ๋ฌด๊ธฐ์.
๊ทผ๋ฐ ์ GUID ๋ฆฌ์ ํ์ด๋ฐ์ ์ ๋ฌํ๊ฒ ๊ฑธ์น๋ฉด ํ๋ฐํด๋ง ๋๋ ค๋ ํํ! ํ๊ณ ๋๋๋ฅผ ๋ง๋ ๋ฌธ์ ๊ฐ ์๊ธด๋ค.
์๊ทธ๋๋ ๋๋ฆฌ๋ ์๋๊ฐ ๋๋ ค์ ํ๋๋ง ๋ง์๋ ์์ฒญ๋๊ฒ ์ํ๋ฐ, ๋๋๋ฅผ ์ต์ธํ๊ฒ ๋ง์ผ๋ฉด ๋ชฌ์คํฐ๊ฐ ์ฌํผํ๊ฒ ์ง.
๊ทธ๋์ ๊ตฌํ์ ๊ณ ์น๊ธฐ๋ก ํ๋ค.
๋ฅ ๋คํฌ ๋์ ์ ํผ๊ฒฉํ์ Ver.3
3.ย ํผ๊ฒฉํ์ ์ ๊ฐ์ Dictionary<GUID,float>๋ฅผ ๊ฐ์ง๋ค.
=> ํผ๊ฒฉ๋นํ ๋๋ง๋ค ํด๋น GUID๊ฐ ๋ฌดํจํ๋๋ ์๊ฐ์ ์ ์ฅํ๋ค.
๊ทธ๋ฆฌ๊ณ ๋์ผํ GUID๊ฐ ๋ค์ด์์ ๋ ๋ฌดํจํ๋๋ ์๊ฐ์ด ์์ง ์์์ผ๋ฉด ๋ฌด์ํ๋ค.
๋ค๋จํํธ๊ฐ ์๋ ๊ณต๊ฒฉ์ ๋ฌดํจํ๋๋ ์๊ฐ์ float.Infinity๋ก ์ ์ฅํด๋ฒ๋ฆผ
4. ๊ณต๊ฒฉํ์ ์คํฌ๋ฆฝํธ๋ ์ ๋๋ฉ์ด์
์์ ์ด๋น ํ๊ฒฉ์์ ๋ค๋จํํธ ์ฌ๋ถ๋ฅผ ๋ฐ์์จ๋ค.
=> ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฑธ ์ง๊ฐ GUID ๊ฐฑ์ ํ๋๊ฒ ์๋๊ณ ํผ๊ฒฉํ์ ์คํฌ๋ฆฝํธ์ ์ ๋ฌํด์ค๋ค.
์๋ ๊ฒ ๊ณ ์ณค๋๋ ์ ๊ฒฝ์ฐ์ด๋ ๋ค๋จํํธ ๋ฌธ์ ๋ค๋ ํด๊ฒฐ๋๊ณ ์ฌ์ฌ์ฒ ํด๋ ๊น๋ํ๊ฒ ํ๋ฐํด์ ํ๋์ฉ ์ ์ ๋๋ฆด์ ์๊ฒ ๋์๋ค
-๋-
๋ ธํ์ฐ๋ ๊ฐ์ถ์ผ!
์ค์ค ๊ฐ์ฌํฉ๋๋ค
ํธ์ฐ!
ใ ใ ใ ใ ๋ฉ์ ธ
ํน์ ํ๋ก๊ทธ๋๋จธ์ด๊ฑฐ๋ ์ปดํจํฐ๊ณตํ๊ณผ ๋์ด?
ํ๋ฐ ๊น์ด์๊ฒ ๋ฐฐ์ฐ์ง ์์๊ณ ๊ฑ ์ทจ๋ฏธ๊ฐ๋ฐ์ ๋ง์ดํด๋ณธ ์ก์บ์
ใด์... ๋ฉ์ ธ๋ฉ์ ธ :)
์๋ณด๊ณ ๊ฐ๋๋ค ใ ใ