컴퓨터는 어떻게 객체를 화면에 렌더링합니까?


18

모든 컴퓨터 그래픽이 다각형을 사용하여 렌더링됩니까? 의미하는 바는 일부 컴퓨터 형상은 수학 형태 (예 : CAD 소프트웨어)로 수학적으로 표현됩니다.

컴퓨터가 시각화를 화면에 올바르게 렌더링하기 전에 먼저 해당 형상을 테셀레이션해야합니까? 아니면 객체를 테셀레이션하지 않고도 화면에 그림을 가져 오는 다른 방법이 있습니까?

편집 : GPU에 더 초점을 맞춘 것 같습니다. GPU의 용량은 어떻게됩니까? 어떤 종류의 입력 용량이 필요한지, 즉 GPU와 함께 작동하는 모델 형식은 무엇입니까? GPU가 직접 테셀 레이트 된 모델을 필요로하는 화면을 표시하거나 선량을 적용하기 전에 완벽한 수학적 표현을 직접 사용하거나 모델 자체를 테셀 레이트 할 수 있습니까?

또한 테셀레이션의 의미는 컴퓨터가 물체의 수학적 표현을 다각형 (거의 항상 삼각형)의 표면 근사치로 분해하는 방식입니다. 폴리곤을 많이 사용할수록 표면이 실제 물체에 더 가깝습니다.


4
그런 방해 질문!
r0ca

답변:


2

이것은 @nik의 답변에 대한 귀하의 의견을 따르고 있습니다.

대부분의 CAD 시스템은 다각형 (웰 트라이앵글)을 사용하여 모델을 렌더링합니다.

예를 들어 CSG (Constructive Solid Geometry) 또는 B-rep (Boundary Representation) 모델을 기반으로 다양한 방식으로 모델을 저장 하지만, 표시 할 때는면이 그려지고 삼각형은 GPU로 보내집니다. .

각 시스템에는 모델을 삼각형으로 나누는 자체 솔루션이 있습니다.


7

이 질문을하는 호기심의 정도는 확실하지 않지만
일반적으로 Wikipedia Computer Graphics 페이지를 참조하십시오.

또한이 컴퓨터 그래픽과 애니메이션의 비판적 역사는 이 링크를 클릭하십시오.
내용 페이지에서 관심있는 섹션으로 이동할 수 있습니다.


업데이트 : 귀하의 질문 이이 UnlimitedDetail 사이트 와 관련된 개념을 기반으로하는지 궁금합니다 .

오늘날 대부분의 3D 그래픽은 폴리곤 시스템을 기반으로합니다. 그것은 다각형이라고 불리는 작은 평평한 모양으로 물건을 만드는 시스템입니다.

...

3D 그래픽에 사용되는 현재 3 가지 시스템은 레이트 레이싱, 폴리곤 및 포인트 클라우드 / 복셀이며 모두 장단점이 있습니다. 다각형은 빠르게 실행되지만 지오메트리는 열악하고 광선 추적 및 복셀은 완벽한 지오메트리를 가지지 만 매우 느리게 실행됩니다.

기타...


컴퓨터 그래픽 및 애니메이션의 중요한 역사를 언급하면 ​​+1입니다. 많이 읽을 것이지만 매우 흥미로운 ;-)
Diskilla

내 호기심 수준은 일반적으로 아이디어 뒤에있는 수학에 이르기까지 매우 깊이 내려갑니다 (그러한 자세한 답변을 기대하지는 않지만 GPU가 사용하는 것을 일반적으로 알고 싶습니다). 내 질문과 관련하여 특히 CAD 소프트웨어와 관련이 있으며 수학적 모델과 GPU 렌더링을 통해 화면에 표시되는 내용 간의 변환 방법과 관련이 있습니다. 왜? 그냥 궁금 해서요
Faken

2

GPU의 메커니즘과 렌더링 기술에 대해 깊이 알고 싶다면 온라인에서 다음 책을 찾을 수 있습니다.

GPU Gems 3, Addison-Wesley Professional (2007 년 8 월 12 일)

