ํ์ฌ World
๋ World
ํด๋์ค์ ๋จ์ผ ์ธ์คํด์ค์ ๊ด๋ จ๋ ๋ชจ๋ ๊ฒ์ ์๋ฏธํ๋ฉฐ ๋ณ๊ฒฝ๋์ง ์์ ๊ฒ์
๋๋ค. Level
๋ ๋จ์ผ ์ ์ฅ์ ์ฌ์ฉ๋๋ ์ฉ์ด๋ก ์ฑํ๋๊ณ ์์ต๋๋ค. ํผ๋์ค๋ฝ๊ฒ๋ ๊ฒ์์์ "์ธ๊ณ"๋ผ๊ณ ๋ ํ๋ฉฐ(์: "์๋ก์ด ์ธ๊ณ ๋ง๋ค๊ธฐ"), ๋๋ก๋ ์ฝ๋์์ "๋ ๋ฒจ"(์: "๋ ๋ฒจ ์ค๋น
์ด์ ์๋ ์ผ๋ถ ํด๋์ค์์ "Dimension"์ ์ฌ์ฉํ์ฌ ์ธ๊ณ ์ธ์คํด์ค(์ผ๋ฐ์ ์ผ๋ก ID - dimensionId
) ๋๋ ํด๋น ์ ํ(Overworld / Nether / End - DimensionType
)์ ์ค๋ช
ํ์ต๋๋ค. "์ฐจ์"์ ๋ํ ์ธ๊ธ์ ์์ ํ ์์ ๊ธฐ ์ํด ๋ช ๊ฐ์ง ๋ณ๊ฒฝ ์์
์ ์ํํ์ต๋๋ค.
์ด๊ฒ์ด ์ฌ๋ฐ๋ฅธ ๋ฐฉ๋ฒ์ธ์ง ํ์คํ์ง ์์ต๋๋ค. ์ด๋ค ์ฉ๋๋ก _๋ฌด์์_ ์ฌ์ฉํ ์ง ํ์ ํ ์ ์์ง๋ง, ์ฐ๋ฆฌ๋ "Dimension"์ด๋ผ๋ ์ด๋ฆ์ ์ ์งํด์ผ ํฉ๋๋ค.
๋ด๊ฐ ์ป์ ์ธ์์ "๋ ๋ฒจ"์ด ์ฌ๋ฌ ์ฐจ์์ด ๊ตฌํ๋๊ธฐ ์ ์ ์ด์ ๋ฒ์ ์์ ์ฌ์ฉ๋ ์ด๋ฆ์ด์์ต๋๋ค. ๋ด๊ฐ ๋ณธ ๊ธฐ์ต์ด ๋๋ ์ฃผ์ ์ฅ์๋ ๊น๋ฐ์ด๋ "๋ ๋ฒจ ์ ์ฅ ์ค..." ํ ์คํธ์๋๋ฐ ๋ฒ ํ์ ์ด๋ ์์ ์์ ์ ๊ฑฐ๋์์ผ๋ฉฐ ์ด๋ ์ผ๋ถ ์ด๊ธฐ ์ํ ๋ฒ์ ์ ์์ฌ์์ผ๋ฉฐ SMP์์ ์๋ฌด ์์ ๋ ์ํํ์ง ์์์๋ ๋ถ๊ตฌํ๊ณ ๋ํ๋ฌ์ต๋๋ค. (IIRC, Classic๋ ์ธ์ด๋ธ ๊ฒ์์ .mclevel ํ์ฅ์๋ฅผ ์ฌ์ฉํ์ต๋๋ค.)
์๋ฒ์ ์๋ ์ ์ฅ ๊ฒ์์ ๊ธฐ๋ณธ ์ด๋ฆ์ world
(๊ทธ๋ฆฌ๊ณ _long_ ์๊ฐ ๋์ ์ฌ์ฉ๋์์ต๋๋ค). ์ด๋ World๊ฐ ์ต์์ ์ปจํ
์ด๋์์ ์์ํ๋ ๊ฒ ๊ฐ์ต๋๋ค. ํ์ ๋๋ ํฐ๋ฆฌ๋ DIM
๋ผ๊ณ ํ๋ฉฐ Dimension์ด ๋ค์ ์์ค์์ ์๋ฏธํฉ๋๋ค. ๊ทธ๋ฐ ์ด๋ฆ์ ๊ฐ์ฅ "์ฌ๋ฐ๋ฅธ" ์ด๋ฆ์ฒ๋ผ ๋ณด์ด๋ฉฐ ์ฌ๋๋ค์ด ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ ์ด๋ฆ์ ๋ ๊ฐ๊น์ต๋๋ค.
World
โ Dimension
, Level
โ World
, ๊ทธ ๋ค๋ฅผ ๋ฐ๋ฅด๊ฒ ์ง๋ง ์ข ์ด์ํฉ๋๋ค.
๋ฐ๋ฉด์ net.minecraft.world.Dimension์ ์ด์ํ ๊ฒ์ ๋๋ค.
๋ด ์ ํธ๋๋ WorldSave + World์ด๊ณ WorldSave๋ Worlds ๋ชจ์์ ๋๋ค.
"Dimension" afaik์ ์์ด POV์์ ์๋ชป๋์์ผ๋ฉฐ, ์์ฆ ์ค์ ์๋ฏธ/๊ตฌํ ๋์ ์๋ ์๋๋ฅผ ์ค๋ช ํ ์ ์์ต๋๋ค. ๋ค๋ฅธ ์ธ๊ณ๋ ์ํ์ ์๋ฏธ์์ ํน๋ณํ ์ฐจ์์ ์๋ฏธ๋ฅผ ๊ฐ์ง ์์ผ๋ฉฐ ๋ชจ๋๋ ๋ ๋ง์ ์ธ๊ณ๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ ๋ ๊ฐ๊น์ด ๋ ๋ง์ "์ฐจ์"์ ์ถ๊ฐํฉ๋๋ค.
๋ ๋ฒจ์ ์ผ๋ฐ์ ์ผ๋ก Minecraft์ ์ธ๊ณ์ ๋์ผํ ์ธ์ ์ง์ญ/์ง๋๋ฅผ ์ค๋ช ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ ์๋ ์ฉ๋๋ ์ด์ ์ง๊ตํฉ๋๋ค.
๋๋ ๊ทธ๊ฒ์ด ๋ค์ ๋ชจํธํ๊ธฐ ๋๋ฌธ์ ๊ทธ๋ฅ ์ ์ฅํ์ง ์์์ผ๋ฏ๋ก WorldSave๊ฐ ์ข์ ์ต์ ์ธ ๊ฒ ๊ฐ์ต๋๋ค. Mojang ์์ ์ ์ ํ์ ์ด์ ํ๊ณ ๋ณต์ฌํ๊ธฐ๊ฐ ๋งค์ฐ ์ด๋ ต์ต๋๋ค.
์ธ๊ณ ์ ์ฅ
๊ทธ๊ฒ์ ์ ์ผํ ๋ฌธ์ ๋ WorldSaveHandler
์ ์ถฉ๋ํ๋ค๋ ๊ฒ์
๋๋ค.
์๋ ์ปฌ๋ ์ ์ด ๋๋
์๋์ปฌ๋ ์ ? :NS
๋๋ ์ด๋ฆ์ WorldSaveHandler
โ WorldSerializer
? WorldPersistenceManagerEngineFactory
์ธ๊ณ ์ปฌ๋ ์ ์ ์ํ ๊ธฐํ ์ต์ : Universe, WorldStore
๋๋ Universe
์ซ์ดํ์ง ์์ง๋ง ๊ทธ ์ด๋ฆ์ ๊ทธ๊ฒ์ด ์ธ๊ณ์ ๋ชจ์์ด๋ผ๋ ๊ฒ์ ์ฝํ๊ฒ ์์ํ ๋ฟ์ด์ง๋ง ์ ์ฅ ์ฒ๋ฆฌ๊ธฐ๋ก์์ ๊ธฐ๋ฅ์ ์๋์ง๋ง ์ธ๊ณ ๋๋ ํ ๋ฆฌ์ ์๋์ ์ธ ์ ์ฅ ๋ฐ ๋ก๋๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค.
๊ฐ์ฅ ๊ฐ๋จํ ๋ฐฉ๋ฒ์ ํน์ ์ธ๊ณ์ ๊ด๋ จ๋ ์ ์ฅ์ Dimension์ด๋ผ๋ ๋ ์ด๋ธ์ ์ง์ ํ๊ณ ์ฌ๋ฌ ์ธ๊ณ์ ๊ด๋ จ๋ ์ ์ฅ์ GameSave๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค.
ํธ์ง: ์์
์ฐ๋ฆฌ๋ ์ง๊ธ ํ๋ก์ ํธ์ ๋ช ์ฌ๋์ด ๋ ์๊ณ ์ด์ ์ฌ๋๋ค์ ์๊ฐํ ์๊ฐ์ด ์์์ ๊ฒ์ ๋๋ค. ๊ทํ์ (ํ์ฌ) ์๊ฒฌ์ ๋ฌด์์ ๋๊น?
Dimension์ ์ฌ์ฉํ๋ ๋ฐ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ์ด ๋จ์ด์๋ ์ฌ๋ฌ ์๋ฏธ๊ฐ ์์ง๋ง ์ด ๋ฌธ๋งฅ์์๋ ๋ง์ต๋๋ค. ์๋ง๋ Universe๋ณด๋ค ์กฐ๊ธ ๋ ์ ํํ ๊ฒ์ ๋๋ค.
"Dimension"์ด Vanilla: Minecraft Wiki - Dimensions ์ ๋ค์ํ ์ธ๊ณ/์ฐจ์ ์ ํ ์ ๋ํด ์ปค๋ฎค๋ํฐ์์ ์ฌ์ฉํ๋ ์ด๋ฆ์ด๋ผ๋ ์ ๋ ์ธ๊ธํ ๊ฐ์น๊ฐ
๋ชจ๋ World
๋ฅผ Dimension
๋ณ๊ฒฝํ๋ ๊ฒ์ด ๋งค์ฐ ์ด์ํ๊ฒ ๋๊ปด์ง๋๋ค. ์ณ์ง ์์ ๊ฒ ๊ฐ๋ค. ๋๋ ์ด๊ฒ์ด ๋ด๊ฐ ์ต์ํ ๊ฒ๋ณด๋ค ๋ฌด๊ฒ๊ฐ ๋ ๋๊ฐ๋ ๊ฒฝ์ฐ์ผ ์ ์๋ค๊ณ ์๊ฐํฉ๋๋ค ... _์๋ง๋_ ๋ ๋์ ์๊ฐ์ด๊ฒ ์ฃ ? ๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๋ ์ด๊ฒ์ ๋ฌด์์ ๊ทผ๊ฑฐํ๊ณ ์์ต๋๊น? Minecraft๊ฐ GUI์์ ์ ์ฅ ํด๋๋ฅผ "world"๋ก ์ธ๊ธํ๊ณ ์ปค๋ฎค๋ํฐ๊ฐ ์ฐจ๋ณํ์ ๋ฐฉ๋ฒ์ผ๋ก "์ฐจ์"์ ์ ํํ๊ธฐ๋ก ๊ฒฐ์ ํ๋ค๋ ์ฌ์ค?
์ฐจ์ 0์ด "์ธ๊ณ/์ง์ญ"์ ๋ค์ด๊ฐ๊ณ ์ฐจ์ 1์ด "์ธ๊ณ/DIM1/์ง์ญ"์ ์๊ธฐ ๋๋ฌธ์ ์ปค๋ฎค๋ํฐ์์ "์ฐจ์"์ ์ ํํ์ต๋๋ค.
๋๋ ๊ฐ์ธ์ ๋ํ ํด์ WorldSave
, World
, ๊ทธ๋ฆฌ๊ณ ์ด๋ฆ ๋ณ๊ฒฝ WorldSaveHandler
๊ฐ์์, WorldSerializer
.
์ด์ ๋๋ ์ด๊ฒ์ด ์๋นํ ๋ถ๋ช
ํ๋ค๊ณ ์๊ฐํฉ๋๋ค.
๋ ๋ฒจ - ์ ์ฅ ๊ฒ์(์ค๋ฒ์๋, ๋ค๋, ์๋, ๋ช ๊ฐ์ง ์ฌ์ฉ์ ์ ์ ์ฐจ์๊ณผ ๊ฐ์ ์ฌ๋ฌ ์ธ๊ณ๋ฅผ ํฌํจํ ์ ์์)
์ธ๊ณ - ์ธ๊ณ(ํด๋ผ์ด์ธํธ๊ฐ ๊ด์ฐฐํ๋ ๊ธฐ๋ณธ ๋จ์). ๊ฐ ์ธ๊ณ๋ ํ๋์ ์ฐจ์ ์ ํ์๋ง ์ํธ ์ฐ๊ฒฐ๋์ด ์์ต๋๋ค.
์ฐจ์ - ์ฐจ์ ์ ํ์
๋๋ค. ๊ทธ๊ฒ์ ultrawarm, height ๋ฑ๊ณผ ๊ฐ์ ์ผ๋ถ ์์ฑ์ ๊ฐ์ง ๋ฐ์ดํฐ ํฉ์ ์ํด ์ ์๋ฉ๋๋ค.
์ ์ด๋ ์ด๊ฒ์ด ํ์ฌ ์์ฌ์ ๋ํ๋๋ ๋ฐฉ์์
๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
๋ด ์ ํธ๋๋ WorldSave + World์ด๊ณ WorldSave๋ Worlds ๋ชจ์์ ๋๋ค.
"Dimension" afaik์ ์์ด POV์์ ์๋ชป๋์์ผ๋ฉฐ, ์์ฆ ์ค์ ์๋ฏธ/๊ตฌํ ๋์ ์๋ ์๋๋ฅผ ์ค๋ช ํ ์ ์์ต๋๋ค. ๋ค๋ฅธ ์ธ๊ณ๋ ์ํ์ ์๋ฏธ์์ ํน๋ณํ ์ฐจ์์ ์๋ฏธ๋ฅผ ๊ฐ์ง ์์ผ๋ฉฐ ๋ชจ๋๋ ๋ ๋ง์ ์ธ๊ณ๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ ๋ ๊ฐ๊น์ด ๋ ๋ง์ "์ฐจ์"์ ์ถ๊ฐํฉ๋๋ค.
๋ ๋ฒจ์ ์ผ๋ฐ์ ์ผ๋ก Minecraft์ ์ธ๊ณ์ ๋์ผํ ์ธ์ ์ง์ญ/์ง๋๋ฅผ ์ค๋ช ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ ์๋ ์ฉ๋๋ ์ด์ ์ง๊ตํฉ๋๋ค.
๋๋ ๊ทธ๊ฒ์ด ๋ค์ ๋ชจํธํ๊ธฐ ๋๋ฌธ์ ๊ทธ๋ฅ ์ ์ฅํ์ง ์์์ผ๋ฏ๋ก WorldSave๊ฐ ์ข์ ์ต์ ์ธ ๊ฒ ๊ฐ์ต๋๋ค. Mojang ์์ ์ ์ ํ์ ์ด์ ํ๊ณ ๋ณต์ฌํ๊ธฐ๊ฐ ๋งค์ฐ ์ด๋ ต์ต๋๋ค.