1. ํ์๋ผ์ธ
ํ์๋ผ์ธ ๋ ธ๋๋ ๋ธ๋ฃจํ๋ฆฐํธ ๋ด์์ ๊ฐ๋จํ ์๊ฐ ๊ธฐ๋ฐ ์ ๋๋ฉ์ด์ ์ ๋น ๋ฅด๊ฒ ๊ตฌํํ ์ ์๋ ํน์ ๋ ธ๋์ด๋ค.
- ์
๋ ฅ ํ
- play: ํ์๋ผ์ธ ํ์ฌ ์๊ฐ์์ ์ ๋ฐฉํฅ ์ฌ์
- play from start: ํ์๋ผ์ธ ์ฒ์๋ถํฐ ์ ๋ฐฉํฅ ์ฌ์
- stop: ํ์๋ผ์ธ ํ์ฌ ์๊ฐ์์ ์ฌ์ ๋ฉ์ถค
- reverse: ํ์๋ผ์ธ ํ์ฌ ์๊ฐ์์ ์ญ๋ฐฉํฅ ์ฌ์
- ์ถ๋ ฅ ํ
- update: ํ์๋ผ์ธ์ด ํธ์ถ๋์๋ง์ ์คํ ์ ํธ ์ถ๋ ฅ
๊ทธ๋ํ ํญ์ด๋ ๋ด ๋ธ๋ฃจํ๋ฆฐํธ ํญ์์ ํ์๋ผ์ธ์ ๋๋ธ ํด๋ฆญํ๋ ๊ฒ์ผ๋ก ๋ธ๋ฃจํ๋ฆฐํธ ์๋ํฐ์์ ๋ฐ๋ก ํธ์ง์ด ๊ฐ๋ฅํ๋ค.
- track ์ถ๊ฐ: float, vector ์ธ ์ฌ๋ฌ ๊ฐ์ ์ ๋๋ฉ์ด์ ์ ์ํ ํธ๋ ์ถ๊ฐ
- Length: ํ์๋ผ์ธ์ ์ฌ์ ๊ธธ์ด ์ค์
2. ํ์ฉ
๋ฌธ์ด ์ด๋ฆฌ๊ณ ๋ซํ๋ ์ ๋๋ฉ์ด์ ์ ์ถ๊ฐํด ๋ณผ ๊ฒ์ด๋ค. ๋จผ์ ํ์๋ผ์ธ ๋ ธ๋๋ฅผ ์ถ๊ฐํ ๋ค, ๋ค์๊ณผ ๊ฐ์ด ๋ฐฐ์นํ๋ค. Door Open ์ด๋ฒคํธ ํธ์ถ ์ ๋ฌธ์ด ์ด๋ฆฌ๊ณ Door Close ์ด๋ฒคํธ ํธ์ถ ์ ๋ฌธ์ด ๋ซํ๊ฒ ๋๋ค.
๋ฌธ์ ํ์ ์ํค๋ ๋ถ๋ถ์ Lerp์ผ๋ก ํ์๋ผ์ธ์ด ์ฌ์๋๋ ๋์ z 0๋ถํฐ z 60๊น์ง ๋ถ๋๋ฝ๊ฒ ํ์ ํ๊ฒ ๋๋ค.
์ด์ ํ์๋ผ์ธ์ ์์ ํด์ผ ํ๋ค.
- ์์ฑํ ํ์๋ผ์ธ์ ๋๋ธํด๋ฆญํ๋ค.
- float ํธ๋์ ์ถ๊ฐํ๋ค.
- 0์ด์ ํค๋ฅผ ์ถ๊ฐํ ๋ค value๋ฅผ 0์ผ๋ก ํ๋ค.
- Length์ ๋ง์ง๋ง ์ด์ ํค๋ฅผ ์ถ๊ฐํ ๋ค value๋ฅผ 1๋ก ํ๋ค. ์ฌ๊ธฐ์ Length๊ฐ 1๋ก 1์ด ๋์ value๊ฐ 0์์ 1๋ก ๋ณํ ๊ฒ์ด๋ค. ์ด ๊ฐ์ด Lerp์ ์ ๋ ฅ ๊ฐ์ด ๋๊ฒ ๋๋ค.
- ์์ฑํ ํค๋ฅผ ์ฐํด๋ฆญํ์ฌ Auto๋ User๋ก ๋ณ๊ฒฝํ์ฌ ๊ณก์ ์ด ๋๋๋ก ๋ณ๊ฒฝํ๋ค.
์ด๋ ๊ฒ ์ค์ ํ๋ฉด Door ์ด๋ฒคํธ๋ฅผ ํธ์ถํ ๋ ํ์๋ผ์ธ์ด ์ฌ์๋๋ฉฐ ๋ฌธ์ด ์ด๋ฆฌ๊ณ ๋ซํ๊ฒ ๋๋ค.