GPU Gems 3은 NVIDIA 개발자 교육 관리자 인 Hubert Nguyen이 편집합니다. 허버트 (Hubert)는 현재 위치로 이동하기 전에 NVIDIA 데모 팀에서 근무한 그래픽 엔지니어입니다. 그의 작품은 GPU Gems (Addison-Wesley, 2004)와 GPU Gems 2의 표지에 실 렸습니다.

GPU Gems 3은 최첨단 GPU 프로그래밍 예제 모음입니다. 데이터 병렬 처리를 작동시키는 것입니다. 처음 네 섹션은 지오메트리, 조명 및 그림자, 렌더링 및 이미지 효과 영역에서 GPU의 그래픽 관련 응용 프로그램에 중점을 둡니다. 다섯 번째 및 여섯 번째 섹션의 주제는 이제 데이터 병렬 GPU 기술로 해결할 수있는 비 그래픽 응용 프로그램의 구체적인 예를 제공하여 범위를 넓 힙니다. 이러한 애플리케이션은 강체 시뮬레이션에서 유체 흐름 시뮬레이션, 바이러스 시그니처 일치에서 암호화 및 암호 해독, 난수 생성에서 가우시안 계산에 이르기까지 다양합니다.

이전 판도 온라인 상태이며 여전히 읽을 가치가 있습니다.

GPU 보석 : 실시간 그래픽을위한 프로그래밍 기법, 팁 및 요령, Randima Fernando, 2004 년 3 월 편집

GPU Gems 2 : 그래픽 및 컴퓨팅 집중 프로그래밍 기술, Matt Pharr, 2005 년 3 월 편집

2008 년 12 월 Wolfgang Engel, Jack Hoxley, Ralf Kornmann, Niko Suni 및 Jason Zink의 정점, 형상 및 픽셀 쉐이더 프로그래밍, 2 판

마지막은 고르지 않은 책이지만 초소형입니다. Jack Hoxley의 조명 장에는 작업중인 셰이더 코드와 함께 다양한 조명 모델에 대한 자세한 설명이 나와 있습니다.


1

무언가를 항상 렌더링한다는 것은 다각형을 사용한다는 의미입니다. 심지어 예술가들도 사용합니다. 다각형은 평면 도형을 의미합니다. 3 차원으로 무언가를 만들려면 항상 여러 다각형을 가져다가 함께 모으십시오. 더 많은 평면 도형을 사용할수록 3 차원 도형에 더 많은 세부 정보를 추가 할 수 있습니다. 방정식은 물체의 빛과 같은 것들을 계산하는 데 사용됩니다.

이 절차를 완전히 이해하려면 이미 언급 한 wikipedia 기사 nik을 읽어야합니다 .

편집 : 나는 "객체 테셀레이션"의 의미에 대한 나의 해석에 대해 더 이상 확신하지 못한다. 가능하면 자세히 설명해 주시겠습니까?


테셀레이션의 의미는 솔리드 개체가 개체 표면에 가까운 일련의 평면 다각형 (거의 항상 삼각형)으로 분해된다는 것입니다. 삼각형의 수가 많을수록 표현은 물체의 실제 표면에 더 가깝습니다.
Faken

1

컴퓨팅의 역사에 따라 다른 GPU는 해상도, 정확성, 새로 고침 빈도 및 모니터 기능을 고려하여 시간이 지남에 따라 새롭고 더 흥미로운 API를 구현하여 다양한 방식으로 사물을 구현했습니다.

예를 들어, 일부 GPU는 완전한 3D 월드 뷰 표현 인터페이스를 제공하는 반면 다른 GPU는 성능이 떨어집니다.

ASIC (및 그 이상)은 오늘날 GPU가 마법을 수행하는 방식의 핵심입니다. 서브 루틴에서 완전 실행 가상 머신과 같은 복잡성을 실리콘에 배치 할 수있는 능력은 모든 마술을 가능하게합니다. 테셀레이션 외에도 GPU 매핑 내에서 처리되는 표면 매핑, 섀도 잉 등이 있습니다.

도움이 되었기를 바랍니다!
-pbr

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.