Unity | ๐Ÿ‘โ€๐Ÿ—จUI, ๐Ÿ”ฒCanvas & ๐Ÿ”งCanvas Scaler

Cleanยท2025๋…„ 4์›” 22์ผ

Unity

๋ชฉ๋ก ๋ณด๊ธฐ
10/24
post-thumbnail

๐Ÿ‘โ€๐Ÿ—จ UI

UI๋Š” User Interface๋กœ ์‚ฌ์šฉ์ž(์‚ฌ๋žŒ)๊ฐ€ ํ”„๋กœ๊ทธ๋žจ๊ณผ ์ƒํ˜ธ์ž‘์šฉ์„ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค.

ํ”Œ๋ ˆ์ด์–ด์ •๋ณด, ํ”Œ๋ ˆ์ด์–ด ์ฒด๋ ฅ๋ฐ”, ๋ฉ”๋‰ด๋ฒ„ํŠผ๋“ค์„ UI๋ผ๊ณ ํ•  ์ˆ˜ ์žˆ๋‹ค.


๐Ÿ”ฒ Canvas

Canvas๋Š” ์œ ๋‹ˆํ‹ฐ UI ์˜ค๋ธŒ์ ํŠธ๋“ค์ด ๊ทธ๋ ค์ง€๊ณ  ๋ฐฐ์น˜๋˜๋Š” UI ์ „์šฉ ๊ณต๊ฐ„์ด๋‹ค.

์”ฌ(Scene) ๋‚ด์—์„œ ์ด ํ•˜์–€ ๋ฐ•์Šค๊ฐ€ ์บ”๋ฒ„์Šค์˜ ๊ณต๊ฐ„์ด๋ฉฐ,

์ด ๊ณต๊ฐ„ ์•ˆ์— ๋ฐฐ์น˜๋œ UI ์š”์†Œ๋“ค์ด ์‹ค์ œ ํ”Œ๋ ˆ์ด์–ด ํ™”๋ฉด์— ๋ณด์—ฌ์ง€๊ฒŒ ๋œ๋‹ค.


RenderMode

์บ”๋ฒ„์Šค ์ปดํฌ๋„ŒํŠธ์—๋Š” Render Mode ์„ค์ •์ด ์žˆ๋Š”๋ฐ,

์ด 3๊ฐ€์ง€ ๋ฐฉ์‹์œผ๋กœ UI๊ฐ€ ๋ Œ๋”๋ง๋œ๋‹ค.

Screen Space - Overlay

Overlay๋Š” UI๋ฅผ ํ™”๋ฉด ์œ„์— ์ง์ ‘ ๊ทธ๋ฆฌ๋Š” ๋ฐฉ์‹์ด๋‹ค.

UI๋Š” ํ•ญ์ƒ ์ œ์ผ ์œ„์— ๊ทธ๋ ค์ง€๋ฉฐ,

์”ฌ์—์„œ๋Š” ํ”Œ๋ ˆ์ด์–ด์™€ UI๊ฐ€ ๊ฒน์ณ๋ณด์ผ ์ˆ˜ ์žˆ์ง€๋งŒ ์‹ค์ œ๋กœ๋Š” ๋ถ„๋ฆฌ๋œ ๊ณต๊ฐ„์—์„œ ๊ทธ๋ ค์ง„๋‹ค.


Screen Space - Camera

Camera๋Š” UI๋ฅผ ์นด๋ฉ”๋ผ ์•ž์— ๊ทธ๋ฆฌ๋Š” ๋ฐฉ์‹์ด๋‹ค.

Render Camera์— ๋“ฑ๋กํ•œ ์นด๋ฉ”๋ผ ๊ธฐ์ค€์œผ๋กœ ๋น„์ถ”๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ๊ทธ๋ฆฌ๋ฉฐ,

Plane Distance๋กœ UI์™€ ์นด๋ฉ”๋ผ์˜ ๊ฑฐ๋ฆฌ๋ฅผ ์กฐ์ ˆํ•  ์ˆ˜ ์žˆ๋‹ค.

Overlay์™€ ๋‹ค๋ฅด๊ฒŒ ํ”Œ๋ ˆ์ด์–ด ๊ณต๊ฐ„์— ์žˆ๋Š” ์˜ค๋ธŒ์ ํŠธ์™€ ๊ฒน์ณ์งˆ ์ˆ˜ ์žˆ๋‹ค.


