일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- 호흡분석
- C언어
- ChatGPT
- pyqt5
- 욜로
- 헬스케어
- ctypes
- 설치
- 딜러닝
- NPY
- connx
- python
- Detectron2
- 리뷰
- 파이썬
- 이터널리턴
- 개발자
- 딥러닝
- V3
- CycleGAN
- 논문리뷰
- 프로그래머
- 게임개발
- 텐서플로우
- yolo
- TensorFlow
- 언리얼엔진
- 파워셀
- 언어모델
- 논문
- Today
- Total
목록OpenGL로 배우는 3차원 컴퓨터 그래픽스 (5)
사냥꾼의 IT 노트
■OpenGL 파이프라인, 버퍼 ●파이프라인에서는 최종적으로 프래그먼트 연산을 실행하며, 프레임 버퍼 메모리를 통해 출력됨 ●프래그먼트: 프레임 버퍼에 기록되기 직전 단계의 화소로서 추상적인 개념 -> 화소의 색, 깊이, 텍스처, 위치 등 하나의 화소로 매핑될 데이터를 지닌 단위 ●정점 연산 프로세서: 정점의 3차원 처리를 위한 프로세서 ●래스터 변환: 기하 기본 요소와 화소 기본 요소(위치, 색, 깊이 등)를 프래그먼트로 변환시키는 프로세스 ●프런트 버퍼/백 버퍼/깊이 버퍼/컬러 인덱스/보조 버퍼/메이 버퍼/스텐실 버퍼 1. 버퍼 활성화 2. 버퍼 초기화 3. 버퍼 초기값 설정 4. 버퍼 쓰기와 읽기 5. 버퍼 쓰기 금지 ■프래그먼트 연산 (병렬 처리) ●컬러 섬 (color sum): 래스터 변환 단..
■텍스처 맵 ●텍스처: 촬영된 영상을 물체면에 그대로 입히는 것 ○원래는 서로 다른 색상과 법선 벡터를 정의하는 것이었지만 시간이 너무 많이 소요되어 폐기 ●범프 맵핑: 법선 벡터 조정을 통해 물체면에 인위적으로 미세한 굴곡을 부여함으로써 주름 면을 생성하는 기법 ●라이트 매핑: 물체면의 밝기를 계산하는 대신 텍스처와 조명 결과를 혼합하여 결과적인 영상을 직접 물체면에 입힘 ●주변 매핑: 물체 외부 환경이 해당 물체면에 반사됨 (반쩍이는 물체면 표현) ●텍셀: 텍스처 영상의 기본 단위(R, G, B, A) 저장 ○배열 형식이며, 정규화 형태로 표현함 ●텍스처 매핑: 2차원 텍스처 영상을 3차원 물체 면으로 사상하는 것 1. 수작업 좌표 명시 2. 화소 매핑: 화소별 무게중심 좌표를 이용해 보간에 의해 매..
■조명: 물체의 정점에 색을 부여해 물체 자체의 색을 드러내고 입체감을 부여함 (물체 공간에서 작업) ●렌더링: 조명 + 음영 ○조명: 시점 좌표계에서 작업 ○음영: 래스터 변환 단계에서 작업 ●빛의 진행: 흡수, 반사, 투과/굴절 ●물체 색: 광원과 물체, 관찰자 위치에 따라 변함 ●전역 조명 모델: 다른 물체면에서 반사되어 입사되는 빛까지 고려한 조명 모델 ●지역 조명 모델: 광원으로부터 직접 물체 면으로 입사되는 빛만을 고려한 모델 ●점, 면적 광원 ●분산 광원: 면적 광원을 분산 점 광원으로 근사화 함 ●위치성 광원 (옴니라이트): 빛이 모든 방향으로, 즉 방사형으로 진행됨 (근거리 광원) ●방향성 광원 (지향성 광원): 빛이 물체면을 향하여 일정(나란)한 방향으로 진행됨 (원거리 광원/위치 + ..
■래스터 변환 ●래스터 = 화소 (pixel) ●래스터 변환 = 스캔 변환 (scan conversion): 화소로의 사상, 즉 물체를 표현하기 위해 어떤 화소를 밝힐 것인지를 결정하는 작업 (정규화 장치 좌표에서 뷰포트로의 사상) -> 물체 공간의 점, 선, 면이 모두 사상되어야 함 ●부동 소수 좌표에서 정수 좌표로 전환되는 과정에서 반올림 발생 ●정점 좌표가 화면 좌표로 변환되면 이후에는 화면 좌표만 사용됨 ●선분과 내부면은 화면 좌표에서 판단되며, 지-버퍼에 의한 은면 제거와 동시에 이루어짐 ●깊이와 색 보간: 정점의 z값 (정점의 색)으로부터 선분 및 내부면의 깊이 (색) 보간 ●화면에 보이는 모든 것은 래스터 변환의 결과: 최대의 연산 속도, 최대의 정확성이 요구됨 ■선분의 래스터 변환 ●선분:..
■후면 제거 ●전면: 법선 벡터가 시점을 향한 면 ●후면: 법선 벡터가 시점 반대쪽을 향한 면(시점에서 멀어지는 방향의 법선 벡터를 지닌 면) ●오른손의 법칙: 오른손을 명시된 정점 순으로 감싸 쥐었을 때 엄지 방향 ●하나의 면 = 표면(법선 벡터의 방향) + 이면(법선 벡터가 없는 쪽) ○주전자가 뚫린 경우: 후면의 이면 = 표면 ■절단 알고리즘 ●절단: 물체면 중 가시 부피 내부에 존재하는 면만 걸러내기 위한 작업 ●2차원 절단: 윈도우 -> 뷰 포트 -> 시저 박스 ●3차원 절단: 가시부피 이용 ●절단 다각형: 절단 사각형... □코헨-서더런드 알고리즘: 선분 절단 ●6비트 아웃코드에 의해 절단 연산의 속도를 높인 것 => 2차원 선분을 2차원 사각형을 기준으로 절단 ●물체 공간 알고리즘 ●4단계 ..