๐จ Three.js ๋ฒ ์ดํน ๋ฐ Blender ํตํฉ ์ํฌํ๋ก์ฐ ๊ธฐ๋ฅ ์ ๋ฆฌ

โ ๋ฒ ์ดํน(Baking)์ด๋?
3D ์ฌ์์ ์กฐ๋ช , ๊ทธ๋ฆผ์, ๋ฐ์ฌ, ์ฐ๋น์ธํธ ์คํด๋ฃจ์ ๋ฑ์ ๊ณ์ฐ ๊ฒฐ๊ณผ๋ฅผ ๋ฏธ๋ฆฌ ํ ์ค์ฒ์ ๊ตฝ๋(static texture๋ก bakeํ๋) ์์ ์ ๋งํ๋ค.
๐ ์ด๋ ์์ฑ๋ ํ ์ค์ฒ๋ ์ดํ ์ค์๊ฐ ๋ ๋๋ง ์ ์กฐ๋ช ๊ณ์ฐ ์์ด ๋ฐ๋ก ์ฌ์ฉ๋๋ค.
→ ํผํฌ๋จผ์ค๋ ๋ฐ์ด๋์ง๋ง, ๋์ ์กฐ๋ช ๋ถ๊ฐ, ์ ์ ์ธ ์ฌ๋ง ๊ฐ๋ฅํ ์ ํ์ด ์๋ค.
๐ฉ ๋ฒ ์ดํน์ ์ฅ์ vs ๋จ์
์ฅ์ | ๋จ์
| ํผํฌ๋จผ์ค๊ฐ ํจ์ฌ ์ข๋ค | ์กฐ๋ช ์ด ๊ณ ์ ๋์ด ๋์ ์ผ๋ก ๋ฐ๊ฟ ์ ์๋ค |
| ์ ์ฌ์ ์ฅ์น์์๋ ๊ณ ํ์ง ์กฐ๋ช ํํ ๊ฐ๋ฅ | ๋ฒ ์ดํน ์์ ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆผ |
| ์ง์ค๋ฉํธ๋ฆฌ๊ฐ ๋จ์ํด์ง๊ณ GPU ๋ก๋ฉ์ด ๋น ๋ฆ | ๋ค์ํ ์ค๋ธ์ ํธ → ๋ค์ํ ํ ์ค์ฒ ํ์ |
| Three.js์ ๊ฐ์ ธ์ค๊ธฐ ์ฌ์ | UV ์ธ๋ํ ๋ฑ ์ถ๊ฐ ์์ ํ์ |
๐ ๏ธ Blender์์์ ๋ฒ ์ดํน ์ํฌํ๋ก์ฐ ์์ฝ
1. ๋ชจ๋ธ๋ง ๋ฐ ์ต์ ํ
- ๋ถํ์ํ ํด๋ฆฌ๊ณค ์ ๊ฑฐ
- ์ค๋ธ์ ํธ ์ด๋ฆ ์ ๋ฆฌ ๋ฐ ์ปฌ๋ ์ ๋ถ๋ฅ (three.js group๊ณผ ์ ์ฌ)
2. UV ์ธ๋ํ
- ํ ์ค์ฒ ๋ฒ ์ดํน์ ์ํด ๋ชจ๋ ๋ฉ์์ UV๊ฐ ํ์ํจ
- UV๋ 0~1 ๊ณต๊ฐ ์์ ๋ฐฐ์นํด์ผ ํจ
- ๊ฒน์น์ง ์๋๋ก ์ธ๋ํ
3. ์กฐ๋ช ๋ฐฐ์น ๋ฐ ์ฌ์ง ์ค์
- ํฌํธ, ๋จํ ๋ฑ์ Emission(๋ฐ๊ด) ์ฌ์ง ์ฌ์ฉ
- ๋๋ฌด, ๋, ๋ฐ๋ฅ ๋ฑ์ ๊ธฐ๋ณธ ์์(Material BaseColor) ์ ์ฉ
4. ์นด๋ฉ๋ผ ์ธํ
- NUMPAD 0์ผ๋ก ๋ทฐํฌํธ ์นด๋ฉ๋ผ์ ์ผ์น
- Cycles๋ก ์ ํ (๋์ ํ๋ฆฌํฐ ๋ ๋๋ง์ ์ํ ํ์ ์ค์ )
5. ๋ฒ ์ดํน
- Cycles Renderer ์ฌ์ฉ
- Diffuse, AO, Shadow, Light ๋ฑ ํ์ํ ์ฑ๋ ๋ฒ ์ดํฌ ๊ฐ๋ฅ
- ๋ฒ ์ดํฌ ํ ํ ์ค์ฒ๋ฅผ ์ด๋ฏธ์ง๋ก ์ ์ฅ
6. ๋ด๋ณด๋ด๊ธฐ ๋ฐ Three.js ์ ์ฉ
- .glb ๋๋ .gltf๋ก ์ต์คํฌํธ (์์ถ์ ์ ํ ์ฌํญ)
- Three.js์์ GLTFLoader๋ก ๋ถ๋ฌ์ค๊ธฐ
- ๋ฒ ์ดํน๋ ํ ์ค์ฒ๋ ์ด๋ฏธ ์ฌ์ง์ ํฌํจ๋์ด ์์
๐ง ์ฃผ์ ๊ธฐ๋ฅ ๋ฐ ์ค์ ์ค๋ช
๐ฆ Emission Material (๋ฐ๊ด ์ฌ์ง)
Surface: Emission
Color: #FFA500 (์: ๋ฐ๋ปํ ์ฃผํฉ๋น)
Strength: 40 ~ 80
- ์ค์๊ฐ ๋น์ด ์๋ “๋น์ ๋ด๋ ๋ฏํ ํ ์ค์ฒ ํจ๊ณผ”๋ง ์ ๊ณต
- ํฌํธ ์ค์, ๊ธฐ๋ฅ ๋จํ ๋ฑ์์ ์ฌ์ฉ
๐ก Area Light
- Area Light๋ ๋ถ๋๋ฌ์ด ๊ทธ๋ฆผ์์ ํ์ฐ๊ด์ ์์ฑ
- ํฌ๊ธฐ๊ฐ ํด์๋ก ๋ถ๋๋ฌ์ ์ฆ๊ฐ
- ์กฐ๋ช
๊ฐ ์กฐ์ :
- Power: 240 ์ด์
- Color: ํ๋น ๋๋ → ์ฃผํฉ / ๋ฌ๋น ๋๋ → ํ๋
๐ชต ์ปฌ๋ ์ ์ ๋ฆฌ
- Blender์ Collection์ Three.js์ Group๊ณผ ์ ์ฌ
- ๊ฐ๊ฐ์ ์์ (์: rocks, portal, poleLights ๋ฑ)๋ฅผ ์ปฌ๋ ์ ๋จ์๋ก ์ ๋ฆฌ
- Outliner > Filter์์ ํ์/์ ํ ์ค์ ์กฐ์ ๊ฐ๋ฅ
๐๏ธ ๊ตฌ์ฑ ์์๋ณ ๊ธฐ๋ฅ ์์ฝ
| ๋ฐ๋ฅ | Plane ์์ฑ, grass ์ฌ์ง ์ ์ฉ |
| ์ธํ๋ฆฌ | ๋ฐ์ค 4๊ฐ (๊ธฐ๋ฅ 2, ๋ ์ผ 2), ๋ณต์ ๋ฐ ์ปฌ๋ ์ ๋ถ๋ฅ |
| ๋๋ฌด์ค๊ธฐ | ์ํต 10๊ฐํ, ์ฌ๋ฌ ํฌ๊ธฐ/ํ์ ์ผ๋ก ๋ฐฐ์น |
| ์ชผ๊ฐ์ง ํต๋๋ฌด | Cylinder → Cap Fill: Triangle Fan → Edit Mode๋ก ๋ถํ |
| ๋๋ผ | ๋จธ๋ฆฌ + ์์ก์ด ๋ฐ์ค ์กฐํฉ, Edit Mode๋ก ๋ํ ์ผ ์กฐ์ |
| ๋ฐ์ | ํ๋ธ → Bisect๋ก ์ ๋จ, ๋ฌด์์ ํ์ /ํฌ๊ธฐ ์กฐ์ |
| ํฌํธ ๋ฒฝ๋ | ALT+D๋ก ์ํ ๋ณต์ ํ Edit Mode๋ก ๋ชจ์ ์กฐ์ |
| ํฌํธ ์ํ | Circle + Fill, Emission ์ ์ฉ |
| ์กฐ๋ช | ๋ฐ๊ด ๋ฉด ๋ถ๋ฆฌ, poleLightEmission, portalEmission ์ฌ์ฉ |
| ์ต์ข ๋ ๋๋ง | F12๋ก ๋ ๋, Alt+S๋ก ์ด๋ฏธ์ง ์ ์ฅ ๊ฐ๋ฅ |
๐ฆ ์ต์ ํ ํ
- ํ ์ค์ฒ ์ฉ๋์ ์ค์ด๋ ค๋ฉด ํด์๋์ ์ํ๋ง ๊ฐ์ ์กฐ์
- ๋์ผํ ๋ฉ์๋ Linked Duplicate(ALT + D)๋ก ๋ณต์ ํ๋ฉด ๋ฉ๋ชจ๋ฆฌ ์ ์ฝ
- ๋๋ฌด ๋ง์ ํ ์ค์ฒ ๋์ , ๋์ผ ํ ์ค์ฒ ์ฌํ์ฉ
- ์ฌ์ง ์์์ Three.js์์๋ ๋ณ๊ฒฝ ๊ฐ๋ฅํ๋ฏ๋ก ์ต์ํ
๐ฌ ๊ฒฐ๋ก
๋ฒ ์ดํน์ ๊ณ ์ ๋ ์กฐ๋ช ํจ๊ณผ๋ฅผ ์ ์ ์ผ๋ก ๊ตฌํํ๋ฉด์๋ GPU ์ฑ๋ฅ์ ์ ์ฝํ๊ณ , ์ฑ๋ฅ ์ต์ ํ๋ 3D ์น ๊ฒฝํ์ ์ ๊ณตํ๋ ๋ฐ ๋งค์ฐ ์ ์ฉํฉ๋๋ค.
A๋จ, ์ค์๊ฐ ์กฐ๋ช ๋ณํ๊ฐ ํ์ํ ํ๋ก์ ํธ์๋ ์ ํฉํ์ง ์์ผ๋ฉฐ, ์ ์ ์ฌ์ ์๋ง์ ์ ๋ต์ ๋๋ค.
'Graphic > Blender' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| Image Texture (0) | 2025.11.14 |
|---|---|
| Modifier (0) | 2025.11.14 |
| 23 Blender ํ๋ฒ๊ฑฐ ๋ชจ๋ธ๋ง (Blender ์ฌ์ฉ๋ฒ ์ ๋ฆฌ) (4) | 2025.07.30 |
| Blender ๊ด๋ จ ์ฌ์ดํธ (0) | 2025.05.27 |
| Blender ๋จ์ถํค (0) | 2025.05.26 |