๐
2025-08-13
1.1 Tick์ ์ค๋ฒํค๋
Tick: ๋งค ํ๋ ์ ์คํ๋๋ ํจ์
DeltaTime: ์ด์ ํ๋ ์๊ณผ ํ์ฌ ํ๋ ์๊ฐ์ ์๊ฐ. ํ๋ ์ ๋
๋ฆฝ์ ์ผ๋ก ๋์ํ๊ธฐ ์ํด ์ด๊ฒ์ ๊ณฑํด์ ๋ฌผ๋ฆฌ ์ฐ์ฐ์ ํด์ผํ๋ค.
์กํฐ๋ค์ Tick ํจ์๋ ์์ธ๋ค. ๋๋ฌด ์์ด๋ฉด ๊ฒ์ ํ๋ ์์ด ํ์ ํ ๋จ์ด์ง ์ ์๋ค.
1.2 Tick ์ต์ ํ
1. ์คํ ๊ฐ๊ฒฉ ์กฐ์
๋งค ํ๋ ์ ์คํํ ํ์์๋ ๋์์ Tick์์ ์ฃผ๊ธฐ์ ์ผ๋ก ์คํํ๋๋ก ๋ณ๊ฒฝ
ex) DeltaTime์ ๋์ ํ์ฌ 0.1 ์ด๋ ๋๋ง๋ค ํ๋ ์ด์ด ์ฒดํฌ
๊ถ์ฅ ์ฃผ๊ธฐ
- ๋งค ํ๋ ์: ์
๋ ฅ, ์นด๋ฉ๋ผ, ์ ๋๋ฉ์ด์
- 0.05: ๊ทผ์ ์ ํฌ
- 0.1: AI, ๊ฑฐ๋ฆฌ ์ฒดํฌ
- 0.2~0.5: ๋ฏธ๋๋งต, ์๊ฑฐ๋ฆฌ ์
2. ์ค๋ณต ๊ณ์ฐ ์ ๊ฑฐ
์กํฐ๋ณ๋ก ํ๋ ์ด์ด์ ๊ฑฐ๋ฆฌ ๊ณ์ฐ -> ๋งค๋์ ํด๋์ค์์ ๊ณ์ฐํ๊ณ ๋ฐ์ดํฐ ๊ณต์
3. ๊ฑฐ๋ฆฌ๋ณ ์ฐจ๋ฑ ์
๋ฐ์ดํธ (LOD)
๋งค๋์ ์์ ๊ฑฐ๋ฆฌ๋ณ๋ก ์ฐจ๋ฑ์ ์ผ๋ก ์
๋ฐ์ดํธ
4. Tick Group์ผ๋ก ์คํ ์์ ์ต์ ํ
์กํฐ๋ณ๋ก Tick์ ์ธ์ ์คํํ ์ง ์ ํ๊ธฐ
Tick ์คํ ์์
[ํ๋ ์ ์์]
1. TG_PrePhysics (๋ฌผ๋ฆฌ ์ ) - ์
๋ ฅ, ์ด๋ ๋ช
๋ น
2. ๋ฌผ๋ฆฌ ์์ง ๊ณ์ฐ
3. TG_PostPhysics (๋ฌผ๋ฆฌ ํ) - AI, ์ถฉ๋ ์ฒ๋ฆฌ [๊ธฐ๋ณธ๊ฐ]
4. TG_PostUpdateWork (๋ง์ง๋ง) - UI, ์นด๋ฉ๋ผ
[ํ๋ ์ ๋]
Tick์ ์์ฐ๋๊ฒ ๋ ์ข์
Timer๋ ํ์ํ ๋๋ง ์คํํ๋ ์์ฝ ํจ์์ด๊ธฐ ๋๋ฌธ์ Tick๋ณด๋ค CPU ๋ถ๋ด๊ณผ ๊ด๋ฆฌ ๋์ด๋๊ฐ ๋ฎ๋ค.
์ฌ๋ฌ ์กํฐ์์ ๋์์ ํ์ด๋จธ๊ฐ ์คํ๋๋ฉด ๋ถํ๊ฐ ์๊ธธ ์ ์์ผ๋ฏ๋ก ์์ ์์ ๋ง ๋์๋ก ์ง์ ํด์ค ์ ์๋ค.
ํ์ด๋จธ ์ฌ์ฉํ ๋๋ ๋๊น์ง ํธ๋ค์ ์ ๊ด๋ฆฌํด์ผํ๋ค.
1. TimerHandle์ ์์ ํ ๊ด๋ฆฌ
ํญ์ ์ฌ์ฉ์ ์ isvalid๋ก ์ฒดํฌ
ํธ๋ค์ ์ด๊ธฐํ ํ์ง ์์ผ๋ฉด ์ ํจํ์ง ์์ ํธ๋ค์ด ๋จ์ ์ ์๋ค.
ClearTimer ์ดํ Invalidate()๋ก ์ด๊ธฐํํ๊ธฐ.
Endplay์์ ํ๋ฒ์ ์ง์ธ ์๋ ์๋ค.
2. SetTimerForNextTick
SetTimer๋ ์ง์ ์๊ฐ ํ ์คํ๋์ง๋ง SetTimerForNextTick์ ๋ค์ ํ๋ ์์ ์์ ์์ ์ ์คํ๋๋ค.
์์ง ์ปดํฌ๋ํธ๊ฐ ์ด๊ธฐํ๋์ง ์์์๋ ์คํ๋๋๊ฒ์ ๋ฐฉ์งํ ์ ์๋ค.
3. Lambda vs Delegate
Lambda-> ์งง๊ณ ๊ฐ๋จํ ์์
์ ์ ํฉํ๋ค. ํ์ด๋จธ์์ ๋๋ค๊ฐ this๋ก ์บก์ณํ๋ฉด ๊ฐ์ฒด๊ฐ ํ๊ดด๋ ํ์๋ ๋๋ค๊ฐ ๋จ์์์ ์ ์๋ค.
๊ฐ์ฒด๊ฐ ํ๊ดด๋ ๋ Endplay์์ ๋ชจ๋ ํ์ด๋จธ๋ฅผ ์ ๋ฆฌ
TWeakObjectPtr ์ฐ๊ธฐ
๊ฐ์ฒด๊ฐ ์์ด์ง ์ํ์ด ์์๋ ์ฌ์ฉํ ์์๋ ํฌ์ธํฐ. ์ ํจํ์ง ์์ผ๋ฉด ์คํ๋์ง ์๋๋ค.
๋๋ค ์ธ ๋๋ ์ง์ this๋ก ์บก์ณํ๋ ๊ฒ ์ง์.
Delegate-> ๋ช
ํํ๊ณ ์ ์ง๋ณด์์ ์ ๋ฆฌํ๋ค. ๋๋ฒ๊น
ํ๊ธฐ ์ข๋ค.
์ฌ์ฉ ์ฃผ์ํ ์
1. ํด๋ง->์ด๋ฒคํธ ์ ํ
ํด๋ง: ๋งคํ๋ ์ ํธ์ถํ๊ณ ํ์ธ. ํธ๋ฆฌ๊ฑฐ ํ์ด๋ฐ์ ํด๋ง์ผ๋ก ์ก์ผ๋ฉด ๋นํจ์จ์ ์ด๋ค.
์ด๋ฒคํธ: ์ด๋ฒคํธ ๋ฐ์ ์์ ํธ๋ฆฌ๊ฑฐ ๋ฐ๋. ํธ๋ฆฌ๊ฑฐ ํ์ด๋ฐ์ ๋งค๋ฒ ํ์ธํ์ง ์์๋ ๋๋ค.
2. Event Bus ํจํด
์ค์ ์ง์คํ ์ด๋ฒคํธ ๊ด๋ฆฌ.
์ด๋ฒคํธ๋ฅผ ํ ๊ณณ์์ ๋ฐํํ๊ณ ๊ด๋ฆฌํ๋ค.
๋ง์ ์์
์ ๋ฉ์ธ ์ค๋ ๋๊ฐ ๋ค ์ฒ๋ฆฌํ๋ฉด ๊ฒ์์ด ๋ฉ์ถ ์ ์๋ค.
1. ์ธ๋ฆฌ์ผ์ ๋ฉํฐ ์ค๋ ๋ ๊ตฌ์กฐ์ ์ญํ
์ค๋ ๋๋ณ ๊ฐ๋ฅํ ์์
๊ณผ ๋ถ๊ฐ๋ฅํ ์์
์ด ์์ผ๋ฏ๋ก ๊ตฌ๋ถํ์ฌ ์งํํ์ฌ์ผํ๋ค.
์ด๋ฒ ํํ์์๋ ์ ์ฉํ ๋ถ๋ถ์ ์ฐพ์๋ด์ผ๊ฒ ๋ค.
์ถ์ฒ: ์คํ๋ฅดํ์ฝ๋ฉ ๋ด์ผ๋ฐฐ์์บ ํ