일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- MFC
- 컴퓨터 구조
- denoising
- win32
- 오픈지엘
- 그래픽스
- Mesh Processing
- c4d
- MFC 윈도우 프로그래밍
- 윈도우 프로그래밍
- bezier curve
- 렌더링
- 셰이더프로그래밍
- 베지에 곡선
- shader programming
- 윈도우
- modeling
- Graphics
- 그래픽스기초
- 윈도우 구조
- Win32 API
- 핵심 API로 배우는 윈도우프로그래밍
- shader
- window programming
- 컴퓨터 아키텍쳐
- 윈도우프로그래밍
- 운영체제
- OpenGL
- 셰이더
- Geometry Modeling
- Today
- Total
목록그래픽스 (14)
오다기리 박의 알고리즘 노트
그래픽 렌더링 파이프라인 파이프라인의 주된 기능 : 가상 카메라, 3차원 객체, 광원, 조명 처리 모델, 텍스처 등이 주어졌을 때 그것으로부터 2차원 이미지를 만들어내는 것, 즉 렌더링 하는 것물체의 위치와 모양 : 그들의 기하 정보, 환경 내에서의 카메라 배치, 환경의 특성에 결정물체의 외양 : 재질 속성, 광원, 텍스처, 조명 모델의 영향 아키텍처 응용 단계소프트웨어로 실행됨. 개발자는 이 단계에서 모든 것을 통제 가능 (ex. 렌더링될 삼각형 개수 줄이기)이 단계에서 일반적으로 구현되는 프로세스 : 충돌 검출 프로세스, 텍스처 애니메이션, 변환을 통한 애니메이션, 기하 모핑, 각종 계산 프로세스, hierarchocal view frustum culling 같은 가속화 알고리즘...키보드, 마우스,..
Chapter 13. 고급 렌더링Section 01. 그림자(Shadow)그림자란? 지면 그림자 셰도우 맵 셰도우 맵 알고리즘 : 영상공간 알고리즘으로, 화면 화소 단위로 그림자 위치를 계산한다.섀도우 Z버퍼 / 섀도우 맵 : 광원 기준 Z버퍼알고리즘if(Zmap + Bias) < Zpixel 픽셀은 그림자 안에 들어감 else 픽셀은 그림자 밖에 있음Zmap : 섀도우 맵에 저장된 거리Zpixel : 화소와 광원간의 거리단점 : Spotlight에만 적용할 수 있다.그림자 부피 (Shadow Volume) Z - pass 알고리즘 Section 02. 레이트레이싱연산광선이 화면 안의 물체와 만나는지 일일히 다 검사해보는 과정에서 시간이 많이 소요됨Bounding Volume 기법으로 가속화 가능 Sec..
Chapter 12. 프래그먼트 연산Section 01. GL 파이프라인 Section 02. GL의 버퍼버퍼 활성화void glutInitDisplayMode(int modes);mode활성화 버퍼GLUT_SINGLEFront 버퍼GLUT_DOUBLEFront 버퍼 + Back 버퍼GLUT_DEPTHZ 버퍼GLUT_ACCUMA 버퍼GLUT_STENCILStencil 버퍼버퍼 초기화 값 정의glClearColor( ) : 프레임 버퍼(Front 버퍼, Back 버퍼, Auxiliary 버퍼)의 초기화 값 정의glClearIndex( ) : Color Index 버퍼의 초기화 값 정의glClearDepth( ) : Z 버퍼의 초기화 값 정의glClearStencil( ) : Stencil 버퍼의 초기화 값..
Chapter 11. 텍스쳐 (Texture)Section 01. 텍스쳐 맵 Light mappingTexture mappingEnvironment mappingBump mapping Section 02. 텍스쳐 매핑 기법텍스쳐 매핑 : (s, t) 좌표로 표현된 텍스쳐 영상을 (x, y, z) 좌표로 표현된 물체면으로 프로젝션하는 것 평면 다각형의 경우수작업 물체 다각형 정점을 대상으로 해당 정점의 텍스쳐 좌표 (s, t)값을 할당한다. 무게중심 좌표(Barycentric Coordinates)이용 를 이용하여 V의 무게중심 좌표 를 구하고 를 이용하여 텍스쳐 도메인의 V’ 를 구한다. 에일리어싱언더샘플링으로 인한 에일리어싱 Projection 이후에 텍스쳐 가함으로 인한 에일리어싱 곡면의 경우 왜곡을..
Chapter 10. 조명과 음영(Lighting and Shading)Section 01. 조명 (Lighting)조명과 음영 렌더링 = 조명(Lighting) + 음영(Shading)Lighting : 광원과 물체 특성을 감안하여 정점에서의 빛 세기를 계산하는 작업Shading : 이렇게 결정된 정점 색을 기준으로 해당 물체면 내부 곳곳마다 색을 부여하는 작업전역 조명모델과 지역 조명모델전역 조명모델 (Global Lighting Model) : 장면 내의 물체 상호간의 반사까지 고려한 모델지역 조명모델 (Local Lighting Model) : 광원으로부터 직접 물체에 부딪쳐 우리 눈에 들어오는 빛만 고려한 모델 Section 02. 지역 조명모델(Local Lighting Model)주변광 (A..
Chapter 09. 래스터변환(Rasterization)Section 01. 래스터변환정점, 선분, 다각형 내부를 표현하기 위해 어떤 화소를 선택해야 하는지를 결정하는 작업 Section 02. 선분 래스터변환선분의 기울기 > 1 : y 좌표를 1씩 증가시키면서 래스터변환선분의 기울기 < 1 : x 좌표를 1씩 증가시키면서 래스터변환 교차점 계산DDA(Digital Differential Analyzer) 알고리즘 다음 교차점의 y좌표 = 이전 교차점의 y좌표 + 기울기브레스넘(Bresenham) 알고리즘 / 중점 알고리즘장점 : 연산속도화소 좌표주소할당 방식 Section 03. 다각형 래스터변환그래픽 수식 표현Explicit Formsy = 2x +4 Impicit Formsf(x,y) = y - ..
Chapter 08. 가시성 판단 (Visibility Detection)(후면제거 - 절단 - 은면제거) Section 01. 벡터…Section 02. 후면제거 (Backface Culling)후면제거 (Backface Culling)후면을 판단하고 제거하는 과정void glEnable(GL_CULL_FACE); void glCullFace(GLenum mode); void glDisable(GL_CULL_FACE); Front face, Back facevoid glFrontFace(GLenum mode) : Front face, Back face를 설정void glPolygonMode(GLenum face, GLenum mode) : Front face, Back face를 그리는 방식을 구분할 ..
Chapter 07. 투상변환과 뷰포트변환Section 01. 투상 (Projection)투상(Projection), 가시변환(Viewing Transformation) : 모델좌표계-전역좌표계-시점좌표계를 순차적으로 거친 다각형 정점 좌표를 2차원 투상면(View Plane, Projection Plane)으로 사상시키는 과정.정사투상(Orthographic Projection)…원근투상 (Perspective Projection) Section 02. GL의 투상변환 (Projection Transformation)void glGetFloatv(GLenum pname, GLfloat *params); -> 현 투상행렬 값을 검색하여 params 배열로 저장GL 파이프라인설계된 물체 또는 그래픽 라이브..