--- category: Unified tags: [auto-consolidated, technical-documentation] title: [[Fragment-bound|Fragment-bound]] last_updated: 2026-05-02 --- # [[Fragment-bound|Fragment-bound]] ## ๐Ÿ“Œ Brief Summary > 'Fragment-bound(ํ”„๋ž˜๊ทธ๋จผํŠธ ๋ฐ”์šด๋“œ)'๋Š” 3D ๊ทธ๋ž˜ํ”ฝ์Šค ๋ Œ๋”๋ง ํŒŒ์ดํ”„๋ผ์ธ์—์„œ GPU์˜ ํ”„๋ž˜๊ทธ๋จผํŠธ ์…ฐ์ด๋”ฉ(ํ”ฝ์…€ ์ฒ˜๋ฆฌ) ์šฉ๋Ÿ‰์ด ํ•œ๊ณ„์— ๋„๋‹ฌํ•˜์—ฌ ์ „์ฒด ์‹œ์Šคํ…œ์˜ ์„ฑ๋Šฅ ๋ณ‘๋ชฉ์ด ๋˜๋Š” ์ƒํƒœ๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค [1, 2]. ์ด ์ƒํƒœ๋Š” ์ฃผ๋กœ ๊ฐ์ฒด๋“ค์ด ์นด๋ฉ”๋ผ ๊ธฐ์ค€ ๊นŠ์ด(Depth)์— ๋”ฐ๋ผ ์ •๋ ฌ๋˜์ง€ ์•Š์€ ์ฑ„ ๋ Œ๋”๋ง๋  ๋•Œ, ๋™์ผํ•œ ํ”ฝ์…€์— ์—ฌ๋Ÿฌ ๋ฒˆ ๊ทธ๋ฆฌ๊ธฐ ์—ฐ์‚ฐ์ด ์ˆ˜ํ–‰๋˜๋Š” '์˜ค๋ฒ„๋“œ๋กœ์šฐ([[Overdraw|Overdraw]])' ํ˜„์ƒ์œผ๋กœ ์ธํ•ด ์ด‰๋ฐœ๋ฉ๋‹ˆ๋‹ค [1, 2]. ํŠนํžˆ ์—ฐ์‚ฐ ๋น„์šฉ์ด ๋†’์€ ์žฌ์งˆ์„ ์‚ฌ์šฉํ•  ๋•Œ ์ด ๋ณ‘๋ชฉ ํ˜„์ƒ์€ ๋”์šฑ ๊ทน์‹ฌํ•ด์ง‘๋‹ˆ๋‹ค [2, 3]. --- > ํ”„๋ž˜๊ทธ๋จผํŠธ ๋ฐ”์šด๋“œ(Fragment-bound)๋Š” 3D ๋ Œ๋”๋ง ํŒŒ์ดํ”„๋ผ์ธ์—์„œ GPU์˜ ํ”„๋ž˜๊ทธ๋จผํŠธ(ํ”ฝ์…€) ์—ฐ์‚ฐ ๋ถ€ํ•˜๊ฐ€ ๊ทน์‹ฌํ•ด์ ธ ์ „์ฒด ๋ Œ๋”๋ง ์„ฑ๋Šฅ๊ณผ ํ”„๋ ˆ์ž„ ๋ ˆ์ดํŠธ(FPS)๋ฅผ ์ œํ•œํ•˜๋Š” ๋ณ‘๋ชฉ ์ƒํƒœ๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ฃผ๋กœ ํ™”๋ฉด์— ๊ทธ๋ ค์ง€๋Š” ๊ฐ์ฒด๋“ค์ด ๋ Œ๋”๋ง ์ˆœ์„œ๋Œ€๋กœ ์ •๋ ฌ๋˜์ง€ ์•Š์•„ ๋™์ผํ•œ ํ”ฝ์…€ ์œ„์น˜์— ๋ Œ๋”๋ง ๊ณ„์‚ฐ์ด ์—ฌ๋Ÿฌ ๋ฒˆ ์ค‘์ฒฉ๋˜๋Š” ์˜ค๋ฒ„๋“œ๋กœ์šฐ([[Overdraw|Overdraw]]) ํ˜„์ƒ์œผ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋ฌด๊ฑฐ์šด ์กฐ๋ช… ์—ฐ์‚ฐ์ด ํฌํ•จ๋œ ์žฌ์งˆ์„ ์‚ฌ์šฉํ•  ๋•Œ ์ด ์ƒํƒœ์— ๋”์šฑ ์‰ฝ๊ฒŒ ๋น ์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค [1, 2]. ## ๐Ÿ“– Core Content - **์˜ค๋ฒ„๋“œ๋กœ์šฐ(Overdraw)์— ์˜ํ•œ ์—ฐ์‚ฐ ๊ณผ๋ถ€ํ•˜:** ํ”„๋ž˜๊ทธ๋จผํŠธ ๋ฐ”์šด๋“œ ์ƒํƒœ๋Š” ํ™”๋ฉด์˜ ๋™์ผํ•œ ํ”ฝ์…€ ์˜์—ญ์— ๋Œ€ํ•ด ์…ฐ์ด๋” ์—ฐ์‚ฐ๊ณผ ์“ฐ๊ธฐ ์ž‘์—…์ด ์—ฌ๋Ÿฌ ๋ฒˆ ์ค‘์ฒฉ๋˜์–ด ๋ฐœ์ƒํ•˜๋Š” ์˜ค๋ฒ„๋“œ๋กœ์šฐ์— ์˜ํ•ด ์•ผ๊ธฐ๋ฉ๋‹ˆ๋‹ค [1, 2]. GPU๊ฐ€ ์ตœ์ข… ํ™”๋ฉด์— ๋ณด์ด์ง€ ์•Š๊ณ  ๊ฐ€๋ ค์งˆ ํ”ฝ์…€๊นŒ์ง€ ๋ชจ๋‘ ๊ณ„์‚ฐํ•˜๊ฒŒ ๋˜๋ฉด์„œ ํ”ฝ์…€ ์ฒ˜๋ฆฌ ์„ฑ๋Šฅ์„ ์ƒํšŒํ•˜๋Š” ๋ถ€ํ•˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค [2]. - **[[InstancedMesh|InstancedMesh]]์˜ ์ •๋ ฌ ๋ถ€์žฌ์™€ ๋ณ‘๋ชฉ:** Three.js์˜ `InstancedMesh`๋Š” ๋‹จ์ผ ๋“œ๋กœ์šฐ ์ฝœ๋กœ ๋ Œ๋”๋ง์„ ์ˆ˜ํ–‰ํ•˜์ง€๋งŒ ๊ฐœ๋ณ„ ์ธ์Šคํ„ด์Šค๋“ค์˜ ๋ Œ๋”๋ง ์ˆœ์„œ๋ฅผ ์ž๋™์œผ๋กœ ์ •๋ ฌ([[Sorting|Sorting]])ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค [1, 2]. ๋งŒ์•ฝ ์นด๋ฉ”๋ผ์™€ ๊ฐ€์žฅ ๋ฉ€๋ฆฌ ์žˆ๋Š” ์ธ์Šคํ„ด์Šค๊ฐ€ ๋จผ์ € ๊ทธ๋ ค์ง€๊ณ  ๊ฐ€๊นŒ์šด ์ธ์Šคํ„ด์Šค๊ฐ€ ๋‚˜์ค‘์— ๊ทธ๋ ค์ง„๋‹ค๋ฉด ๋ง‰๋Œ€ํ•œ ์˜ค๋ฒ„๋“œ๋กœ์šฐ ๋น„์šฉ์ด ๋ฐœ์ƒํ•˜๊ฒŒ ๋˜๋ฉฐ, ์ด๋กœ ์ธํ•ด ์”ฌ(Scene)์ด ํ”„๋ž˜๊ทธ๋จผํŠธ ๋ฐ”์šด๋“œ ์ƒํƒœ์— ๋น ์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค [2]. - **์žฌ์งˆ(Material) ๋ณต์žก๋„์˜ ์˜ํ–ฅ๊ณผ ํ•ด๊ฒฐ์ฑ…:** ๋ณต์žกํ•œ ์กฐ๋ช… ๋ฐ ๊ทธ๋ฆผ์ž ์—ฐ์‚ฐ์ด ํฌํ•จ๋œ `MeshStandardMaterial`๊ณผ ๊ฐ™์€ ์…ฐ์ด๋”๋ฅผ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ ํ”„๋ž˜๊ทธ๋จผํŠธ ๋ฐ”์šด๋“œ ํ˜„์ƒ์€ ํ›จ์”ฌ ๋” ์‹ฌํ™”๋ฉ๋‹ˆ๋‹ค [2, 3]. ์ด ๋ฌธ์ œ๋ฅผ ์™„ํ™”ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์˜ค๋ฒ„๋“œ๋กœ์šฐ์˜ ๋น„์šฉ ์ž์ฒด๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ๋Š” ๋‹จ์ˆœํ•œ `MeshBasicMaterial`์„ ์‚ฌ์šฉํ•˜์—ฌ ๋น„๊ตํ•˜๊ฑฐ๋‚˜ [3], ์ž๋™์œผ๋กœ ์ธ์Šคํ„ด์Šค ์ •๋ ฌ์„ ์ง€์›ํ•˜๋Š” `BatchedMesh`๋กœ ์ „ํ™˜ํ•˜์—ฌ ๋ Œ๋”๋ง ํšจ์œจ์„ ๋†’์ด๋Š” ๊ฒƒ์ด ๋Œ€์•ˆ์œผ๋กœ ์ œ์‹œ๋ฉ๋‹ˆ๋‹ค [1]. --- - **๋ฐœ์ƒ ์›์ธ๊ณผ ์˜ค๋ฒ„๋“œ๋กœ์šฐ(Overdraw):** ํ”„๋ž˜๊ทธ๋จผํŠธ ๋ฐ”์šด๋“œ ์ƒํƒœ๋Š” ๋ Œ๋”๋ง ํŒŒ์ดํ”„๋ผ์ธ์˜ ํ›„๋ฐ˜๋ถ€์ธ ํ”„๋ž˜๊ทธ๋จผํŠธ ์…ฐ์ด๋”ฉ([[Fragment Shading|Fragment Shading]]) ๋‹จ๊ณ„์˜ ๊ณผ๋ถ€ํ•˜๋กœ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ฃผ๋œ ์›์ธ์€ ์˜ค๋ฒ„๋“œ๋กœ์šฐ๋กœ, ๋ถˆํˆฌ๋ช…ํ•œ ๋ฌผ์ฒด๋ฅผ '์•ž์—์„œ ๋’ค๋กœ(Front-to-Back)' ์ •๋ ฌํ•˜์ง€ ์•Š๊ณ  ๋ Œ๋”๋งํ•˜์—ฌ ๋’ค์— ๊ฐ€๋ ค์งˆ ํ”ฝ์…€์— ๋Œ€ํ•ด์„œ๋„ GPU๊ฐ€ ๋ถˆํ•„์š”ํ•œ ๊ณ„์‚ฐ์„ ์ค‘๋ณตํ•ด์„œ ์ˆ˜ํ–‰ํ•  ๋•Œ ์ผ์–ด๋‚ฉ๋‹ˆ๋‹ค [2]. - **[[InstancedMesh|InstancedMesh]]์˜ ๊ตฌ์กฐ์  ํ•œ๊ณ„:** `InstancedMesh` ๊ธฐ์ˆ ์€ ๋“œ๋กœ์šฐ ์ฝœ([[Draw Call|Draw Call]])์„ ์ค„์—ฌ CPU ์˜ค๋ฒ„ํ—ค๋“œ๋ฅผ ๋‚ฎ์ถ”๋Š” ๋ฐ ํšจ๊ณผ์ ์ด์ง€๋งŒ, ์ธ์Šคํ„ด์Šค๋“ค์— ๋Œ€ํ•œ ์ž๋™ ์ •๋ ฌ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค [1, 2]. ๋”ฐ๋ผ์„œ ์นด๋ฉ”๋ผ์—์„œ ๋ฉ€๋ฆฌ ์žˆ๋Š” ์ธ์Šคํ„ด์Šค๊ฐ€ ๋จผ์ € ๊ทธ๋ ค์ง€๊ณ  ๊ฐ€๊นŒ์šด ์ธ์Šคํ„ด์Šค๊ฐ€ ๋‚˜์ค‘์— ๊ทธ๋ ค์ง€๋Š” ๋ฐฐ์น˜๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด, ์˜ค๋ฒ„๋“œ๋กœ์šฐ ๋น„์šฉ์ด GPU์˜ ํ”ฝ์…€ ์ฒ˜๋ฆฌ ์„ฑ๋Šฅ์„ ์ƒํšŒํ•˜๊ฒŒ ๋˜์–ด ํ”„๋ž˜๊ทธ๋จผํŠธ ๋ฐ”์šด๋“œ ์ƒํƒœ๋ฅผ ์œ ๋ฐœํ•ฉ๋‹ˆ๋‹ค [2]. - **์žฌ์งˆ(Material) ๋ณต์žก๋„์˜ ์˜ํ–ฅ:** ์˜ค๋ฒ„๋“œ๋กœ์šฐ๋กœ ์ธํ•œ ํ”„๋ž˜๊ทธ๋จผํŠธ ๋ฐ”์šด๋“œ ํ˜„์ƒ์€ ๋ณต์žกํ•œ ์กฐ๋ช… ์—ฐ์‚ฐ์ด ํฌํ•จ๋œ `MeshStandardMaterial`๊ณผ ๊ฐ™์€ ๋ฌด๊ฑฐ์šด ์žฌ์งˆ์„ ์‚ฌ์šฉํ•  ๋•Œ ๊ทธ ์‹ฌ๊ฐ์„ฑ์ด ๊ทน๋Œ€ํ™”๋ฉ๋‹ˆ๋‹ค [1, 2]. - **์„ฑ๋Šฅ ๊ฐœ์„  ๋Œ€์•ˆ:** ํ”„๋ž˜๊ทธ๋จผํŠธ ๋ฐ”์šด๋“œ ๋ณ‘๋ชฉ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๋Œ€์•ˆ ์ค‘ ํ•˜๋‚˜๋กœ `BatchedMesh`๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. `InstancedMesh`์™€ ๋‹ฌ๋ฆฌ `BatchedMesh`๋Š” ์ธ์Šคํ„ด์Šค๋“ค์˜ ์ •๋ ฌ(sorted)์„ ์ง€์›ํ•˜๋ฏ€๋กœ ์˜ค๋ฒ„๋“œ๋กœ์šฐ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [1]. ## โš–๏ธ Trade-offs & Caveats - **๊ณผ๊ฑฐ ๋ฐ์ดํ„ฐ์™€์˜ ์ถฉ๋Œ:** ์ž๋™ํ™” ์—”์ง„์— ์˜ํ•ด ๋งคํ•‘๋œ ์ง€์‹์œผ๋กœ, ์ถ”ํ›„ ์ •๋ฐ€ ๊ฒ€์ฆ ํ•„์š”. - **์ •์ฑ… ๋ณ€ํ™”:** Graphics & Performance ๋ถ„์•ผ์˜ ์ž๋™ ์ž์‚ฐํ™” ์ˆ˜ํ–‰. --- - **๊ณผ๊ฑฐ ๋ฐ์ดํ„ฐ์™€์˜ ์ถฉ๋Œ:** ์ž๋™ํ™” ์—”์ง„์— ์˜ํ•ด ๋งคํ•‘๋œ ์ง€์‹์œผ๋กœ, ์ถ”ํ›„ ์ •๋ฐ€ ๊ฒ€์ฆ ํ•„์š”. - **์ •์ฑ… ๋ณ€ํ™”:** Graphics & Performance ๋ถ„์•ผ์˜ ์ž๋™ ์ž์‚ฐํ™” ์ˆ˜ํ–‰. ## ๐Ÿ”— Knowledge Connections - **Related Topics:** [[Overdraw|Overdraw]], [[InstancedMesh|InstancedMesh]], MeshStandardMaterial, BatchedMesh - **Projects/Contexts:** Three.js ๋ Œ๋”๋ง ์„ฑ๋Šฅ ์ตœ์ ํ™” - **Contradictions/Notes:** ๋“œ๋กœ์šฐ ์ฝœ์„ ์ค„์—ฌ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๊ธฐ ์œ„ํ•ด ๊ณ ์•ˆ๋œ `InstancedMesh`๊ฐ€, ์ •๋ ฌ ๊ธฐ๋Šฅ์˜ ๋ถ€์žฌ๋กœ ์ธํ•ด ์˜คํžˆ๋ ค ์‹ฌ๊ฐํ•œ ์˜ค๋ฒ„๋“œ๋กœ์šฐ์™€ ํ”„๋ž˜๊ทธ๋จผํŠธ ๋ฐ”์šด๋“œ๋ฅผ ์œ ๋ฐœํ•˜์—ฌ ์ผ๋ฐ˜ `Mesh`๋ฅผ ์—ฌ๋Ÿฌ ๋ฒˆ ๊ทธ๋ฆด ๋•Œ๋ณด๋‹ค ํ”„๋ ˆ์ž„ ๋ ˆ์ดํŠธ(FPS)๋ฅผ ๋” ํ•˜๋ฝ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ด ์ฃผ์˜์‚ฌํ•ญ์œผ๋กœ ๋ณด๊ณ ๋ฉ๋‹ˆ๋‹ค [2, 4]. --- *Last updated: 2026-04-19* --- --- - **Related Topics:** [[แ„‹แ…ฉแ„‡แ…ฅแ„ƒแ…ณแ„…แ…ฉแ„‹แ…ฎ(Overdraw)|์˜ค๋ฒ„๋“œ๋กœ์šฐ(Overdraw]], InstancedMesh, BatchedMesh, [[แ„‘แ…ณแ„…แ…ขแ„€แ…ณแ„†แ…ฅแ†ซแ„แ…ณ แ„‰แ…จแ„‹แ…ตแ„ƒแ…ตแ†ผ(Fragment Shading)|ํ”„๋ž˜๊ทธ๋จผํŠธ ์…ฐ์ด๋”ฉ(Fragment Shading]] - **Projects/Contexts:** Three.js ๋ Œ๋”๋ง ์„ฑ๋Šฅ ์ตœ์ ํ™”, [[MeshStandardMaterial แ„Œแ…ฉแ„†แ…งแ†ผ แ„‹แ…งแ†ซแ„‰แ…กแ†ซ|MeshStandardMaterial ์กฐ๋ช… ์—ฐ์‚ฐ]] - **Contradictions/Notes:** ์†Œ์Šค์— ๋”ฐ๋ฅด๋ฉด `InstancedMesh`๋Š” CPU์˜ ๋“œ๋กœ์šฐ ์ฝœ ๋ณ‘๋ชฉ์„ ํ•ด์†Œํ•˜๊ธฐ ์œ„ํ•ด ๋„์ž…๋˜์ง€๋งŒ, ๋‚ด๋ถ€ ์ •๋ ฌ([[Sorting|Sorting]])์˜ ๋ถ€์žฌ๋กœ ์ธํ•ด ์˜คํžˆ๋ ค GPU ์ธก์—์„œ ํ”„๋ž˜๊ทธ๋จผํŠธ ๋ฐ”์šด๋“œ๋ผ๋Š” ์ƒˆ๋กœ์šด ํ˜•ํƒœ์˜ ์„ฑ๋Šฅ ๋ณ‘๋ชฉ์„ ์œ ๋ฐœํ•  ์ˆ˜ ์žˆ๋Š” ๊ตฌ์กฐ์  ํŠธ๋ ˆ์ด๋“œ์˜คํ”„๋ฅผ ์ง€๋‹ˆ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค [1, 2]. --- *Last updated: 2026-04-19* ---