๐ Dormancy(ํด๋ฉด)๊ณผ Relevance(๊ด๋ จ์ฑ)์ ์ธ๋ฆฌ์ผ ์์ง์์ ๋คํธ์ํฌ ์ต์ ํ๋ฅผ ์ํด ์ฌ์ฉ๋๋ ๊ฐ๋ .
๐ ๋ ๊ฐ๋ ๋ชจ๋ ๋ฉํฐํ๋ ์ด์ด ๋คํธ์ํฌ ์ต์ ํ๋ฅผ ์ํ ๊ฒ์ด์ง๋ง, ๋์ ๋ฐฉ์๊ณผ ๋ชฉ์ ์ด ๋ค๋ฆ.
๐ก ํ๋ง๋๋ก ์ ๋ฆฌํ๋ฉด:
Dormancy(ํด๋ฉด) โ "๋ณํ์ง ์๋ ์กํฐ๋ ๋คํธ์ํฌ ์
๋ฐ์ดํธ๋ฅผ ๋ฉ์ถ๋ค."
Relevance(์ค์์ฑ) โ "์ด๋ค ํด๋ผ์ด์ธํธ๊ฐ ์ด ์กํฐ์ ์ ๋ณด๋ฅผ ๋ฐ์์ง ๊ฒฐ์ ํ๋ค."
๐ก Dormancy๋ "๋ณํ์ง ์๋ ์กํฐ๋ ๋คํธ์ํฌ ์ ๋ฐ์ดํธ๋ฅผ ์ค๋จ"ํ๋ ๊ธฐ๋ฅ.
// ์กํฐ๋ฅผ Dormant(ํด๋ฉด) ์ํ๋ก ์ค์
SetNetDormancy(DORM_DormantAll);
โก ์ด์ ๋ถํฐ ์ด ์กํฐ๋ ๋ณ๊ฒฝ์ด ์์ผ๋ฉด ๋คํธ์ํฌ ์ ๋ฐ์ดํธ๋ฅผ ์ค๋จํจ
// Dormancy ํด์ (Replication ๋ค์ ์์)
SetNetDormancy(DORM_Awake);
๐ก Dormancy๋ "์ ๋ฐ์ดํธ๋ฅผ ๋ฉ์ถฐ ๋คํธ์ํฌ ๋ถํ๋ฅผ ์ค์ด๊ธฐ ์ํด ์ฌ์ฉ๋จ."
void ADoor::BeginPlay()
{
Super::BeginPlay();
// ๋ฌธ์ด ๊ธฐ๋ณธ์ ์ผ๋ก Dormant ์ํ (์ด๋ฆฌ๊ธฐ ์ ๊น์ง Replication ์์)
SetNetDormancy(DORM_DormantAll);
}
void ADoor::OpenDoor()
{
// ๋ฌธ์ด ์ด๋ฆฌ๋ฉด Dormancy ํด์ (Replication ํ์ฑํ)
SetNetDormancy(DORM_Awake);
}
๋ฌธ์ด ๊ฐ๋งํ ์์ ๋๋ ๋คํธ์ํฌ ์ ๋ฐ์ดํธ๋ฅผ ์ค๋จํ์ง๋ง,
ํ๋ ์ด์ด๊ฐ ๋ฌธ์ ์ด๋ฉด ๋ค์ ํ์ฑํ๋จ.
โก ์ฆ, ๋คํธ์ํฌ ๋ถํ๋ฅผ ์ค์ด๋ฉด์๋ ํ์ํ ์๊ฐ์๋ง Replication์ ์ฌ์ฉํ๋๋ก ์ต์ ํ ๊ฐ๋ฅ
๐ก Relevance๋ "์ด๋ค ํด๋ผ์ด์ธํธ๊ฐ ์ด ์กํฐ์ ์ ๋ณด๋ฅผ ๋ฐ์์ง ๊ฒฐ์ "ํ๋ ๊ธฐ๋ฅ.
// ๋ชจ๋ ํ๋ ์ด์ด์๊ฒ Replication
bAlwaysRelevant = true;
// ํน์ ๊ฑฐ๋ฆฌ ๋ด ํ๋ ์ด์ด์๊ฒ๋ง Replication
bOnlyRelevantToOwner = true;
bAlwaysRelevant : โ
๋ชจ๋ ํ๋ ์ด์ด์๊ฒ Replication (๋ฉํฐํ๋ ์ด์ด์์ ํ์์ ์ธ ์ ๋ณด)
bOnlyRelevantToOwner : โ
ํน์ ํด๋ผ์ด์ธํธ(Owner)์๊ฒ๋ง Replication (์: ํ๋ ์ด์ด ๊ฐ์ธ UI)
NetCullDistanceSquared : โ
์ผ์ ๊ฑฐ๋ฆฌ ๋ฐ๊นฅ์์๋ Replication ์ค์ง (๋คํธ์ํฌ ์ต์ ํ)
๐ก Relevance๋ "์ค์ํ ์ ๋ณด๋ง ํ์ํ ํด๋ผ์ด์ธํธ์๊ฒ ๋ณด๋ด์ ๋คํธ์ํฌ ๋ถํ๋ฅผ ์ค์ด๊ธฐ ์ํ ๊ธฐ๋ฅ."
void AWeapon::BeginPlay()
{
Super::BeginPlay();
// ์ด ๋ฌด๊ธฐ์ ์ํ๋ Owner(์์ ์)์๊ฒ๋ง Replication๋จ
bOnlyRelevantToOwner = true;
}
void AMyActor::BeginPlay()
{
Super::BeginPlay();
// ์ผ์ ๊ฑฐ๋ฆฌ ์ด์ ๋จ์ด์ง๋ฉด Replication ์ค๋จ
NetCullDistanceSquared = 1000000.0f;
}
๐ ๊ฒฐ๋ก : Dormancy vs Relevance
โ Dormancy โ ์ด ์กํฐ์ ์ํ๊ฐ ๋ณํ์ง ์์ผ๋ฉด, ๋คํธ์ํฌ ์
๋ฐ์ดํธ๋ฅผ ๋ฉ์ถ๋ค
โ Relevance โ ๋๊ฐ ์ด ์กํฐ์ ์ ๋ณด๋ฅผ ๋ฐ์์ผ ํ๋์ง ๊ฒฐ์ ํ๋ค
๋ณํ์ง ์๋ ์กํฐ๋ Dormant๋ก ๋ง๋ค๊ณ , ํ์ ์๋ ํ๋ ์ด์ด์๊ฒ๋ Replication์ ๋ณด๋ด์ง ์๋ ๊ฒ์ด ์ต์ ํ์ ํต์ฌ