์ตœ๋Œ€ 1 ๋ถ„ ์†Œ์š”

๐ŸŒ ๊ณต์ง€ ์‚ฌํ•ญ ์ด ํฌ์ŠคํŠธ๋Š” ์ธํ”„๋Ÿฐ์˜ ์ž…๋ฌธ์ž๋ฅผ ์œ„ํ•œ 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)

  1. HUD๋ฅผ ์ƒ์†๋ฐ›๋Š” BP๋ฅผ ๋งŒ๋“ค์–ด์ค€๋‹ค.
  2. Event Receive Draw HUD : ๋งค ํ”„๋ ˆ์ž„๋งˆ๋‹ค ํ˜ธ์ถœ. size๋Š” ํ™”๋ฉด์˜ ํฌ๊ธฐ๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ์Œ.
  3. Draw Texture : ํ…์Šค์ฒ˜๋ฅผ ๋ฐฐ์น˜ํ•˜๋Š”๋ฐ, โ€˜ํ™”๋ฉด์˜ ์ค‘๊ฐ„์ง€์ โ€™์„ ๊ตฌํ•ด์„œ ๋„ฃ์–ด์ฃผ์–ด์•ผ ํ•œ๋‹ค.
  4. ํ™”๋ฉด ์‚ฌ์ด์ฆˆ์˜ 1/2๋งŒํผ ๊ตฌํ•ด์„œ ๋ฐฐ์น˜ํ•˜๋ฉด ๋œ๋‹ค.
  5. ํฌ๋กœ์Šคํ—ค์–ด์˜ ๋ฐฐ์น˜๊ฐ€ ๋๋‚ฌ์ง€๋งŒ, ์ด์ œ ๋ฐœ์‚ฌ๋ฅผ ๋ˆŒ๋ €์„ ๋•Œ ํ™”๋ฉด์ƒ ํฌ๋กœ์Šคํ—ค์–ด๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” ๋ฐฉํ–ฅ์— ์žˆ๋Š” object๋ฅผ ์ฐพ๋Š” ๊ณผ์ •์ด ํ•„์š”ํ•˜๋‹ค.

BP_Player.FireWepon() ์•ˆ์—์„œ Raycasting

  1. Get Viewport Size๋ฅผ ์ด์šฉํ•˜๋ฉด ํ˜„์žฌ ํ™”๋ฉด์˜ ํฌ๊ธฐ๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ๊ณ , 1/2 ๋•Œ๋ฆฌ๋ฉด ์ค‘์•™์˜ ์ขŒํ‘œ๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค. Make Vector 2D๋กœ 2D vector๋กœ ๋งŒ๋“ค์–ด์ค€๋‹ค.
  2. Deproject Screen to World : Transforms the given 2D screen space coordinate into a 3D world-space point and direction.
  3. Line Trace by Channel๋กœ ์นด๋ฉ”๋ผ ์œ„์น˜์—์„œ ํƒ€๊ฒŸ์„ ํ™•์ธํ•˜๋Š” ๋ถ€๋ถ„๊นŒ์ง€ ์™„๋ฃŒ๊ฐ€ ๋˜์—ˆ๋‹ค๋ฉด ๋‹ค์Œ์œผ๋กœ ๋„˜์–ด๊ฐ„๋‹ค.

์ด๊ตฌ์—์„œ ๋ฐœ์‚ฌ๋˜๋„๋ก

  1. ์ด๊ตฌ์˜ ์œ„์น˜๋ฅผ ์ •ํ•˜๋Š” ์†Œ์ผ“ ์ƒ์„ฑ ํ›„, Get Socket Transform์„ ์ด์šฉํ•ด์„œ ๋ถˆ๋Ÿฌ์˜จ๋‹ค.
  2. ์†Œ์ผ“์—์„œ ๋ฐœ์‚ฌ๋˜๋Š” ๋กœ์ง์œผ๋กœ ์ˆ˜์ •ํ•˜๋ฉด ๋—!

์นดํ…Œ๊ณ ๋ฆฌ:

์—…๋ฐ์ดํŠธ:

๋Œ“๊ธ€๋‚จ๊ธฐ๊ธฐ