Wayland ํ๋กํ ์ฝ์ ๊ธฐ๋ฐ์ผ๋ก ๋ณตํฉ ์๋ฒ๋ฅผ ๊ฐ๋ฐํ๊ธฐ ์ํ ๊ตฌ์ฑ ์์๋ฅผ ์ ๊ณตํ๋ Louvre 1.2.0 ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ๊ทธ๋ํฝ ๋ฒํผ ๊ด๋ฆฌ, Linux์ ์ ๋ ฅ ํ์ ์์คํ ๋ฐ ๊ทธ๋ํฝ API์์ ์ํธ ์์ฉ์ ํฌํจํ ๋ชจ๋ ํ์ ์์ค ์์ ์ ์ฒ๋ฆฌํ๋ฉฐ Wayland ํ๋กํ ์ฝ์ ๋ค์ํ ํ์ฅ์ ๋ํ ๊ธฐ์ฑ ๊ตฌํ๋ ์ ๊ณตํฉ๋๋ค. Louvre ๊ธฐ๋ฐ ๋ณตํฉ์๋ฒ๋ Weston, Sway์ ๋นํด ๋ฆฌ์์ค ์๋ชจ๊ฐ ํจ์ฌ ์ ๊ณ ์ฑ๋ฅ๋ ๋ฐ์ด๋ฉ๋๋ค. ์ฝ๋๋ C++๋ก ์์ฑ๋์์ผ๋ฉฐ GPLv3 ๋ผ์ด์ผ์ค์ ๋ฐ๋ผ ๋ฐฐํฌ๋ฉ๋๋ค. ๋ฃจ๋ธ๋ฅด์ ์ญ๋์ ๋ํ ๊ฐ์๋ ํ๋ก์ ํธ์ ์ฒซ ๋ฒ์งธ ๋ฆด๋ฆฌ์ค ๋ฐํ์์ ์ฝ์ ์ ์์ต๋๋ค.
์ ๋ฒ์ ์์:
- ์ค์ผ์ผ์ ๋๋ฆด ๋ ์คํฐ์จ๋ฆฌ์ด์ฑ ์ํฐํฉํธ๋ฅผ ์ค์ด๊ธฐ ์ํด ์ ์๊ฐ ์๋ ์ค์ผ์ผ ๊ฐ(์์ ์ค์ผ์ผ) ๋ฐ ์ค๋ฒ์ํ๋ง(์ค๋ฒ์ํ๋ง) ์ค์ ์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค. ๋ถ์ ์ค์ผ์ผ๋ง์ ๊ฒฝ์ฐ Wayland ํ๋กํ ์ฝ ๋ถ์ ์ค์ผ์ผ์ด ์ฌ์ฉ๋ฉ๋๋ค.
- ํ ์ด๋ง ์ ์ด ํ๋กํ ์ฝ์ ์ฌ์ฉํ๋ฉด ์ ์ฒด ํ๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์์ ํ ์ด๋ง์ ๋ฐฉ์งํ๋ ๋ฐ ์ฌ์ฉ๋๋ ์์ง ๋ํ ํ์ค๋ก ์์ง ๋๊ธฐํ(VSync)๋ฅผ ๋นํ์ฑํํ ์ ์์ต๋๋ค. ๋ฉํฐ๋ฏธ๋์ด ์์ฉ ํ๋ก๊ทธ๋จ์์๋ ์ฐข์ด์ง์ผ๋ก ์ธํ ์ํฐํฉํธ๊ฐ ๋ฐ๋์งํ์ง ์์ง๋ง ๊ฒ์ ํ๋ก๊ทธ๋จ์์๋ ์ํฐํฉํธ ์ฒ๋ฆฌ๋ก ์ธํด ์ถ๊ฐ ์ง์ฐ์ด ๋ฐ์ํ๋ ๊ฒฝ์ฐ ํ์ฉ๋ ์ ์์ต๋๋ค.
- Wayland ํ๋กํ ์ฝ wlr-gamma-control์ ์ฌ์ฉํ์ฌ ๊ฐ๋ง ๋ณด์ ์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ ์ธก์์ ํฌ๊ธฐ ์กฐ์ ๋ฐ ํ๋ฉด ๊ฐ์ฅ์๋ฆฌ ํธ๋ฆฌ๋ฐ ์์ ์ ์ํํ ์ ์๋๋ก ํ๋ Wayland "viewporter" ํ๋กํ ์ฝ์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- ๋์ ์ ๋ฐ๋๋ก ํ ์ค์ฒ ์์ญ์ ๊ทธ๋ฆฌ๊ณ ๋ณํ์ ์ ์ฉํ๊ธฐ ์ํ ๋ฉ์๋๊ฐ LPainter ํด๋์ค์ ์ถ๊ฐ๋์์ต๋๋ค.
- LTextureView ํด๋์ค๋ ์์ค ์ง์ฌ๊ฐํ("์์ค ์ง์ฌ๊ฐํ", ํ์์ฉ ์ง์ฌ๊ฐํ ์์ญ) ๋ฐ ๋ณํ์ ์ง์ํฉ๋๋ค.
- ํ๋๊ทธ์ ์ํ๋ฅผ ์ ์ฅํ ๋ ๋ฉ๋ชจ๋ฆฌ ์๋น๋ฅผ ์ค์ด๊ธฐ ์ํด LBitset ํด๋์ค๋ฅผ ์ถ๊ฐํ์ต๋๋ค.
์ถ์ฒ : opennet.ru