์ผ๋ง์ ์ ์ด๊ฑฐ ๋ญ์ง ๋ชฐ๋ผ์ ๋ฌผ์ด๋ดค์๋๋ฐ
Line of Sight๋ผ๊ณ ํ๋ค๋๋ผ..
์ฌํผ ์ฐ๋ฆฌ ๊ฒ์ ๋ฏธ๋๊ฒ์์ค์์ npc๋ค์ด ๋ก๋ฐํ๊ณ ๊ทธ ์ฌ์ด๋ฅผ ์ ์จ๊ณ ํผํด์ ์ ์ ํ๋ ํ์ ์ด ์๋๋ฐ
๊ทธ๋ฅ ๋ถ๋ชํ๋ฉด ์ฃฝ๋๋ค๋๊ฑด ์ญ์ ์ข ์๋ฟ์ง๊ฐ ์๊ธธ๋ ์์ผ๋ฅผ ์๊ฐํ ํ๋ ค๊ณ ํ์์.
์ด์บ ๋ง๋ค์ง ๊ฐ์ด ์์กํ์ ๊ตฌ๊ธ๋ง์ ์ข ํ๋๋ฐ
1. ๊ฐ์ฒด๊ฐ ๋ฐ๋ผ๋ณด๊ณ ์๋ ๋ฐฉํฅ, ์์ผ์ ์์์ ์ ๊ฒฐ์
2. ๋ฐ๋ผ๋ณด๋ ๋ฐฉํฅ์ ์ค์ฌ์ผ๋ก ์ผ์ ํ ๊ฐ๋๋ก Raycast๋ก ๋ ์ด์ ธ๋ฅผ ๋ฐ์ธ(๊ฐ๋์ ๋ ์ด์ ธ ๋ฐ์ธ ํ์๊ฐ ์์ผ ๋๋น๋ฅผ, Raycast ์ต๋ ๊ธธ์ด๊ฐ ์์ผ ๊ฑฐ๋ฆฌ๋ฅผ ๊ฒฐ์ )
3. ์์ผ์ ์์์ ๊ณผ ๊ฐ Raycast์ hit point์ vector( ์๋ฌด๊ฒ๋ hitํ์ง ์์์ ๊ฒฝ์ฐย ์ต๋๊ฑฐ๋ฆฌ ๋งํผ์ vector)๋ฅผ ๋ฒกํฐ๋ฆฌ์คํธ์ ๋ฃ์
4. ์ป์ ๋ฒกํฐ๋ค์ vertex๋ก ์ผ๊ฐํ์ ๋ง๋ค ์ ์์ผ๋ ์ด ์ ๋ณด๋ฅผย ๋ฉ์ฌ๋ ๋๋ฌ์ mesh์ ๋๊ฒจ์ย ๋ฉ์ฌ๋ฅผ ๊ทธ๋ฆผ.
๋์ถฉ ์ด๋ฐ์์ผ๋ก ๋ง๋ค ์ ์๋ค๊ธธ๋ ๋ง๋ค์ด๋ดค์.. ๋จธํ ๋ฆฌ์ผ์ ์ข ๋ ์ด์๊ฑธ ๋ฐ์ผ๋ฉด ์ํ๋ ๋๋์ ์ค ์ ์์๋ฏ ํ๋ค.
๋๋ ํ์ ์ด๋ ์ด๋๊น์ง ํด์ผํ๊ณ , sprite renderer๋ ์ฌ์ฉํ๋ ค๊ณ ์ด๊ฒ์ ๊ฒ ๋ง์ง๋๋ผ ์ข ์ค๋๊ฑธ๋ ธ์ง๋ง
์น์ ํ ์ํ์ด gif๊น์ง ๋์ํ ๊ฐ์ด๋๋ผ์ธ์ ๊ณต๊ฐํด๋ฌ์ ์ฝ๊ฒ ๋ง๋ค์๋ค.
๋ด๊ฐ ๋ณ๋ง๊ฐ์ด ๋ฒ์ญ,์์ฝํด๋ ํฌ์คํธ(์์ด)ย ๋งํฌ๋ฅผ ๋ง์ง๋ง์ผ๋ก ๊ธ์ ๋ง์นจ.ย ๋น์ทํ ๊ฑธ ๊ตฌํํ๋ ค๊ณ ํ๋ ์ฌ๋๋ค์๊ฒ ๋์์ด ๋๋ฉด์ข๊ฒ๋ค.
https://www.linkedin.com/pulse/using-raycasts-dynamically-generated-geometry-create-line-thomas
๊ฐ์ถ๋จธ๊ฒ
์ฐ์
ํฌ ๋ด ์ง๋ฌธ ํด๊ฒฐ 1์์ ๋ต๊ธ์ ๋ต๊ฒ ๊ต์๊ตฌ๋ง ๊ฐ์ถ๋ค
Field of view ์๋๊ฐ?
์ ์ ์ฉ์ด๋ ๋ฐ๋ก ์๋๊ฑฐ ๊ฐ๋๋ฐ ์ํค ์ํคํผ๋์์์ ์ ๋ฒ์ ๋๊ธ์ด๋๋ก vision cone ์ผ๋ก๋ ๊ฒฐ๊ณผ ๋์๊ณ
์ ๋ค ๊ฐ์๊ฒ ๋์ค๋๊ฑธ ๋ณด๋ฉด ์ด๋ฆ์ ๋ฐ๋ก ์๋๊ฒ ๋ง๋๋ฏ
๋ค์ด๋๋ฏน ์๋์ฐ