1. ๊ฒ์ํ๋ ์ด ์ด๋น๋ฆฌํฐ ์์คํ
GAS(Gameplay Ability System)๋ ์ด๋น๋ฆฌํฐ ๋ฐ ์ดํธ๋ฆฌ๋ทฐํธ ์ ํ์ ๊ตฌ์ถํ๊ธฐ ์ํ ํ๋ ์์ํฌ์ด๋ค.
- ๋น ๋ฅธ ๋ฐ๋ณต ์์ ๊ณผ ๋ชจ๋์ฑ: ์ ํ์ฒ๋ผ ๋จ์ํ ๊ฒ๋ถํฐ ๊ธฐ์ ๋ชจ์์ฒ๋ผ ๋ณต์กํ ๊ฒ๊น์ง ๋ค์ํ ์ธ๊ฒ์ ์ด๋น๋ฆฌํฐ๋ฅผ ์ค๊ณ ๋ฐ ๊ตฌํํ๊ณ ํจ๊ณผ์ ์ผ๋ก ์ฐ๊ฒฐํ ์ ์๋ค.
- ๋คํธ์ํฌ ๋ฆฌํ๋ฆฌ์ผ์ด์
GAS์ ์ฃผ์ ๊ฐ๋ ์ ๋ค์๊ณผ ๊ฐ๋ค.
- ์ด๋น๋ฆฌํฐ ์์คํ
์ปดํฌ๋ํธ(Ability System Component)
- ๊ฒ์ํ๋ ์ด ์ด๋น๋ฆฌํฐ ์์คํ ๊ณผ ์ํธ์์ฉํ๋ ์กํฐ์ ๋ถ๋ ์ปดํฌ๋ํธ์ด๋ค.
- ์ด๋น๋ฆฌํฐ๋ฅผ ํ์ฑํํ๊ณ , ์ดํธ๋ฆฌ๋ทฐํธ๋ฅผ ์ ์ฅํ๊ณ , ์ดํํธ๋ฅผ ์ ๋ฐ์ดํธํ๊ณ , ์กํฐ ๊ฐ ์ํธ์์ฉ์ ์ฒ๋ฆฌํ๋ค.
- ๊ฒ์ํ๋ ์ด ์ด๋น๋ฆฌํฐ(Gameplay Abilities)
- UGameplayAbility ํด๋์ค์ C++ ๋๋ ๋ธ๋ฃจํ๋ฆฐํธ ์์์ด๋ค.
- ํน์ ์ด๋น๋ฆฌํฐ๊ฐ ์ด๋ค ์ญํ ์ ํ๋์ง ์ ์ํ๋ค.
- ์ด๋น๋ฆฌํฐ์ ๋ฆฌํ๋ฆฌ์ผ์ด์ ๊ณผ ์ธ์คํด์ฑ ํ๋ ๊ฐ์ ์์๊ฐ ์ด๋ป๊ฒ ์ฒ๋ฆฌ๋๋์ง ์ ์ํ๋ค.
- ์ ํ์ฒ๋ผ ์์ ๋ฐ์ดํฐ์ ์ด๋ฏธ ์ ์ฒ์ ์ผ๋ก ๋ด์ฌ๋์ด ์์ ์๋ ์๊ณ , ๊ฒ์ ํผ์ฒ ๊ฐ์ ์ก์ ์ผ๋ก๋ถํฐ ๋ถ์ฌ๋ฐ์ ์๋ ์๊ณ , ๊ฒฝํ์ด๋ ์ฅ๋น๋ฅผ ํตํด ํ๋ํ ์๋ ์๋ค.
- ์ด๋น๋ฆฌํฐ ํ์คํฌ(Ability Task)๋ฅผ ํตํด ๋น๋๊ธฐ ๊ตฌ์ฑ ์์๋ฅผ ํธ์ถํ ์ ์๋ค.
- ๊ฒ์ํ๋ ์ด ์ดํธ๋ฆฌ๋ทฐํธ(Gameplay Attributes)
- ๊ฒ์์ด๋ ์กํฐ์ ํน์ ํ ๋ฐฉ์์ผ๋ก ์ํฅ์ ๋ฏธ์น๋ FGameplayAttribute ๊ตฌ์กฐ์ฒด์ ์ ์ฅ๋๋ float ๊ฐ์ด๋ค.
- ์๋ช ๋ ฅ, ํ, ์ ํ ๋์ด, ๊ณต๊ฒฉ ์๋์ ๊ฐ์ ์ผ๋ฐ์ ์ธ ๊ฐ์ ๋งํ๋ค.
- ๊ฒ์ํ๋ ์ด ์ดํํธ(Gameplay Effects)
- ์ฆ์ ๋๋ ์ผ์ ์๊ฐ ๋์ ๊ฒ์ํ๋ ์ด ์ดํธ๋ฆฌ๋ทฐํธ๋ฅผ ๋ณ๊ฒฝํ ์ ์๋ค.
- ์ผ์ ์๊ฐ ๋์ ๋ณ๊ฒฝํ๋ ๊ฒ์ ์ผ๋ฐ์ ์ผ๋ก ๋ฒํ๋ ๋๋ฒํ๋ก ๋ถ๋ฅธ๋ค.
- ๊ฒ์ํ๋ ์ด ํ
- ์ฌ์ด๋, ์๊ฐ์ ์ธ ์ดํํธ ๋ฑ์ ์ค์ ํ ์ ์๋ค.
2. ๋ผ์ด๋ผ
๋ผ์ด๋ผ๋ GAS๋ฅผ ์ฌ์ฉํ์ฌ ๋๋ถ๋ถ์ ๊ฒ์ํ๋ ์ด๋ฅผ ์กฐ์ํ๋ค. ๋ฌด๊ธฐ ์ฌ์ฉ, ์ ํ, ์ง์ฃผ ๊ฐ์ ์ด๋ ๊ด๋ จ ์ก์ ์ด๋ ์ฌ๋ง ํ ๋ฆฌ์คํฐ ํธ๋ฆฌ๊ฑฐ ๊ฐ์ ์๋์ ์ธ ๋ฆฌ์ค๋ ์ก์ ๋ฑ์ ์ผ๋ฐ์ ์ธ ์ก์ ์ ๋ํ ์ด๋น๋ฆฌํฐ๊ฐ ๊ตฌํ๋์ด ์๋ค. ๋ํ, ๋งค์น ์ ๋ณด UI ๋ถ๋ฌ์ค๊ธฐ๋ ๊ฒ์ํ๋ ์ด ํ์ด์ฆ ๊ด๋ฆฌ ๊ฐ์ด ๋ ์ผ๋ฐ์ ์ธ ๋ชฉ์ ์๋ ์ด๋น๋ฆฌํฐ๋ฅผ ์ฌ์ฉํ๋ค.
์ด๋ป๊ฒ ์ด๋น๋ฆฌํฐ๋ฅผ ์ฌ์ฉํ๊ณ ์๋์ง ํ๋๋ง ์ดํด๋ณด์. ๋ผ์ด๋ผ๋ฅผ ์คํํ๋ฉด ๊ธฐ๋ณธ ๋งต์ผ๋ก ๋ก๋๋๋ฉฐ ์ด ๋ ๋ฒจ์๋ ๊ฒฝํ์ ๋ก๋ํ๋ ์ฌ๋ฌ ํฌํธ์ด ์์๋ค.
์ด ๊ฒฝํ์๋ ๊ฒ์ ํผ์ฒ, ํฐ ๋ฑ์ ์ค์ ํ์ฌ ์๋ก์ด ๊ฒ์ ํ๋ ์ด๊ฐ ๊ฐ๋ฅํ๋๋ก ์ง์ํ์๋๋ฐ, ์ฌ๊ธฐ์ ์ด๋น๋ฆฌํฐ๋ ์ค์ ์ด ๊ฐ๋ฅํ๋ค.
์๋์ ๊ฐ์ด ์ด๋น๋ฆฌํฐ ์ธํธ๋ฅผ ์ค์ ํ๋ฉด ๊ฒฝํ ๋ก๋ ์ ์ด๋น๋ฆฌํฐ๋ ํจ๊ป ๋ก๋๋์ด ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค.
- ์ธ๋ฑ์ค 0: ํน์ ShowLeaderboard Tag๊ฐ ๋ฐ์๋์ ๋, GA_ShowLeaderboard_TDM ์ด๋น๋ฆฌํฐ ํ์ฑํ
- ์ธ๋ฑ์ค 1: GA_AutoRespawn ์ด๋น๋ฆฌํฐ ํ์ฑํ
์ด๋น๋ฆฌํฐ๋ ํ์ฑํ, ๋นํ์ฑํ ๋ฑ ๋ค์ํ ์ด๋ฒคํธ๋ฅผ ํตํด ๊ตฌํํ ์ ์์ผ๋ฉฐ ์ค๊ฐ์ ์ทจ์๋๊ฑฐ๋ ๋๋ ๊ฒฝ์ฐ๋ฅผ ์๋ ค์ค ์๋ ์๋ค.
์ด ์์์ ๋ค์ํ ๊ธฐ๋ฅ๋ค์ ์ถ๊ฐํ์ฌ ์ด๋น๋ฆฌํฐ๋ฅผ ๋์์ํค๋ฉด ๋๋ค.
์ฐธ๊ณ
https://docs.unrealengine.com/5.0/ko/gameplay-ability-system-for-unreal-engine/
https://docs.unrealengine.com/5.0/ko/abilities-in-lyra-in-unreal-engine/