ํคํ๋ ์ ์์คํ ๋ฐ ํฌ๋ช ๋น๋์ค ๋ด๋ณด๋ด๊ธฐ๋ฅผ ์ง์ํ๋ ์น ๊ธฐ๋ฐ ์ ๋๋ฉ์ด์ ํธ์ง๊ธฐ
ํฌ๋ฆฌ์์ดํฐ๋ธ ํด ํ์ ๋์์ด๋๋ค์ด ์ฌ๋ฌ ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ์ฌ ๋ถ๋๋ฌ์ด ํคํ๋ ์ ๊ธฐ๋ฐ ์ ๋๋ฉ์ด์ ์ ์ ์ํ๊ณ , ์ด๋ฅผ ์ ์ฒด alpha channel ํฌ๋ช ๋๋ฅผ ๊ฐ์ง ๋น๋์ค๋ก ๋ด๋ณด๋ด์ด ๋ค๋ฅธ ๋น๋์ค ์ฝํ ์ธ ์ ๋งค๋๋ฝ๊ฒ ์ค๋ฒ๋ ์ดํ ์ ์๋ ๋ธ๋ผ์ฐ์ ๊ธฐ๋ฐ ์ ๋๋ฉ์ด์ ํธ์ง๊ธฐ๊ฐ ํ์ํ์ต๋๋ค.
ํ๋ก์ ํธ ์๋ดํ๊ธฐ
๊ณผ์
๋น๋์ค ์ ์์ ์ํ ํฌ๋ช ๋ฐฐ๊ฒฝ์ ์ ๋๋ฉ์ด์ ์์ ์ ๋ง๋๋ ๊ฒ์ ๋ฒ๊ฑฐ๋ก์ ์ต๋๋ค:
- ๋ฐ์คํฌํฑ ์ ์ฉ ํด โ ๊ธฐ์กด ์ ๋๋ฉ์ด์ ํด(After Effects, Motion)์ ๊ณ ๊ฐ์ ๋ผ์ด์ ์ค์ ๋ฐ์คํฌํฑ ์ค์น๊ฐ ํ์ํ์ต๋๋ค
- ์ํ ์ฑ๋ ๋ด๋ณด๋ด๊ธฐ ๋ถ๊ฐ โ ๋๋ถ๋ถ์ ์น ๊ธฐ๋ฐ ์ ๋๋ฉ์ด์ ํด์ ํฌ๋ช ๋๋ฅผ ์ง์ํ์ง ์๋ ๋ถํฌ๋ช ๋น๋์ค๋ฅผ ๋ด๋ณด๋์ต๋๋ค
- ๋ณต์กํ ํคํ๋ ์ โ ๋์์ด๋๋ค์ ๋จ์ํ CSS transition์ด ์๋, easing ์ ์ด๊ฐ ๊ฐ๋ฅํ ์ง๊ด์ ์ธ ํคํ๋ ์ ๊ธฐ๋ฐ ์ ๋๋ฉ์ด์ ์ ํ์๋ก ํ์ต๋๋ค
- ์ค์๊ฐ ๋ฏธ๋ฆฌ๋ณด๊ธฐ โ ํธ์ง์๋ค์ ๋ด๋ณด๋ด๊ธฐ ์ ์ ์ ๋๋ฉ์ด์ ์ด ๋ถ๋๋ฝ๊ฒ ์ฌ์๋๋ ๊ฒ์ ํ์ธํด์ผ ํ์ต๋๋ค
- ๋ค์ํ ๊ฐ์ฒด ์ ํ โ ์ ๋๋ฉ์ด์ ์ ๋ ๋ฆฝ์ ์ธ ์ ๋๋ฉ์ด์ ํ์๋ผ์ธ์ ๊ฐ์ง ๋ํ๊ณผ ํ ์คํธ๋ฅผ ํ์๋ก ํ์ต๋๋ค
- ๋ด๋ณด๋ด๊ธฐ ํ์ง โ ์ถ๋ ฅ๋ฌผ์ ์ ๋ฌธ ํธ์ง ์ํฌํ๋ก์ฐ์์ ์ฌ์ฉํ ์ ์๋ ํ๋ก๋์ ์์ค์ ๋น๋์ค ํ์ผ์ด์ด์ผ ํ์ต๋๋ค
์ฐ๋ฆฌ์ ์๋ฃจ์
์ฐ๋ฆฌ๋ React์ Pixi.js๋ฅผ ์ฌ์ฉํ์ฌ ํ๋์จ์ด ๊ฐ์ ๋ ๋๋ง์ ์ง์ํ๋ ์น ๊ธฐ๋ฐ ์ ๋๋ฉ์ด์ ํธ์ง๊ธฐ๋ฅผ ๊ตฌ์ถํ์ต๋๋ค. ์ด ํธ์ง๊ธฐ๋ 30๊ฐ ์ด์์ easing ๊ธฐ๋ฅ์ ๊ฐ์ถ ํคํ๋ ์ ์์ง๊ณผ, ์ ์ฒด VP9 alpha channel์ ์ง์ํ๋ WebM ๋น๋์ค ๋ด๋ณด๋ด๊ธฐ๋ฅผ ์ํ FFmpeg ๊ธฐ๋ฐ ๋ฐฑ์๋๋ฅผ ์ฌ์ฉํฉ๋๋ค.
์ํคํ ์ฒ
- ํ๋ฐํธ์๋: TypeScript๋ฅผ ์ฌ์ฉํ๋ React, WebGL ๊ฐ์ ์บ๋ฒ์ค ๋ ๋๋ง์ ์ํ Pixi.js
- ์ํ ๊ด๋ฆฌ: ์ค์ ์ง์ค์ ์ฅ๋ฉด ์ํ ๊ด๋ฆฌ๋ฅผ ์ํ Zustand
- ์ ๋๋ฉ์ด์ ์์ง: easing ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๊ฐ์ถ ์ฌ์ฉ์ ์ ์ ํคํ๋ ์ ๋ณด๊ฐ ์์ง
- ๋ฐฑ์๋: ์ค์๊ฐ ํ๋ ์ ์คํธ๋ฆฌ๋ฐ์ ์ํ WebSocket ์ง์ Express.js
- ๋น๋์ค ์ธ์ฝ๋ฉ: alpha channel์ ์ฌ์ฉํ VP9 WebM ์ธ์ฝ๋ฉ์ ์ํ FFmpeg (fluent-ffmpeg ๊ฒฝ์ )
- ๋ชจ๋ ธ๋ ํฌ: ํ๋ฐํธ์๋์ ๋ฐฑ์๋ ๊ฐ์ TypeScript ์ ํ์ ๊ณต์ ํ๋ pnpm workspace
์ ๋๋ฉ์ด์ ์์ง
ํคํ๋ ์ ์์คํ
ํต์ฌ ์ ๋๋ฉ์ด์ ์์ง์ ์ฌ๋ฌ ์์ฑ์ ๊ฑธ์ณ ํคํ๋ ์ ๊ธฐ๋ฐ ์ ๋๋ฉ์ด์ ์ ์ง์ํฉ๋๋ค:
- ์์น โ ์ด๋ ๊ฒฝ๋ก๋ฅผ ์ํ X/Y ์ขํ
- ํ์ โ ๊ฐ๋ ๊ธฐ๋ฐ ํ์ ์ ๋๋ฉ์ด์
- ์์ โ ๋ถ๋๋ฌ์ด ์ ํ์ ์ํ Hex ์์ ๋ณด๊ฐ
- ์ํ โ ํ์ด๋ ํจ๊ณผ๋ฅผ ์ํ ๋ถํฌ๋ช ๋ ์ ๋๋ฉ์ด์
- ํฌ๊ธฐ โ ๋๋น, ๋์ด, ๋ฐ์ง๋ฆ ์ค์ผ์ผ๋ง
๊ฐ ํคํ๋ ์์ ์๊ฐ(๋ฐ๋ฆฌ์ด ๋จ์), ์ ๋๋ฉ์ด์ ์์ฑ์ ํ์ ์งํฉ, ๊ทธ๋ฆฌ๊ณ ์ ํ๋ easing ํจ์๋ฅผ ์ ์ฅํฉ๋๋ค. ์์ง์ ์ด๋ค ์์ ์์๋ ์ฃผ๋ณ ํคํ๋ ์ ์ฌ์ด๋ฅผ ๋ณด๊ฐํ์ฌ ์ ์ ํ easing ์ปค๋ธ๋ฅผ ์ ์ฉํฉ๋๋ค.
์ด์ง(Easing) ๋ผ์ด๋ธ๋ฌ๋ฆฌ (30๊ฐ ์ด์์ ํจ์)
๋ชจ๋ ํ์ค ์ ๋๋ฉ์ด์ ์ปค๋ธ๋ฅผ ํฌํจํ๋ ํฌ๊ด์ ์ธ easing ๋ผ์ด๋ธ๋ฌ๋ฆฌ:
- Linear, Quadratic, Cubic, Quartic, Quintic
- Sinusoidal, Exponential, Circular
- Elastic (์ฉ์์ฒ ๊ฐ์ ์ค๋ฒ์ํธ), Back (์์), Bounce
- ๊ฐ๊ฐ ease-in, ease-out, ease-in-out ๋ณํ์ผ๋ก ์ฌ์ฉ ๊ฐ๋ฅ
๋ณด๊ฐ
์ฃผ์ด์ง ๋ชจ๋ ํ์์คํฌํ์ ๋ํด ์์ง์ ๋ค์์ ์ํํฉ๋๋ค:
- ์ฃผ๋ณ ํคํ๋ ์(์ด์ ๋ฐ ์ดํ)์ ์ฐพ์ต๋๋ค
- ๊ทธ ์ฌ์ด์ ์ ๊ทํ๋ ์งํ๋ฅ (0์์ 1)์ ๊ณ์ฐํฉ๋๋ค
- ์ ํ๋ easing ํจ์๋ฅผ ์งํ๋ฅ ๊ฐ์ ์ ์ฉํฉ๋๋ค
- ์์ฑ ๊ฐ์ ๋ณด๊ฐํฉ๋๋ค (์ซ์๋ linear, hex ๊ฐ์ color lerp)
- ๋ ๋๋ง์ ์ํ ์ ๋๋ฉ์ด์ ์์ฑ์ ์ ์ฒด ์ธํธ๋ฅผ ๋ฐํํฉ๋๋ค
์บ๋ฒ์ค ๋ฐ ๋ ๋๋ง
๊ฐ์ฒด ์ ํ
- ์ง์ฌ๊ฐํ โ ๋๋น, ๋์ด, ์์, ์ํ, ํ์ ์ค์ ๊ฐ๋ฅ
- ์ โ ๋ฐ์ง๋ฆ, ์์, ์ํ, ํ์ ์ค์ ๊ฐ๋ฅ
- ํ ์คํธ โ ๊ธ๊ผด ๋ชจ์, ๊ธ๊ผด ํฌ๊ธฐ, ๋ด์ฉ, ์์, ์ํ ์ค์ ๊ฐ๋ฅ
ํ๋์จ์ด ๊ฐ์ ๋ ๋๋ง
- ๋ถ๋๋ฌ์ด 60fps ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์ฌ์์ ์ํ Pixi.js WebGL ๋ ๋๋ง
- ์ค์ ๊ฐ๋ฅํ ์บ๋ฒ์ค ํด์๋ (๊ธฐ๋ณธ 1920x1080, 30fps)
- ์กฐ์ ๊ฐ๋ฅํ ๋ฐฐ๊ฒฝ ์ํ๋ฅผ ์ฌ์ฉํ ํฌ๋ช ๋ฐฐ๊ฒฝ ์ง์
- ์๊ฐ์ ๊ฐ์กฐ ํ์๊ฐ ์๋ ๋ํํ ๊ฐ์ฒด ์ ํ
- ์ฌ์, ์ผ์ ์ ์ง ๋ฐ ํ์๋ผ์ธ ์คํฌ๋ฌ๋น์ ํตํ ์ค์๊ฐ ์ ๋๋ฉ์ด์ ์ฌ์
ํธ์ง๊ธฐ ์ธํฐํ์ด์ค
ํด๋ฐ
์ฅ๋ฉด์ ์ง์ฌ๊ฐํ, ์, ํ ์คํธ๋ฅผ ์ถ๊ฐํ๋ ๊ฐ์ฒด ์์ฑ ๋ฒํผ์ผ๋ก, ๊ธฐ๋ณธ ์์ฑ์ ์ฆ์ ์ฌ์ฉ์ ์ ์ํ ์ ์์ต๋๋ค.
์์ฑ ํจ๋
์ ํ๋ ๊ฐ์ฒด ์์ฑ์ ์ค์๊ฐ์ผ๋ก ํธ์ง ๊ฐ๋ฅํฉ๋๋ค: ์์น, ํฌ๊ธฐ, ์์, ์ํ, ํ์ ๋ฐ ์ ํ๋ณ ์์ฑ(ํ ์คํธ ๋ด์ฉ, ๊ธ๊ผด ์ค์ ).
ํ์๋ผ์ธ
๋ค์๊ณผ ๊ฐ์ ์๊ฐ์ ํ์๋ผ์ธ:
- ๊ฐ์ฒด๋ณ ์๊ฐ ์์น์ ์๋ ํคํ๋ ์ ๋ง์ปค
- ์คํฌ๋ฌ๋น์ด ๊ฐ๋ฅํ ํ์ฌ ์๊ฐ ์ฌ์ ํค๋
- ํคํ๋ ์๋ณ easing ํจ์ ์ ํ
- ํ์ฌ ์ฌ์ ํค๋ ์์น์์ ํคํ๋ ์ ์ถ๊ฐ/์ ๊ฑฐ ์ปจํธ๋กค
๋น๋์ค ๋ด๋ณด๋ด๊ธฐ ํ์ดํ๋ผ์ธ
ํ๋ ์ ์บก์ฒ
- ์ ๋๋ฉ์ด์ ์ง์ ์๊ฐ๊ณผ FPS๊ฐ ์ด ํ๋ ์ ์๋ฅผ ๊ฒฐ์ ํฉ๋๋ค
- ๊ฐ ํ๋ ์์ ์ ์ฒด ํด์๋๋ก ๊ฐ๋ณ์ ์ผ๋ก ๋ ๋๋ง๋ฉ๋๋ค
- ์บ๋ฒ์ค ๋ด์ฉ์ ํ๋ ์๋น PNG blob์ผ๋ก ์บก์ฒ๋ฉ๋๋ค
- ์ธ์ฝ๋ฉ ๋ฐฑ์๋์ ์ ๋ก๋ํ๊ธฐ ์ํด ํ๋ ์์ด ์์ง๋ฉ๋๋ค
์ธ์ฝ๋ฉ ๋ฐฑ์๋
Express.js ๋ฐฑ์๋๋ ์์ ๊ธฐ๋ฐ ์์คํ ์ ํตํด ๋น๋์ค ์ธ์ฝ๋ฉ์ ์ฒ๋ฆฌํฉ๋๋ค:
- ์์ ์์ฑ โ ํด๋ผ์ด์ธํธ๊ฐ ์๋ก์ด ๋ด๋ณด๋ด๊ธฐ ์์ (UUID ๊ธฐ๋ฐ)์ ์์ฒญํฉ๋๋ค
- ํ๋ ์ ์ ๋ก๋ โ ํ๋ ์์ ๋ฐฐ์น(์ผ๊ด)๋ก ์ ๋ก๋๋๊ฑฐ๋ WebSocket์ ํตํด ์คํธ๋ฆฌ๋ฐ๋ฉ๋๋ค
- FFmpeg ์ธ์ฝ๋ฉ โ ํ๋ ์์ VP9 ์ฝ๋ฑ์ ์ฌ์ฉํ์ฌ WebM ๋น๋์ค๋ก ์กฐ๋ฆฝ๋ฉ๋๋ค
- ์ํ ์ฑ๋ โ ์ ์ฒด ํฌ๋ช ๋ ์ง์์ ์ํด yuva420p ํฝ์ ํ์์ ์ฌ์ฉํฉ๋๋ค
- ์งํ ์ํฉ ์ถ์ โ ์ธ์ฝ๋ฉ ์ค ์ค์๊ฐ ์งํ ์ํฉ ์ ๋ฐ์ดํธ
- ๋ค์ด๋ก๋ โ ํฌ๋ช ๋ ํ์ธ๊ณผ ํจ๊ป ์๋ฃ๋ ๋น๋์ค๋ฅผ ๋ค์ด๋ก๋ํ ์ ์์ต๋๋ค
WebSocket ๋์
์ค์๊ฐ ๋ด๋ณด๋ด๊ธฐ๋ฅผ ์ํด, ํ๋ ์์ HTTP ๋ฐฐ์น ์ ๋ก๋ ๋์ WebSocket์ ํตํด ์ง์ ์คํธ๋ฆฌ๋ฐ๋ ์ ์์ผ๋ฉฐ, ์บก์ฒ, ์ ๋ก๋ ๋ฐ ์ธ์ฝ๋ฉ ๋จ๊ณ ์ ๋ฐ์ ๊ฑธ์ณ ์ค์๊ฐ ์งํ ์ํฉ ์ ๋ฐ์ดํธ๊ฐ ์ ๊ณต๋ฉ๋๋ค.
์ฃผ์ ๊ธฐ๋ฅ
- ํคํ๋ ์ ์ ๋๋ฉ์ด์ โ ์์ฑ๋ณ ํคํ๋ ์์ ์ฌ์ฉํ ํ์๋ผ์ธ ๊ธฐ๋ฐ ์ ๋๋ฉ์ด์
- 30๊ฐ ์ด์์ ์ด์ง(Easing) ํจ์ โ ์ ๋ฌธ์ ์ธ ์ ๋๋ฉ์ด์ ์ปค๋ธ๋ฅผ ์ํ ์๋ฒฝํ easing ๋ผ์ด๋ธ๋ฌ๋ฆฌ
- ํฌ๋ช ๋น๋์ค ๋ด๋ณด๋ด๊ธฐ โ ์ ์ฒด alpha channel์ ์ง์ํ๋ VP9 WebM
- ํ๋์จ์ด ๊ฐ์ ์บ๋ฒ์ค โ ๋ถ๋๋ฌ์ด ์ค์๊ฐ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ์ํ Pixi.js WebGL ๋ ๋๋ง
- ๋ค์ํ ๊ฐ์ฒด ์ ํ โ ๋ ๋ฆฝ์ ์ธ ์ ๋๋ฉ์ด์ ์ ๊ฐ์ง ์ง์ฌ๊ฐํ, ์, ํ ์คํธ
- ์ค์๊ฐ ๋ฏธ๋ฆฌ๋ณด๊ธฐ โ ์ ๋๋ฉ์ด์ ์ ์ฆ์ ์ฌ์, ์ผ์ ์ ์ง ๋ฐ ์คํฌ๋ฌ๋น
- ๋ฐฐ์น ๋ฐ ์คํธ๋ฆฌ๋ฐ ๋ด๋ณด๋ด๊ธฐ โ HTTP ๋ฐฐ์น ์ ๋ก๋ ๋๋ WebSocket ์ค์๊ฐ ํ๋ ์ ์คํธ๋ฆฌ๋ฐ
- ์ค์ ๊ฐ๋ฅํ ์ถ๋ ฅ โ ๋ด๋ณด๋ด๊ธฐ๋ฅผ ์ํ ํด์๋, FPS, bitrate ์ค์
- ํ์ ์ธ์ดํ ๋ชจ๋ ธ๋ ํฌ โ ํ๋ฐํธ์๋์ ๋ฐฑ์๋ ๊ฐ์ ๊ณต์ ๋๋ TypeScript ์ ํ
- ์ฌ์ฉ์ ์ ์ ๋ฐฐ๊ฒฝ โ ์ด๋ฏธ์ง/๋น๋์ค ์ง์๊ณผ ํจ๊ป ์กฐ์ ๊ฐ๋ฅํ ๋ฐฐ๊ฒฝ์ ๋ฐ ์ํ
๊ฒฐ๊ณผ
๊ธฐ์ ์คํ
caseStudyDetail.more ์ฌ๋ก ์ฐ๊ตฌ
๋ ๋ง์ ๊ธฐ์ ๊ตฌํ ์ฌ๋ก๋ฅผ ์ดํด๋ณด์ธ์
OCR ๋ฐ QuickBooks ์ฐ๋์ ํตํ AI ๊ธฐ๋ฐ ์ก์ฅ ์ฒ๋ฆฌ
๋งค์ ์๋ฐฑ ๊ฑด์ ๊ณต๊ธ์ ์ฒด ์ก์ฅ์ ์ฒ๋ฆฌํ๋ ์ค๊ฒฌ ๊ธฐ์ ์ AI/OCR์ ์ฌ์ฉํ์ฌ ์ก์ฅ ๋ฐ์ดํฐ๋ฅผ ์๋์ผ๋ก ์ถ์ถํ๊ณ ์ด๋ฅผ QuickBooks์ ์ง์ ๋๊ธฐํํ์ฌ ์ฅ๋ถ ์ ๋ฆฌ ๋ฐ ์ง๊ธ ์ถ์ ์ ํจ์ผ๋ก์จ ์๋ ๋ฐ์ดํฐ ์ ๋ ฅ์ ์์ ์ผ ํ์ต๋๋ค.
SCTE-35 ๋ง์ปค ํ์ฑ ๋ฐ ๋ค์ค ํ๋ซํผ ํ๋ ์ด์ด ํตํฉ์ ํตํ ํด๋ผ์ด์ธํธ ์ธก ๊ด๊ณ ์ฝ์ (CSAI)
ํ ๋น๋์ค ์คํธ๋ฆฌ๋ฐ ํ๋ซํผ์ ์น, ๋ชจ๋ฐ์ผ ๋ฐ ์ปค๋ฅํฐ๋ TV ์ฑ ์ ๋ฐ์ ๊ฑธ์ณ Client-Side Ad Insertion (CSAI)์ ๊ตฌํํด์ผ ํ์ต๋๋ค. ์ด๋ ์๋ฒ ์ธก ์ฝ์ ์ผ๋ก๋ ์ ๊ณตํ ์ ์๋, ํด๋ฆญ ๊ฐ๋ฅํ ์ค๋ฒ๋ ์ด, ์ปดํจ๋์ธ ๋ฐฐ๋, ๊ฑด๋๋ฐ๊ธฐ ๋ฒํผ ๋ฑ ์์ ํ ๊ด๊ณ ์ํธ์์ฉ ์ง์์ ํตํด ๊ฐ์ธํ๋ ๊ธฐ๊ธฐ ์์ค์ ๊ด๊ณ ๊ฒฝํ์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
์์ฃผ ๋ฌป๋ ์ง๋ฌธ
MicrocosmWorks๋ ํคํ๋ ์ ๊ฐ์ ๊ตฌ์ฑ ๊ฐ๋ฅํ easing curves๋ฅผ ๊ฐ์ง ์บ๋ฒ์ค ๊ธฐ๋ฐ ๋ ๋๋ง ์์ง์ ๊ตฌํํ์ผ๋ฉฐ, position, scale, rotation, opacity properties์ ๋ํด linear, bezier, ease-in-out ๋ฐ ์ฌ์ฉ์ ์ ์ ๊ณก์ ๋ณด๊ฐ์ ์ง์ํฉ๋๋ค. ์ด ํธ์ง๊ธฐ๋ ๋ธ๋ผ์ฐ์ ์์ ์ต๋ 60fps๋ก ํ๋ ์๋ณ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ์ค์๊ฐ์ผ๋ก ๋ ๋๋งํ๋ฉฐ, ๋์์ด๋๊ฐ control points๋ฅผ ๋๋๊ทธํ์ฌ ํคํ๋ ์ ์์น์ easing curves๋ฅผ ์๊ฐ์ ์ผ๋ก ์กฐ์ ํ ์ ์๋ ๋ํํ ํ์๋ผ์ธ์ ํฌํจํฉ๋๋ค.
MicrocosmWorks๋ FFmpeg๋ฅผ ์ฌ์ฉํ์ฌ ์ํ ์ฑ๋ ๋ณด์กด์ผ๋ก ๊ฐ ํ๋ ์์ ํฉ์ฑํ๊ณ , H.264 ์ฝ๋ฑ์ด ๊ธฐ๋ณธ์ ์ผ๋ก ์ํ ์ฑ๋์ ์ง์ํ์ง ์๊ธฐ ๋๋ฌธ์ VP9 alpha๊ฐ ํฌํจ๋ WebM ๋๋ ํฌ๋ช ๋๊ฐ ํฌํจ๋ Apple ProRes 4444๋ก ๋ด๋ณด๋ด๋ ์๋ฒ ์ธก ๋ ๋๋ง ํ์ดํ๋ผ์ธ์ ๊ตฌ์ถํ์ต๋๋ค. ๋ธ๋ผ์ฐ์ ๊ธฐ๋ฐ ํธ์ง๊ธฐ๋ ํฌ๋ช ๋๋ฅผ ๋ํ๋ด๋ ๋ฐ๋ํ ๋ฐฐ๊ฒฝ๊ณผ ํจ๊ป ์ค์๊ฐ ๋ฏธ๋ฆฌ ๋ณด๊ธฐ๋ฅผ ๋ณด์ฌ์ฃผ๋ฉฐ, ์ต์ข ๋ ๋๋ง์ ๋ชจ๋ ํ๋ ์์์ ์ผ๊ด๋ ํ์ง์ ๋ณด์ฅํ๊ธฐ ์ํด ์๋ฒ ์ธก์์ ์ฒ๋ฆฌ๋ฉ๋๋ค.
๋ค, MicrocosmWorks๋ ์ฌ์ฉ์ ์ ์ ๊ธ๊ผด์ด ์ ์ฉ๋ ํ ์คํธ, ๋์คํฐ ๋ฐ ๋ฒกํฐ ์ด๋ฏธ์ง, ๋น๋์ค ํด๋ฆฝ, ์ ฐ์ดํ ๊ธฐ๋ณธ ์์๋ฅผ ํฌํจํ๋ฉฐ ๊ฐ๊ฐ ๋ ๋ฆฝ์ ์ธ ํคํ๋ ์ ์ ๋๋ฉ์ด์ ํธ๋์ ๊ฐ์ถ z-ordered ๋ ์ด์ด๋ฅผ ์ง์ํ๋ ๋ค์ค ๋ ์ด์ด ์ปดํฌ์ง์ ์์ง์ ๊ตฌ์ถํ์ต๋๋ค. ๋ ์ด์ด ํจ๋์ ๊ฐ์์ฑ ํ ๊ธ, ๋ถํฌ๋ช ๋ ์ฌ๋ผ์ด๋, ๋ธ๋ ๋ ๋ชจ๋, ๊ทธ๋ฃนํ๋ฅผ ํฌํจํ์ฌ ์ต์ํ Photoshop๊ณผ ์ ์ฌํ ์ ์ด ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ฏ๋ก Adobe ์ํฌํ๋ก์ฐ์ ์ด๋ฏธ ์ต์ํ ๋์์ด๋๋ค์๊ฒ ์ง๊ด์ ์ ๋๋ค.
MicrocosmWorks๋ ํ๋์จ์ด ๊ฐ์ ์ปดํฌ์งํ ์ ์ํด WebGL์, ๋ ผ๋ธ๋กํน ํคํ๋ ์ ๊ณ์ฐ์ ์ํด Web Workers๋ฅผ ์ฌ์ฉํ๋๋ก ์๋ํฐ๋ฅผ ์ต์ ํํ์ฌ, ์ต์ ํ๋์จ์ด์์ ์ต๋ 20-30๊ฐ์ ๋ ์ด์ด๋ก ๊ตฌ์ฑ๋ ์ปดํฌ์ง์ ์ ๋ํด ๋ถ๋๋ฌ์ด ์ค์๊ฐ ๋ฏธ๋ฆฌ ๋ณด๊ธฐ ์ฑ๋ฅ์ ๋ฌ์ฑํ์ต๋๋ค. ์ต์ข ๋ด๋ณด๋ด๊ธฐ ๋ ๋๋ง์ ๊ฒฝ์ฐ, ๋ฌด๊ฑฐ์ด ์์ ์ ์๋ฒ ์ธก์์ ์ํ๋๋ฉฐ, ์ ์ฉ GPU ๋ฆฌ์์ค๊ฐ ์ฌ์ฉ์์ ์ฅ์น ์ฑ๋ฅ๊ณผ ๊ด๊ณ์์ด ์ผ๊ด๋ ์ถ๋ ฅ ํ์ง์ ๋ณด์ฅํฉ๋๋ค.
MicrocosmWorks๋ ์๊ฐ๋น $20~$40์ ๊ฐ๋ฐ ์์จ๋ก ๋ง์ถคํ ์ ๋๋ฉ์ด์ ํธ์ง๊ธฐ ํ๋ก์ ํธ๋ฅผ ์ ๊ณตํ๋ฉฐ, ํคํ๋ ์ ํ์๋ผ์ธ, ๋ค์ค ๋ ์ด์ด ๊ตฌ์ฑ, ํฌ๋ช ๋น๋์ค ๋ด๋ณด๋ด๊ธฐ ๊ธฐ๋ฅ์ ํฌํจํ๋ ์์ ํ ๊ธฐ๋ฅ์ ๊ฐ์ถ ํธ์ง๊ธฐ๋ ์ผ๋ฐ์ ์ผ๋ก 4-6๊ฐ์์ ๊ฐ๋ฐ ๊ธฐ๊ฐ์ด ํ์ํฉ๋๋ค. ์ด๋ ์ฌ์ฉ์๋ณ ๋ผ์ด์ ์ค ๋น์ฉ์ ์ฒญ๊ตฌํ๋ ์์ ์ฉ SDKs๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ์ถํ๋ ๊ฒ๋ณด๋ค ํจ์ฌ ๋ ๋น์ฉ ํจ์จ์ ์ด๋ฉฐ, ์ฅ๊ธฐ์ ์ธ ์ ํ ๊ฐ๋ฐ์ ์ํด ์ฝ๋๋ฒ ์ด์ค์ ์์ ํ ์์ ๊ถ์ ์ ๊ณตํฉ๋๋ค.
๋น์ฆ๋์ค ํ์ ์ ์์ํ ์ค๋น๊ฐ ๋์ จ๋์?
๊ทํ์ ๊ณผ์ ์ ์ ์ฌํ ์๋ฃจ์ ์ ์ ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํด ๋ ผ์ํด ๋ณด๊ฒ ์ต๋๋ค.