์์ ์ ALSv3 ๋ง ๋ถ์ํ ๊ฒฝํ์ด ์๊ธฐย ๋๋ฌธ์ ํน์๋ ํ๋ฆด ์๋ ์์ผ๋ ์ฃผ์ํ๊ธฐ ๋ฐ๋.
BaseLayer : ๊ธฐ๋ณธ ์ ๋๋ฉ์ด์
OverlayLayer : ๊ธฐ๋ณธ ์ ๋๋ฉ์ด์ ์๋ก ์ค๋ฒ๋ ์ดํ ์ ๋๋ฉ์ด์ . (์ฌ์ฉ์์ ์ปค์คํฐ ๋ง์ด์ง์ ์ํ ๋ ์ด์ด)
BasePoses : ๊ธฐ๋ณธ ์ ๋๋ฉ์ด์ ์ ์์ ์ฌ์ฉ๋ ๊ธฐ๋ณธ ํฌ์ฆ
MakeDynamicAdditive ๋ ธ๋๋ฅผ ์ฌ์ฉํด์ ๋์ ์ผ๋ก Additive ํฌ์ฆ๋ฅผ ๋ง๋ค๊ณ ์์. (MS ๋ ๋ฉ์ ์คํ์ด์ค, LS ๋ ๋ก์ปฌ(๋ณธ) ์คํ์ด์ค)
BaseLayerInput - BasePoseInput = BaseAdditive
BaseAdditive ๋ ํ์ฌ ๊ธฐ๋ณธ ์ ๋๋ฉ์ด์ (BaseLayer) ์ด ๊ธฐ๋ณธ ํฌ์ฆ(BasePoses) ์์ ์ด๋์ ๋ ๋ณ๊ฒฝ๋์๋์ง ์ ๋๋ฅผ ๋ํ๋.
์๋ฅผ ๋ค์ด ์์ผ๋ก ๋ฌ๋ฆฌ๊ธฐ ๋์์์ ํ๋ฆฌ๋ฅผ ์์ผ๋ก 10๋ ์ ๋ ์์๋ค๋ฉด ์ด 10๋์ ํด๋นํ๋ ๋ณ๊ฒฝ๊ฐ์ BaseAdditive ์ ์ ์ฅ.
(์ง๋ฌธ์๋ BasePoseInput ์ ํ๋ฆฌ๋ฅผ ์์ผ๋ก ์์๊ธฐ ๋๋ฌธ์ ํ์ฌ ์ ๋๋ฉ์ด์ (๊ธฐ๋ฆฝ์์ธ)ย -ย ๊ธฐ๋ณธ ํฌ์ฆ(์์ธ ์์ธ)ย = ๋ณ๊ฒฝ๊ฐ(ํ๋ฆด ๋ค๋ก ์ ํ๋ค)ย ๋ก ๊ณ์ฐ์ด ๋์ ํด๋น ๋ณ๊ฒฝ๊ฐ์ด ์ ์ฉ๋์ด ๋ฒ๋ฆผ)ย
์ฌ๊ธฐ๊ฐ ์์ฃผ ์ค์ํ ๋ถ๋ถ์ธ๋ฐ ๋ ๊ฐ์ ์ปค๋ธ ๊ฐ์ ์ฉ๋๋ฅผ ํ์ ํด์ผํจ.
Layering_Spine : Spine ์ ๋๋ฉ์ด์ ์ ์ค๋ฒ๋ผ์ด๋ ํ ๊ฒ์ธ๊ฐ? ( 0 ์ด๋ฉด ๊ธฐ๋ณธ ์ ๋๋ฉ์ด์ ์ฌ์ฉ, 1 ์ด๋ฉด ์ฌ์ฉ์์ ์ค๋ฒ๋ ์ด ์ ๋๋ฉ์ด์ ์ฌ์ฉ)
Layering_Spine_Add (SpineAdd ๋ณ์) : ์ค๋ฒ๋ ์ด ์ ๋๋ฉ์ด์ ์ย BaseAdditive (๋ฉ์ ์คํ์ด์ค) ๋ณ๊ฒฝ๊ฐ์ย ์ถ๊ฐํ ๊ฒ์ธ๊ฐ?
0 ์ด๋ผ๋ฉด ๊ธฐ๋ณธ ์ ๋๋ฉ์ด์ ์ํ์ ์๊ด์์ด ์ค๋ฒ๋ ์ด ์ ๋๋ฉ์ด์ ๊ทธ๋๋ก ์ ์ฉ.
1 ์ด๋ผ๋ฉด ๊ธฐ๋ณธ ์ ๋๋ฉ์ด์ ์ ๋ณ๊ฒฝ ๊ฐ์ด ์ค๋ฒ๋ ์ด์ ์ถ๊ฐ.
์๋ฅผ ๋ค์ด ์๊น ๋ฌ๋ฆฌ๊ธฐ์์ ํ๋ฆฌ๋ฅผ 10๋ ์์๋ค๋ฉด ๊ทธ 10๋ ์์ธ๊ฒ ์ ์ฉ๋จ.ย
๊ธฐ๋ณธ ์์ธ๋ก ํ์ฐฝ ๋ฆฌ๋ก๋ ์ ๋๋ฉ์ด์ ์ ๋ง๋ค์์ ๋ 0 ์ด๋ผ๋ฉด ๋ฌ๋ฆฌ๊ธฐ์ ์๊ด์์ด ๋๋ฐ๋ก ์์ ๋ฆฌ๋ก๋๋ฅผ ํ ๊ฑฐ๊ณ
1 ์ด๋ผ๋ฉด ๋ฌ๋ฆฌ๊ธฐ ์์ธ์ ๋ฐ๋ผ์ ๊ธฐ์ธ์ด์ง ์ํ๋ก ๋ฆฌ๋ก๋๋ฅผ ํจ.
๊ฐ๋จํ ์ค๋ฒ๋ ์ด ์ ๋๋ฉ์ด์
์ ๋ฐ๊ฟ์ ํ
์คํธ
Layering_Spine ๊ณผ Layering_Spine_Add ์ปค๋ธ๋ฅผ ์ถ๊ฐํ ๊ฒ์ ๋ณผ ์ ์์. (์ปค๋ธ ๊ฐ = 1)
์ด๊ฑด ์ด ์ ๋๋ฉ์ด์ ์ Spine ๋ถ๋ถ๋ง ์ ์ฉ๋๋ค๋ ์๋ฏธ์ผ.
์ปค๋ธ ๊ฐ์ ๋ฐ๋ผ์ ๊ฐ ๋ถ์ ๋ณ๋ก ์ ๋๋ฉ์ด์ ์ ์ค๋ฒ๋ผ์ด๋ ํ ์ง ์ค์ ํ ์ ์์.
Overlay ํด๋์ ์ ๋๋ฉ์ด์
๊ณผ OverlayLayer ์์ ์ฌ์ฉ๋๋ ๋ฐฉ์์ ๋ณด๊ณ ๋ฐ๋ผ์ ๋ง๋๋ ๊ฑธ ์ถ์ฒํจ.
์๋ฅผ ๋ค์ด ํ ์๊ธฐ๋ฅผ ๋ณด๋ฉด ํน์ ํ๋ ์ ๋ณ๋ก ํน์ ์์ธ์ ๋ถ์๋ณ ์ค๋ฒ๋ผ์ด๋ ์ฌ๋ถ๋ฅผ ์ค์ ํด ๋จ์.
๊ทธ๋ฆฌ๊ณ ์ํ์ ๋ฐ๋ผ์ย ExplicitTime ๊ฐ์ ์ฌ์ฉํด์ ํน์ ํ๋ ์์ ํฌ์ฆ๊ฐ์ ์ฌ์ฉํ๊ณ ์์.
(Running ์ํ๋ผ๋ฉด 0.08 ์ด์ ํด๋นํ๋ ํ๋ ์)
์ ๊ณต์์ด ์ ๋ ๊ฒ ๋์ด ์์ด์ ๊ทธ๋ฌ๊ตฌ๋.. ๋์ฒด ์ ๋ฐ๋๋ก ์์ง์ด๋์ง ๊ธฐํ๋ฐ๋ฆฌ๋ผ ๋๋ฌด ์ด๋ ค์ ๋๋ฐ ๋ช ์พํ ์ค๋ช ์ ๋ง ๊ฐ์ฌํฉ๋๋ค.
3์ผ ๋๊ฒ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐ ๋ชปํ๊ณ ์์๋๋ฐ ๊ฐํผ๋ฅผ ์ก๊ฒํด์ค์ ๋๋ฌด ๊ฐ์ฌํจ.. ํน์ ๊ด์ฐฎ๋ค๋ฉด ์ฝ์ํ ๊ธฐํํฐ์ฝ์ด๋ผ๋ ์ฃผ๊ณ ์ถ์๋ฐ ์ค์นด๋จ๊ฒจ์ฃผ๋ฉด ์ข๊ฒ ์ต๋๋ค.
๊ฐ์ฌ ์ธ์ฌ๋ง์ผ๋ก ์ถฉ๋ถํจ!
๋ค์ํ๋ฒ ๊ฐ์ฌํฉ๋๋ค. ํน์ ํ๋๋ง ๋ ๋ฌผ์ด๋ด๋ ๋ ๊น์? ๋ง์์ฒ๋ผ ๊ธฐ๋ณธ ํฌ์ฆ๊ฐ ์๋๋ผ ๋ ์ด์์์ ์ถ๊ฐํด์ ์ฌ์ฉ์ ํด์ผํ ๊บผ ๊ฐ์๋ฐ ํ๋ ์ด์ด๊ฐ ์์ํ ๋ ์ฒซ ํฌ์ฆ๋ฅผ ๋ ์ด์์ ํฌ์ฆ๋ก ์ฌ์ฉํ๋ ค๋ฉด ์ด๋ ๋ธ๋ฃจํ๋ฆฐํธ๋ฅผ ์ข ํ์ธํด๋ด์ผ ํ ๊น์?
ALS_AnimBP -> OverlayLayer -> OverlayStates ์์ OverlayState ๋ณ์ ๊ฐ์ ๋ฐ๋ผ์ Default, Bow ๋ฑ๋ฑ ๊ฐ ์ํ๋ก ์ ํํ๊ณ ์๋๊ฒ ๊ฐ์. OverlayState ๊ฐ์ ALS_Character_BPI ์ธํฐํ์ด์ค์ BPI_Get_CurrentStates ๋ฅผ ํตํด์ ์ค์ ๋๊ณ .
ALS_Base_CharacterBP ์ ๊ตฌํ์์ OverlayState ๋ณ์ ๊ฐ์ ์ ๋ฌํ๊ณ ์์. ALS_OverlayState ์ ์๋ก์ด ์ํ๋ฅผ ์ถ๊ฐํ ๋ค ์ OverlayState ๊ฐ์ ๋ณ๊ฒฝํด ์ฃผ๊ณ ํด๋น ์ํ๋ฅผ ์ ๋๋ธ๋ฃจํ๋ฆฐํธ์์ ๊ตฌํํด ์ฃผ๋ฉด ๋ ๊ฒ ๊ฐ์.
ALS_DemoLevel ๋ณด๋ฉด ๋ค๋ฅธ ์บ๋ฆญํฐ๋ค์ด ๋ค๋ฅธ ๊ธฐ๋ณธ ๋ชจ์ ์ ํ๊ณ ์๋๋ฐ ๊ฐ ์บ๋ฆญํฐ ๋ณ๋ก OverlayState ๊ฐ์ด ๋ค๋ฅด๊ฒ ์ค์ ๋์ด ์์ด์ ํด๋น ์ํ์ ์ค๋ฒ๋ ์ด ์ ๋๋ฉ์ด์ ์ ๋ณด์ฌ์ฃผ๊ณ ์์.
์ ์ ๋ง ๊ฐ์ฌํฉ๋๋ค. Overlay๋ฅผ ์ถ๊ฐํ๊ณ ์ด๋์ ๋ฐ๊พธ๋์ง ๋ชฐ๋๋๋ฐ State Value์์ ๋ฐ๊พธ๋ ๊ฑฐ์๊ตฐ์. ์ ๋ง์ ๋ง ๊ฐ์ฌํฉ๋๋ค.
๊ฐ์ถ
ํค์ผ.... ์ ๋ ๋งค์ฐ ๋ง์ด ๋ฐฐ์๊ฐ๋๋ค.