<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ko">
	<id>http://junhoahn.kr/noriwiki/index.php?action=history&amp;feed=atom&amp;title=Culling</id>
	<title>Culling - 편집 역사</title>
	<link rel="self" type="application/atom+xml" href="http://junhoahn.kr/noriwiki/index.php?action=history&amp;feed=atom&amp;title=Culling"/>
	<link rel="alternate" type="text/html" href="http://junhoahn.kr/noriwiki/index.php?title=Culling&amp;action=history"/>
	<updated>2026-06-14T01:25:02Z</updated>
	<subtitle>이 문서의 편집 역사</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>http://junhoahn.kr/noriwiki/index.php?title=Culling&amp;diff=1099&amp;oldid=prev</id>
		<title>Ahn9807: 새 문서: 분류:레스터 그래픽스  == 개요 == 컴퓨터 그래픽스에서 안보이는 물체를 랜더링하지 않아서 자원을 절약하는 기법을 통칭한다. 컬링에는 View volume culling, Occlusion culling, Back-face culling 3가지 종류가 있다. 각각 카메라 밖의 물체, 오브젝트 뒤에 가려져서 안보이는 물체, 한 오브젝트 내에서 뒷면을 랜더링 하지 않아서 자원을 절약하는 방식으로 구현된다.  == V...</title>
		<link rel="alternate" type="text/html" href="http://junhoahn.kr/noriwiki/index.php?title=Culling&amp;diff=1099&amp;oldid=prev"/>
		<updated>2023-04-05T10:41:43Z</updated>

		<summary type="html">&lt;p&gt;새 문서: &lt;a href=&quot;/noriwiki/index.php?title=%EB%B6%84%EB%A5%98:%EB%A0%88%EC%8A%A4%ED%84%B0_%EA%B7%B8%EB%9E%98%ED%94%BD%EC%8A%A4&quot; title=&quot;분류:레스터 그래픽스&quot;&gt;분류:레스터 그래픽스&lt;/a&gt;  == 개요 == &lt;a href=&quot;/noriwiki/index.php?title=%EC%BB%B4%ED%93%A8%ED%84%B0_%EA%B7%B8%EB%9E%98%ED%94%BD%EC%8A%A4&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;컴퓨터 그래픽스 (없는 문서)&quot;&gt;컴퓨터 그래픽스&lt;/a&gt;에서 안보이는 물체를 &lt;a href=&quot;/noriwiki/index.php?title=%EB%9E%9C%EB%8D%94%EB%A7%81&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;랜더링 (없는 문서)&quot;&gt;랜더링&lt;/a&gt;하지 않아서 자원을 절약하는 기법을 통칭한다. 컬링에는 View volume culling, Occlusion culling, Back-face culling 3가지 종류가 있다. 각각 카메라 밖의 물체, 오브젝트 뒤에 가려져서 안보이는 물체, 한 오브젝트 내에서 뒷면을 랜더링 하지 않아서 자원을 절약하는 방식으로 구현된다.  == V...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;새 문서&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[분류:레스터 그래픽스]]&lt;br /&gt;
&lt;br /&gt;
== 개요 ==&lt;br /&gt;
[[컴퓨터 그래픽스]]에서 안보이는 물체를 [[랜더링]]하지 않아서 자원을 절약하는 기법을 통칭한다. 컬링에는 View volume culling, Occlusion culling, Back-face culling 3가지 종류가 있다. 각각 카메라 밖의 물체, 오브젝트 뒤에 가려져서 안보이는 물체, 한 오브젝트 내에서 뒷면을 랜더링 하지 않아서 자원을 절약하는 방식으로 구현된다.&lt;br /&gt;
&lt;br /&gt;
== View volume culling ==&lt;br /&gt;
[[view volume]]밖의 물체를 렌더링 하지 않는 기법이다. [[Bounding Box]]를 통해서 물체가 화면 밖에 있는지 아닌지를 구분한다. Bounding box 는 원형, 박스, 축 정렬 박스 (axis-aligned bounding box AABB)등이 있으며, AABB 방식이 현재 빠르고 정확한 방식으로 알려져 있다. AABB 방식은 화면의 축과 Bounding box의 축을 정렬하는 직사각형으로 bounding box를 구현하는 방식을 말한다. &lt;br /&gt;
&lt;br /&gt;
View volume Culling 은 3가지의 경우가 있다. 내부, 경계, 외부. 내부는 그대로 화면에 출력하며 경계의 물체는 [[Clipping]]을 이용해서 잘라내 출력해야 한다. 외부의 오브젝트는 [[랜더링]] 프로세스에서 탈락시켜서 출력시키지 않는다. &lt;br /&gt;
[[파일:뷰 볼륨 컬링.png|700픽셀|가운데|뷰 볼륨 컬링]]&lt;br /&gt;
위의 그림은 원을 바운딩 박스로 사용했을경우 처리되는 수식을 정리한 것이다. r은 원의 반지름이며, n은 면의 노말벡터, c는 원의 중심, a는 면위의 임의의 한 점을 말한다. &lt;br /&gt;
&lt;br /&gt;
사실 &amp;lt;math&amp;gt; p(t) = n(t-a) &amp;lt;/math&amp;gt;는 노말벡터가 n이고 한 점이 a인 면의 방정식임으로 윗식은 면과 원과의 거리를 구한것으로 이를 생각하면 윗 표현은 자명하다. &lt;br /&gt;
=== Hierarchical Culling ===&lt;br /&gt;
바운딩 박스가 크면 일단 최소단위의 바운딩 박스로 쪼개어서 좀더 세밀하게 체크하는 기법을 말한다. 트리 구조를 이용한다. &lt;br /&gt;
&lt;br /&gt;
=== 문제점 ===&lt;br /&gt;
만약 거울과 같은 상황이면 외부에 있는 물체도 처리해야 하는데 이 경우는 어떻게 처리하는 가? &lt;br /&gt;
&lt;br /&gt;
즉 바운딩 박스 외부의 물체에 의한 효과를 내부의 물체에 반영할 수 없다는 문제가 있다. &lt;br /&gt;
&lt;br /&gt;
== Occlusion culling ==&lt;br /&gt;
&lt;br /&gt;
== Back-face culling ==&lt;br /&gt;
오브젝트 뒷면을 [[랜더링]]하지 않는 기법이다. 삼각형의 노말이 카메라를 향하는지 아니면 카메라 반대편을 향하는지 검사하여 구현한다.&lt;br /&gt;
[[파일:백페이스 컬링.png|프레임없음|가운데|700픽셀||백페이스 컬링]]&lt;br /&gt;
윗 식에서 e는 삼각형위의 어떤 정점이라 하고 n을 삼각형의 노말벡터라고 하자. 이경우 e와 n을 내적하면 e와 n의 기울기를 알 수 있다. 만약 이 기울기가 90도 이내이면 카메라가 검출할 수 있는 시야각안에 있는 것이고 아니면 뒷면일 것이다. 이를 이용하여 en의 부호를 계산해서 만약 음수이면 [[랜더링]]하지 않는 방식으로 자원을 절약한다.&lt;br /&gt;
&lt;br /&gt;
== 문제점 ==&lt;br /&gt;
만약 오브젝트에 구멍이 있어서 뒷면을 랜더링해야 한다면? 오브젝트가 투명하다면?&lt;br /&gt;
&lt;br /&gt;
등과 같이 오브젝트의 뒷면을 랜더링해야 하는 상황에서 문제가 발생한다.&lt;/div&gt;</summary>
		<author><name>Ahn9807</name></author>
	</entry>
</feed>