World Space

World Space๋Š” ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ์žˆ๋Š” ๊ณต๊ฐ„์— ๊ฒŒ์ž„ ์˜ค๋ธŒ์ ํŠธ์ฒ˜๋Ÿผ ๋ฐฐ์น˜ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.

Rect Transform์˜ ๊ฐ’์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์–ด

Transform์ฒ˜๋Ÿผ ์›ํ•˜๋Š”๋Œ€๋กœ ์›”๋“œ์— ๋ฐฐ์น˜ํ•  ์ˆ˜ ์žˆ๋‹ค.


๐Ÿ”ง Canvas Scaler

UI๋ฅผ ๋งŒ๋“ค ๋•Œ๋Š” ํด๋ผ์ด์–ธํŠธ๋งˆ๋‹ค ํ•ด์ƒ๋„๊ฐ€ ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์—

์ƒํ™ฉ์— ๋”ฐ๋ผ UI ์˜ค๋ธŒ์ ํŠธ์˜ ํฌ๊ธฐ๋ฅผ ๋ฐ”๊ฟ”์ค„ ํ•„์š”๊ฐ€ ์žˆ๋‹ค.

์ด๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด Canvas Scaler ์ปดํฌ๋„ŒํŠธ๋‹ค.

UI Scale Mode์—๋Š” ์ด 3๊ฐ€์ง€๊ฐ€ ์žˆ์ง€๋งŒ 2๊ฐ€์ง€๋งŒ ์•Œ์•„๋ณด์ž.


Constant Pixel Size

Constant Pixel Size๋Š” UI์˜ ํฌ๊ธฐ๋ฅผ ํ™”๋ฉด ํ•ด์ƒ๋„์— ์ƒ๊ด€์—†์ด ํ”ฝ์…€ ๋‹จ์œ„๋กœ ์ง€์ •ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.

์˜ˆ๋กœ๋“ค์–ด,

UI์— 4๋ถ„์˜ 1 ํฌ๊ธฐ๋ฅผ ์ฐจ์ง€ํ•˜๋Š” 960x540 ํฌ๊ธฐ์˜ ๊ฒ€์€์ƒ‰ ์ด๋ฏธ์ง€๊ฐ€ ์žˆ๋‹ค.

1920x1080 ํ•ด์ƒ๋„์—์„œ๋Š” 4๋ถ„์˜ 1์„ ์ฐจ์ง€ํ•˜์ง€๋งŒ ๋‹ค๋ฅธ ํ•ด์ƒ๋„์—์„œ๋Š” ์–ด๋–ป๊ฒŒ ๋ ๊นŒ?


์ •ํ™•ํ•œ ํฌ๊ธฐ(ํ”ฝ์…€)์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ,

ํ•ด์ƒ๋„์— ๋”ฐ๋ผ ํฌ๊ฑฐ๋‚˜ ์ž‘์•„์ ธ์„œ UI ๋น„์œจ์ด ์–ด๊ธ‹?๋‚  ์ˆ˜๋„ ์žˆ๋‹ค.


Scale With Screen Size

Scale With Screen Size๋Š” UI์˜ ํฌ๊ธฐ๋ฅผ ํ•ด์ƒ๋„์— ๋”ฐ๋ผ ๋น„์œจ๋กœ ์ž๋™ ์กฐ์ ˆํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.

๊ธฐ์ค€์ด ๋˜๋Š” ํ•ด์ƒ๋„(Reference Resolution)๋ฅผ ํด๋ผ์ด์–ธํŠธ ํ•ด์ƒ๋„์™€ ๋น„๊ตํ•˜์—ฌ

UI ์˜ค๋ธŒ์ ํŠธ๋“ค์˜ ์Šค์ผ€์ผ์„ ์ž๋™์œผ๋กœ ์กฐ์ ˆํ•œ๋‹ค.


1920x1080 ํ•ด์ƒ๋„์—์„œ 4๋ถ„์˜ 1์„ ์ฐจ์ง€ํ•˜๋˜ ์ด๋ฏธ์ง€๊ฐ€

2560x1440 ํ•ด์ƒ๋„์—์„œ๋„ 4๋ถ„์˜ 1์„ ์ฐจ์ง€ํ•˜๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.


0๊ฐœ์˜ ๋Œ“๊ธ€