๊ณต๋ถ€ ์ผ์ง€๋ฅผ ์จ๋„ ๋˜๋Š”์ง€๋Š” ๋ชจ๋ฅด๊ฒ ์œผ๋‚˜ ์ผ๋‹จ ์ž‘์„ฑํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค.

์•ˆ๋œ๋‹ค๋ฉด ์‚ญ์ œํ•˜๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.


์˜ค๋Š˜ ๊ณต๋ถ€ํ•œ๊ฑธ ๋ณต์Šตํ•˜๋Š” ์ฐจ์›์—์„œ ๋˜์งš์–ด๋ณด๊ณ ์ž ํ•˜๋Š” ๋งˆ์Œ์— ์˜ค๋Š˜ ๊ฒช์–ด์˜จ ์ผ๋“ค์„ ๊ธ€ ํ˜•ํƒœ๋กœ ์ •๋ฆฌํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค.


์˜ค๋Š˜์€ ๊ณจ๋“œ๋ฉ”ํƒˆ๋‹˜์˜ย 

' ํ‚ค๋ณด๋“œ ๋งˆ์šฐ์Šค๋กœ ์ด๋™์‹œ์ผœ๋ณด์ž! [ ์œ ๋‹ˆํ‹ฐ ์ž…๋ฌธ ๊ฐ•์ขŒ B6 ] ' ๊ฐ•์˜๋ฅผ ๋ณด๊ณ  ์บ๋ฆญํ„ฐ ์ด๋™ ๊ตฌํ˜„ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋”ฐ๋ผํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค.


์•„์ง ๊ฐœ๋ฐœ ๋‰ด๋น„๋ผ ๋‹ค๋ฐฉ๋ฉด์—์„œ ๋ฏธ์ˆ™ํ•˜์—ฌ ์šฉ์–ด๋“ค ํ˜น์€ ๊ฐœ๋…, ์ฝ”๋“œ๋“ค์ด ํ‹€๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ–‰์—ฌ ์•„๋ž˜ ๊ธ€ ์ค‘์— ํ‹€๋ฆฐ ๋ถ€๋ถ„์ด ์žˆ๋‹ค๋ฉด ์ง€์  ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค!!!



1์ฐจ ์ฝ”๋“œ


24b0d121e09c28a8699fe8b115ef046ec34dccf2


๋ฌด์ž‘์ • ์ƒ๊ฐ๋‚˜๋Š” ๋Œ€๋กœ ํ•ด๋ณธ ์ฒซ ๋ฒˆ์งธ ๊ตฌํ˜„


ํ•˜์ง€๋งŒ if ๋ฌธ์ด ๋งŽ์•„ ๊ฐ€๋…์„ฑ์ด ๋–จ์–ด์ง„๋‹ค๊ณ  ๋А๊ปด์ ธ์„œ ์–ด๋–ป๊ฒŒ ํ•˜๋ฉด ์ข‹์„์ง€ ์ƒ๊ฐ์„ ํ•ด ๋ด„


์ƒ๊ฐํ•ด๋ณด๋‹ˆ GetAxisRaw๋Š” ์ž์ฒด์ ์œผ๋กœ -1 , 0 , 1๋งŒ ๋ฐ˜ํ™˜ํ•˜๋‹ˆ๊นŒ ์• ์ดˆ์— ์ด ๊ฐ’์„ ๋ฒกํ„ฐ๊ฐ’์— ๋„ฃ์œผ๋ฉด ๋˜์ง€ ์•Š์„๊นŒ? ๋ž€ ์ƒ๊ฐ์ด ๋“ค์—ˆ์ง€๋งŒ

์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•  ์ง€ ๋ชฐ๋ผ ์žผ๋ฏผ์ด์—๊ฒŒ ๋ฌผ์–ด๋ด์„œ ์•„๋ž˜์™€ ๊ฐ™์ด ์ˆ˜์ •์„ ํ–ˆ๋‹ค.


2์ฐจ ์ฝ”๋“œ

24b0d121e09c28a8699fe8b115ef046f5e4f9a9c


๊ตฌํ˜„์€ ์ž˜ ๋˜์—ˆ์ง€๋งŒ ์บ๋ฆญํ„ฐ๊ฐ€ ๋Œ€๊ฐ์„ ์œผ๋กœ ์ด๋™์‹œ์— ์ƒํ•˜์ขŒ์šฐ๋กœ ์›€์ง์ด๋Š” ๊ฒƒ ๋ณด๋‹ค ๋น ๋ฅด๋‹ค๋Š” ๊ฒƒ์„ ํ™•์ธ.


์ƒ๊ฐ์„ ํ•ด๋ณด๋‹ˆ ๋งŒ์•ฝ ์บ๋ฆญํ„ฐ๊ฐ€ 1์นธ์„ ์›€์ง์ด๋Š”๋ฐ 1์ดˆ๊ฐ€ ๊ฑธ๋ฆฐ๋‹ค ํ–ˆ์„ ๋•Œ ์ƒํ•˜์ขŒ์šฐ๋กœ ์ด๋™ํ•  ๋•Œ๋Š” 1์˜ ์†๋„๋งŒ ์žˆ์œผ๋ฉด ๋˜์ง€๋งŒ ๋Œ€๊ฐ์„ ์ผ ๊ฒฝ์šฐ ๋ฃจํŠธ2์˜ ์†๋„๊ฐ€ ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์—

