์ถฉ๋๊ด๋ จ
๐ ๊ณต์ง ์ฌํญ ์ด ํฌ์คํธ๋ ์ธํ๋ฐ์ ์ ๋ฌธ์๋ฅผ ์ํ UE5-Part3. ์ธ๋ฆฌ์ผ ์์ง 3D ๊ฒ์ ๊ฐ๋ฐ ์ ๋ฌธ ๊ฐ์๋ฅผ ํตํด ํ์ตํ ๋ด์ฉ์ ์์ฝ์ ๋๋ค. ์์ธํ ๋ด์ฉ์ ํด๋น ๊ฐ์๋ฅผ ์ฐธ๊ณ ํด์ฃผ์ธ์.
#
Collision component๋ ๊ธฐ๋ณธ ์ด๋ก ์ ๋ํด์๋ ์ด๋ฏธ ์๊ณ ์์ผ๋ ๋์ด๊ฐ๋ค.
RayCasting
Line Trace By Channel Line Trace By Profile : Profile์ Preset์ ์๋ฏธํ๋ค. Line Trace For Objects : Make Array ๋ฑ์ผ๋ก ๋ฐฐ์ด์ ์ง์ด๋ฃ์ด์ ํด๋นํ๋ ์ค๋ธ์ ํธ์ ์ถฉ๋์ฒ๋ฆฌ๋ฅผ ํ๋ค.
Box Trace ๋ฒ์ ๋ ์์.
Cross Hair
HUD blueprint (BP_AimHUD)
- HUD๋ฅผ ์์๋ฐ๋ BP๋ฅผ ๋ง๋ค์ด์ค๋ค.
- Event Receive Draw HUD : ๋งค ํ๋ ์๋ง๋ค ํธ์ถ. size๋ ํ๋ฉด์ ํฌ๊ธฐ๋ผ๊ณ ๋ณผ ์ ์์.
- Draw Texture : ํ ์ค์ฒ๋ฅผ ๋ฐฐ์นํ๋๋ฐ, โํ๋ฉด์ ์ค๊ฐ์ง์ โ์ ๊ตฌํด์ ๋ฃ์ด์ฃผ์ด์ผ ํ๋ค.
- ํ๋ฉด ์ฌ์ด์ฆ์ 1/2๋งํผ ๊ตฌํด์ ๋ฐฐ์นํ๋ฉด ๋๋ค.
- ํฌ๋ก์คํค์ด์ ๋ฐฐ์น๊ฐ ๋๋ฌ์ง๋ง, ์ด์ ๋ฐ์ฌ๋ฅผ ๋๋ ์ ๋ ํ๋ฉด์ ํฌ๋ก์คํค์ด๊ฐ ๊ฐ๋ฆฌํค๋ ๋ฐฉํฅ์ ์๋ object๋ฅผ ์ฐพ๋ ๊ณผ์ ์ด ํ์ํ๋ค.
BP_Player.FireWepon() ์์์ Raycasting
- Get Viewport Size๋ฅผ ์ด์ฉํ๋ฉด ํ์ฌ ํ๋ฉด์ ํฌ๊ธฐ๋ฅผ ๊ตฌํ ์ ์๊ณ , 1/2 ๋๋ฆฌ๋ฉด ์ค์์ ์ขํ๋ฅผ ๊ตฌํ ์ ์๋ค. Make Vector 2D๋ก 2D vector๋ก ๋ง๋ค์ด์ค๋ค.
- Deproject Screen to World : Transforms the given 2D screen space coordinate into a 3D world-space point and direction.
- Line Trace by Channel๋ก ์นด๋ฉ๋ผ ์์น์์ ํ๊ฒ์ ํ์ธํ๋ ๋ถ๋ถ๊น์ง ์๋ฃ๊ฐ ๋์๋ค๋ฉด ๋ค์์ผ๋ก ๋์ด๊ฐ๋ค.
์ด๊ตฌ์์ ๋ฐ์ฌ๋๋๋ก
- ์ด๊ตฌ์ ์์น๋ฅผ ์ ํ๋ ์์ผ ์์ฑ ํ, Get Socket Transform์ ์ด์ฉํด์ ๋ถ๋ฌ์จ๋ค.
-
์์ผ์์ ๋ฐ์ฌ๋๋ ๋ก์ง์ผ๋ก ์์ ํ๋ฉด ๋!
๋๊ธ๋จ๊ธฐ๊ธฐ