일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 렌더링
- OpenGL
- 윈도우 프로그래밍
- Mesh Processing
- Graphics
- 베지에 곡선
- bezier curve
- c4d
- denoising
- 컴퓨터 아키텍쳐
- 그래픽스
- 윈도우
- MFC 윈도우 프로그래밍
- shader programming
- 윈도우프로그래밍
- 컴퓨터 구조
- 운영체제
- shader
- Geometry Modeling
- window programming
- 핵심 API로 배우는 윈도우프로그래밍
- 그래픽스기초
- modeling
- 셰이더
- MFC
- 오픈지엘
- win32
- Win32 API
- 셰이더프로그래밍
- 윈도우 구조
- Today
- Total
목록분류 전체보기 (187)
오다기리 박의 알고리즘 노트
메쉬에서 일부 영역을 선택해서 Fairing 을 적용해보았다. mesh fairing은 디테일/노이즈를 제거하여 부드럽게 만드는 기법이다. [개발 환경] C++ / OpenGL / Visual Studio [참고] Moreton, Henry P., and Carlo H. Séquin. "Functional optimization for fair surface design." ACM SIGGRAPH Computer Graphics 26.2 (1992): 167-176. Desbrun, Mathieu, et al. "Implicit fairing of irregular meshes using diffusion and curvature flow." Proceedings of the 26th annual con..
메쉬의 재질(material)에 셰이더(shader)를 붙여서 표현해보았다. OpenGL에서는 기본적으로 삼각형 안에서 세 점의 조명색상을 보간하는 방식인 Gouraud 셰이딩을 사용하기 때문에 메쉬의 렌더링 퀄리티가 높지 않다. 영상에서는 GLSL을 사용하여 퐁(Phong) 셰이딩, 툰(Toon) 셰이딩, 환경 매핑(Environment mapping)등을 사용한다. 특히 퐁셰이딩은 삼각형 안에서 세 점의 법선을 보간하기 때문에 Specular 효과를 확실하게 표현할 수 있다. [개발 환경] C++ / OpenGL / Visual Studio
메쉬의 삼각형을 정삼각형에 가깝게 만들어주는 isometric remeshing 알고리즘을 구현해보았다. 에지를 분할하거나 제거하면서 불규칙한 모양의 삼각형들을 정삼각형에 가깝게 바꿔주는 방식이다. [개발 환경] C++ / OpenGL / Visual Studio [참고] Vorsatz, Jens, Ch Ro¨ ssl, and, and H-P. Seidel. "Dynamic remeshing and applications." J. Comput. Inf. Sci. Eng. 3.4 (2003): 338-344. Botsch, Mario, and Leif Kobbelt. "A remeshing approach to multiresolution modeling." Proceedings of the 2004 Eu..
메쉬의 노이즈를 제거하여 표면을 부드럽게 만들어 보았다. 각 정점의 위치를 이웃한 정점들의 무게중심으로 이동시키는 단순한 방식을 적용했다. [개발 환경] C++ / OpenGL / Visual Studio
3D메쉬를 2D 공간에 교차없이 펼쳐보았다. 삼각형의 각도를 유지시키기 위해 Least Squares Solution을 사용했다. 2D 매개화는 텍스처 매핑, 리메싱, 압축, 곡면 복원 등에 널리 활용되는 기술이다. [개발 환경] C++ / OpenGL / Visual Studio [참고] Floater, Michael S., and Kai Hormann. "Surface parameterization: a tutorial and survey." Advances in multiresolution for geometric modelling (2005): 157-186.
메쉬의 곡률을 계산해서 가시화를 해보았다. 첫번째는 가우스 곡률을, 두번째는 평균 곡률을, 세번째는 법선 방향에 해당된다. 보통 메쉬위의 한 정점에서 곡률을 계산하면 그 값이 매우 국소적이기 때문에 전체적인 곡률 가시화 결과가 지저분할 수 있다. 이럴 때는 곡률값을 주변곡률의 평균으로 대체하는 등의 스무딩 기법을 적용하는 것이 좋다. [개발 환경] C++ / OpenGL / Visual Studio [참고] Botsch, Mario, et al. Polygon mesh processing. CRC press, 2010.
메쉬 위에서 시간에 따른 heat flow를 시뮬레이션해보았다. 소스 점들(형광색)에서부터 메쉬 위를 따라서 열이 퍼져나가는 것을 보여준다. 이런 기법은 소스 점들로부터 다른 모든 영역까지의 측지거리를 계산하는데에도 응용될 수 있다. [개발 환경] C++ / OpenGL / Visual Studio [참고] Crane, Keenan, Clarisse Weischedel, and Max Wardetzky. "Geodesics in heat: A new approach to computing distance based on heat flow." ACM Transactions on Graphics (TOG) 32.5 (2013): 1-11.
그래픽 렌더링 파이프라인 파이프라인의 주된 기능 : 가상 카메라, 3차원 객체, 광원, 조명 처리 모델, 텍스처 등이 주어졌을 때 그것으로부터 2차원 이미지를 만들어내는 것, 즉 렌더링 하는 것물체의 위치와 모양 : 그들의 기하 정보, 환경 내에서의 카메라 배치, 환경의 특성에 결정물체의 외양 : 재질 속성, 광원, 텍스처, 조명 모델의 영향 아키텍처 응용 단계소프트웨어로 실행됨. 개발자는 이 단계에서 모든 것을 통제 가능 (ex. 렌더링될 삼각형 개수 줄이기)이 단계에서 일반적으로 구현되는 프로세스 : 충돌 검출 프로세스, 텍스처 애니메이션, 변환을 통한 애니메이션, 기하 모핑, 각종 계산 프로세스, hierarchocal view frustum culling 같은 가속화 알고리즘...키보드, 마우스,..