๋Œ€๊ฐ์„  ์ด๋™์‹œ ๋” ๋นจ๋ผ์ง„๋‹ค๋ผ๋Š” ์ƒ๊ฐ์— ๋„๋‹ฌํ•˜์—ฌ ์žผ๋ฏผ์ด์—๊ฒŒ ์งˆ๋ฌธ์„ ํ•ด ๋ด„.

์œ„ ์ฝ”๋“œ๋ฅผ ๋ณด์—ฌ์ฃผ๋ฉฐ ๋‚ด๊ฐ€ ์กฐ๊ธˆ ์ „ ํ•œ ์ƒ๊ฐ์„ ๋ฌผ์–ด๋ณด๋‹ˆ ๋งž๋‹ค๊ณ  ๋Œ€๋‹ตํ•˜๋ฉฐ ํ•ด๊ฒฐ๋ฐฉ๋ฒ•์ธ ์ •๊ทœํ™”๋ฅผ ์•Œ๋ ค์คŒ.


๊ทธ๋ ‡๊ฒŒ

Vector3 moveDir = new Vector3(h, v, 0).normalized;

๋กœ ์ˆ˜์ • ํ›„์— ๋Œ€๊ฐ์„  ์†๋„๋ฅผ ์žก์„ ์ˆ˜ ์žˆ์—ˆ์Œ.


์ด ์ฏค ๋˜๋‹ˆ Shift ํ‚ค ์ž…๋ ฅ์‹œ ๊ฑท๋Š” ๊ฑธ ๊ตฌํ˜„ํ•˜๊ณ  ์‹ถ๋‹จ ์ƒ๊ฐ์ด ๋“ค์–ด ๋ฌด์ž‘์ • ๊ตฌํ˜„ํ•ด ๋ด„

if (Input.GetKey(KeyCode.LeftShift) && Input.Getbutton("Horizontal"))
๋กœ ํ•ด๋ณด๊ณ  ์žผ๋ฏผ์ด์—๊ฒŒ ํ”ผ๋“œ๋ฐฑ์„ ๋ถ€ํƒ ํ›„ ์žผ๋ฏผ์ด์˜ ๋‹ต๋ณ€์€ย 

์•„์ด๋””์–ด๋Š” ์ข‹์•˜์ง€๋งŒ ๋ณดํ†ต ๊ฒŒ์ž„์—์„œ๋Š” Shift๋ฅผ ๋ˆ„๋ฅด๋ฉด ๋ฌด์กฐ๊ฑด ์†๋„ ๋ณ€์ˆ˜๋ฅผ ๋ฐ”๊พธ๊ณ  ๊ทธ ๋ณ€์ˆ˜๋ฅผ ์ด๋™ ์ฝ”๋“œ์— ๊ณฑํ•˜๋Š” ๋ฐฉ์‹์„ ๋งŽ์ด ์“ด๋‹ค๋Š” ๋‹ต๋ณ€์„ ๋ฐ›์Œ.


๊ทธ๋ ‡๊ฒŒ ์†๋„๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋ณ€์ˆ˜ speed ์™€ ํ˜„์žฌ์†๋„๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋ณ€์ˆ˜ currentSpeed๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ๊ฑท๊ธฐ๋ฅผ ๊ตฌํ˜„ํ•ด๋ณธ




3์ฐจ ์ฝ”๋“œย 


24b0d121e09c28a8699fe8b115ef046ecb40c2f7



์‹คํ–‰ ํ•ด ๋ดค๋”๋‹ˆ ์ž˜ ์ž‘๋™ํ•˜์˜€์Œ.


์ด ์ฏค ๋˜๋‹ˆ ํ† ๊ธ€ ๋ฐฉ์‹๋„ ๊ตฌํ˜„ํ•ด๋ณด๊ณ  ์‹ถ๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ์Œ.

๊ทธ๋ž˜์„œ ํ† ๊ธ€ ๋ฐฉ์‹์„ ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„ํ•  ๊นŒ ์ƒ๊ฐํ•ด๋ณด๋‹ค๊ฐ€ bool ํƒ€์ž…์„ ์ด์šฉํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์–ด์„œ ๊ตฌํ˜„ ์‹œ์ž‘.



๊ทธ๋ ‡๊ฒŒ ๊ฑท๊ธฐ ์ƒํƒœ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” bool ๋ณ€์ˆ˜ isWalking์„ ์ถ”๊ฐ€ํ•˜์—ฌ ํ† ๊ธ€ ๋ฐฉ์‹์œผ๋กœ ๊ตฌํ˜„ํ•ด ๋ณธ

4์ฐจ ์ฝ”๋“œ

24b0d121e09c28a8699fe8b115ef046ecc40ccff



์—ฌ๊ธฐ๊นŒ์ง€๊ฐ€ ์˜ค๋Š˜ ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค.


๋‚˜๋งŒ์˜ ์บ๋ฆญํ„ฐ๊ฐ€ ์›€์ง์ด๋‹ค๋ณด๋‹ˆ ๋„ˆ๋ฌด ์‹ ๊ธฐํ•˜๊ณ  ๋ณด๋žŒ์ฐฌ 1์ผ์ฐจ ์˜€์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.