๐ ์ธ๋ฆฌ์ผ ์์ง5์ Old Input System์ ์ฌ์ฉํ์ฌ 3์ธ์นญ ์บ๋ฆญํฐ ์กฐ์ ์์คํ ์ ๊ตฌํํด๋ณด์.
ํด๋น ํฌ์คํ ์์๋ ์๋์ ์กฐ์๋ฒ์ ๊ตฌํํ ๊ฒ์ด๋ค.
- W,A,S,D ์ด๋
- Space Bar ์ ํ
- ๋ง์ฐ์ค ์์ ๋ณํ
์ด์ ํฌ์คํ
์ ๋ณด๊ณ ์ค์๊ธธ ๋ฐ๋๋๋ค.
์ด๋ฒ ํฌ์คํ
์์๋ Blueprint๋ก ์ฝ๋ฉํ์ฌ ์บ๋ฆญํฐ ์กฐ์์ ๊ตฌํํฉ๋๋ค.
1. ํ๋ก์ ํธ ์์ฑ
2. ํ๋ก์ ํธ ์ค์
3. ๋ธ๋ฃจํ๋ฆฐํธ ์กํฐ ์์ฑ
4. ๋ธ๋ฃจํ๋ฆฐํธ ์ฝ๋ฉ
5. ๊ฐ์
Blueprint์๋ํฐ์ [Event Graph]๋ก ์ด๋ํ๊ณ ๋ชจ๋ ์ญ์ ํด์ฃผ์
๊ทธ๋ฆฌ๊ณ ํ๋ฉด์ ์ฐํด๋ฆญํ๋ฉด ๋
ธ๋๋ฅผ ๊ฒ์ํ ์ ์๋ ์ฐฝ์ด ๋ฌ๋ค.
๊ฒ์ํ ๋ Context Sensitive๋ฅผ ์ฒดํฌํด์ฃผ์!
ํด๋น์ฐฝ์ inputaxis๋ผ๊ณ ์ ๋ ฅํ๋ฉด ์ฐ๋ฆฌ๊ฐ Project Settings์์ Mappingํ ๊ฐ์ด ์๋ค ์ด๋ค์ ๋ชจ๋ ์ถ๊ฐํด์ฃผ์.
โ์ด 5๊ฐ์ ๋ ธ๋๋ฅผ ์ถ๊ฐํด์ผ ํ๋คโ
1. Move Forward / Backward
2. Move Right / Left
3. Look Right / Left Mouse
4. Look Up / Down Mouse
5. Jump (๊ฒ์์ฐฝ์ action events๋ฅผ ๊ฒ์ํ๋ฉด ๋์จ๋ค.)
๊ทธ๋ฌ๋ฉด ์๋ ํ๋ฉด๊ณผ ๊ฐ์ด 5๊ฐ์ ๋ ธ๋๊ฐ ์ถ๊ฐ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
W,A,S,D์ผ๋ก ์ด๋ ์กฐ์๋ถํฐ ๊ตฌํํ๊ฒ ๋ค.
๋น๊ณต๊ฐ์ ์ฐํด๋ฆญ ํ ์๋ ๋
ธ๋ 2๊ฐ๋ฅผ ์ถ๊ฐํด์ค๋ค.
Forward Vector๋ ธ๋๋ Move Forward / Backward์ ํ ์
Right Vector๋ ธ๋๋ Move Right / Left์ ํ ์
๊ทธ๋ฆฌ๊ณ Add Movement Input ๋ ธ๋๋ฅผ ๊ฒ์ํ 2๊ฐ ์ถ๊ฐํ๋ค.
์ง๊ธ๋ถํฐ ํ๋์ฉ ์ด์ด๋ณด๊ฒ ๋ค.
- InputAxis์ ํ๋ฆ์ ์ ๊ฐ๊ฐ Add Movement Input์ ๋ฃ์ด ์ค๋ค.
- InputAxis์ Axis Value๋ฅผ Add Movement Input์ Scale Value์ ๋ฃ์ด ์ค๋ค.
- Get Actor Forward Vector์ Return Value๋ฅผ Add Movement Input์ World Direction์ ๋ฃ์ด ์ค๋ค.
๋ชจ๋ ์ด์ด์ค ํ โ์ปดํ์ผ ์ ์ฅโํ ํ๋ ์ดํ๋ฉด W,A,S,D๋ก ์กฐ์์ด ๊ฐ๋ฅํด์ง๋ค!
ํน์ ์บ๋ฆญํฐ๊ฐ ์ข์ฐ๋ฐ์ , ์ํ๋ฐ์ ์ผ๋ก ์ด๋ํ๋ค๋ฉด Project Settings์ Mapping๊ฐ์ด ๋ฐ๋๋ก ๋์ด ์๋์ง ํ์ธํ์.
์ด๋ฒ์๋ ๋ง์ฐ์ค ์์ ์กฐ์์ ๊ตฌํํด๋ณด์.
๋น๊ณต๊ฐ์ ์ฐํด๋ฆญ ํ Add Controller Yaw Input๋ ธ๋๋ฅผ ์ถ๊ฐํ๋ค.
โInputAixs Look Right / Left Mouse์ ํ ์์ด๋คโ
๊ทธ๋ฆฌ๊ณ ์๋ ์ฌ์ง๊ณผ ๊ฐ์ด ์ ์ ์ด์ด์ฃผ๋ฉด ๋์ด๋ค.
ํ๋ ์ด ํด๋ณด๋ฉด ๋ง์ฐ์ค ์ข์ฐ ์์ ์กฐ์์ด ๊ฐ๋ฅํด์ง๋ค.
๋น๊ณต๊ฐ์ ์ฐํด๋ฆญ ํ Add Controller Pitch Input๋ ธ๋๋ฅผ ์ถ๊ฐํ๋ค.
โInputAixs Look Up / Down Mouse์ ํ ์์ด๋คโ
๊ทธ๋ฆฌ๊ณ ์๋ ์ฌ์ง๊ณผ ๊ฐ์ด ์ ์ ์ด์ด์ค๋ค.
ํ๋ ์ด ํด๋ณด๋ฉด ๋ง์ฐ์ค ์ํ ์์ ์กฐ์์ด ์๋๋ค!
์ถ๊ฐ์ค์ ์ ํด์ค์ผ ํ๋ค.
์ด์ ์ํ ๋ง์ฐ์ค ์์ ์กฐ์์ด ๊ฐ๋ฅํด์ง๋ค.
Space Bar๋ฅผ ๋๋ฌ ์ ํ ์กฐ์์ ๊ตฌํํ๊ฒ ๋ค.
๋น๊ณต๊ฐ์ ์ฐํด๋ฆญ ํ jump๋ผ๊ณ ๊ฒ์ํ๋ค.
๊ทธ๋ผ ํ๋์ function์ Jump ๋
ธ๋๋ฅผ ์ถ๊ฐํ๋ค.
๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ์ InputAction Jump ๋ ธ๋์ Pressedํ๋ฆ์ ์ด์ด์ฃผ๋ฉด ๋์ด๋ค.
ํ๋ ์ดํด๋ณด๋ฉด ์ ํ๊ฐ ๊ฐ๋ฅํด์ง๋ค!
๋ง์ฝ ์ ํ๊ฐ ๋๋ฌด ์ฝํ ๊ฒ ๊ฐ๋ค๋ฉด ์ถ๊ฐ ์ค์ ์ผ๋ก ์กฐ์ ์ด ๊ฐ๋ฅํ๋ค.
Jump Z Velocity์ธ์๋ Gravity๋ฑ์ ์ฌ๋ฌ ์ค์ ์ด ์๋๋ฐ ์ถํ ์์ธํ ๋ค๋ฃจ๋๋ก ํ๊ฒ ๋ค.
๋ง์ฐ์ค ์กฐ์์ ๋ณดํต ์ฌ์ฉ์์ ์
๋ ฅ์ ์ํด ๋ฐ์ํ๋ค.
์ด๋, ์ฌ์ฉ์์ ์์คํ
์ด๋ ๊ฒ์์ด ์คํ๋๋ ํ๊ฒฝ์ ๋ฐ๋ผ ํ๋ ์ ์๋๊ฐ ๋ฌ๋ผ์ง ์ ์๋ค.
๊ทธ๋์ ์ฐ๋ฆฌ๋ ๊ฒ์์ด ๋ชจ๋ ํ๊ฒฝ์์ ์ผ๊ด๋ ๋ฐฉ์์ผ๋ก ๋์ํ ์ ์๋๋ก ๋ณด์ฅํด์ค์ผ ํ๋ค.
์ด๋ฅผ ์ํด ํ์ํ ๊ฒ์ด DeltaTime์ด๋ค.
์ฐ๋ฆฌ๋ ๋ง์ฐ์ค ์กฐ์ ๋ถ๋ถ์์ DeltaTime์ ์ถ๊ฐํด์ ๊ฐ์ ํ ๊ฒ์ด๋ค.
MouseTurnSpeed๋ผ๋ ๋ณ์๋ฅผ ์ถ๊ฐํด์ฃผ๊ณ Default Value๋ฅผ 20์ผ๋ก ์ค์ ํด์ฃผ์๋ค.
๊ทธ๋ฆฌ๊ณ ๋ณ์๋ฅผ Get์ผ๋ก ๋์ด์ ์ถ๊ฐํด์ค๋ค.
2๊ฐ์ ๋ ธ๋๋ฅผ ์ถ๊ฐํด์ฃผ์ด์ผ ํ๋ค.
๊ทธ๋ฆฌ๊ณ ๊ธฐ์กด์ ์ฐ๊ฒฐ๋์ด ์๋ ์ ๋ ฅ๊ฐ์ ์ญ์ ํ๋ค.
๊ทธ๋ฆฌ๊ณ ๊ณฑ์ฐ์ฐ์ 3๊ฐ์ง ์ ๋ ฅ๊ฐ์ ๋ชจ๋ ๋ฃ๋๋ค.
- InputAxis์ AxisValue
- Mouse Turn Speed
- Get World Delta Seconds์ Return Value
๊ณฑ์ฐ์ฐ์ Return๊ฐ์ Add Controller์ ๋ฃ์ด์ค๋ค.
๋ง์ฐ์ค ์ข์ฐ ์
๋ ฅ์ ๋ํด์ ์ค๋ช
ํ๋๋ฐ
์ํ ์
๋ ฅ์ ๋ํด์๋ ๋์ผํ๊ฒ ์์
ํด์ค๋ค.
์ต์ข
์ ์ผ๋ก ์๋ ์ฌ์ง๊ณผ ๋น๊ตํ์ฌ ์์
๋ด์ฉ์ ํ์ธํ์.
์ด๊ฒ์ผ๋ก Old Input System์ ์ฌ์ฉํ์ฌ ์ธ๋ฆฌ์ผ ์์ง5์์ ์บ๋ฆญํฐ๋ฅผ ์กฐ์์ ๋ชจ๋ ๊ตฌํํ์๋ค.
๋ค์ ํฌ์คํ ์ Enhanced Input System์ ์ฌ์ฉํ์ฌ ์บ๋ฆญํฐ ์กฐ์์ ๊ตฌํํด๋ณด๋๋ก ํ๊ฒ ๋ค.
์กฐ์์์ ์ ์ ํ ์ ๋๋ฉ์ด์ ์ ์ถ๊ฐํ๋ ๊ฒ๋ ์ถํ ํฌ์คํ ํ๊ฒ ๋ค.
1. ํ๋ก์ ํธ ์์ฑ
2. ํ๋ก์ ํธ ์ค์
3. ๋ธ๋ฃจํ๋ฆฐํธ ์กํฐ ์์ฑ
4. ๋ธ๋ฃจํ๋ฆฐํธ ์ฝ๋ฉ
5. ๊ฐ์