컴퓨터 그래픽스 연구회지 2000년 5월 발표자 : 이영건 날짜 : 2000. 8. 18 컴퓨터 그래픽스의 랜더링 기술 동향 컴퓨터 그래픽스 연구회지 2000년 5월 발표자 : 이영건 날짜 : 2000. 8. 18
1. 랜더링이란 ? 3차원으로 표현된 물체의 형상에 자연환경에서 발생하는 모든 효과(물체 고유의 색, 재질, 그림자, 빛의 반사, 굴절, 투명도)등을 컴퓨터 그래픽스의 여러가지 기법으로 표현하는 과정 궁극적인 목표 Photorealistic image 생성
2. 랜더링의 역사 제 1 시기 : 선구조 시대 제 2 시기 : 은면표현 시대 제 3 시기 : 랜더링 시대 (사실적 영상 생성계산시간의 문제) 제 4 시기 : 영상기반 랜더링 비사실적 랜더링
3. 랜더링 기법 랜더링 알고리즘 종류 광선추적법 Shading 알고리즘 Shadow generation 알고리즘 빛과 물체의 관계에서 물체표면의 밝기, 빛의 반사 및 굴절 효과 등을 처리 Shading 알고리즘 빛의 성질로부터 물체의 광도 계산 Shadow generation 알고리즘 빛과 물체의 관계에서 발생하는 그림자 계산
랜더링 기법들 Wireframe Texture mapping Shading Shadow generation Ray tracing Radiosity Volume rendering Image based rendering(IBR) Nonphotorealistic rendering(NPR)
Insert Hidden line remove 1) Wireframe 사실감 있는 영상을 생성하기보다는 모델의 구조 파악 은선/면 제가 알고리즘 추가하여 좀 더 사실감 추가 wireframe Insert Hidden line remove
2) Texture mapping 정의 왜(?) Texture(texture map) 물체표면 표현의 문제점 의해 오렌지 껍질, 축구공의 가죽 감, 머리카락의 가닥 등 미세한 무늬나 재질 표현 Texture(texture map) 물체 표면의 부드러움, 거침, 빛남 투명함 들과 같은 질감을 나타내기 위한 무늬 기본요소 : texel(색상요소, (u, v) 좌표)
2) Texture mapping - 2 종류(물체의 형태와 재질에 따라) Reflection General texture mapping(형태) flat mapping cylindrical mapping spherical mapping View-dependent mapping (재질) chrome/reflection mapping refraction mapping environment mapping Bump mapping Surface Bump Reflection
2) Texture mapping - 3 Flat mapping texture image를 여러 개의 패치로 나누어서 해당되는 물체의 패치에 매핑시킨다. Texture image A texture map applied to a single face that has been rotated
2) Texture mapping - 4 Cylindrical mapping 원기둥 위로의 매핑함수 (u, v) = (/2, z) u, v [0, 1] 원기둥 위의 점 (rcos, rsin, hz), where 0< <2 and 0<z<1
2) Texture mapping - 5 Spherical mapping 구 위로의 매핑함수 구 위의 점은 (rcossin, rsinsin, rcos) where, 0/2 and /4/2
From Advanced animation and Rendering techniques 2) Texture mapping - 6 금속물체를 표현하는데 적합한 매핑기법 매핑함수 From Advanced animation and Rendering techniques Alan watt, Mark watt
From Advanced animation and Rendering techniques 2) Texture mapping - 7 Refraction mapping 해수면을 표현하는데 적합한 매핑기술 이다 굴곡이 있는 면에서 서로 다른 노말벡터를 이용해 음영패턴을 만들어 매핑 시킨다. From Advanced animation and Rendering techniques Alan watt, Mark watt
2) Texture mapping - 8 Environment mapping은 주변 환경에 대한 정보를 포함하고 있는 6개의 mipmap을 사용해서 주변 환경에 영향을 받는 반사모델을 만드는 것이다. 관찰자의 시선광선이 물체에 만나는 점에 반사광선이 만나는 환경 맵의 속성을 칠하게 된다.
From Advanced animation and Rendering techniques 2) Texture mapping - 9 범프매핑은 물체의 재질을 표현하기 위한 매핑기법 이다. 물체 표면의 normal vector 방향을 변경한 패턴을 물체에 매핑 한다. 특히 울퉁불퉁하고 주름진 면을 표현하는데 적합한 기법이다. From Advanced animation and Rendering techniques Alan watt, Mark watt
3) Shadow generation 물체 자신에 의해 가려져 생기는 그림자 광원으로부터 빛을 차단하여 바닥에 생성되는 그림자 그림자 : 그래픽스의 사실감 표현(중요역할) 위치정보 인식 사용용도 건축물 설계 시 일조권에 대한 해결책 그림자 종류 Self shadow 물체 자신에 의해 가려져 생기는 그림자 Projective shadow 광원으로부터 빛을 차단하여 바닥에 생성되는 그림자
4) Ray tracing Ray casting 기반 관찰자의 눈에 들어오는 광선을 찾아 그 광선의 색을 화면에 표시해주는 방법 원리 눈과 물체 사이 화면 설정 시점 출발 시선을 따라감 거울을 만나면 반사 반사된 시선이 헝겊 같은 물체 만남 그 헝겊의 색채 가져옴 광원과 물체표면과의 각도 계산 후 색의 밝기 더해줌..
4) Ray tracing - 2 장점 단점 방법 투명물체와 거울면 반사 표현 가능 은면제거 처리 불필요(why?) Forward ray tracing 하나의 광원이 내보내는 빛의 방향을 세분하여 추적 장점 : 자연현상을 충실히 표현 단점 : 모든 광선을 찾아야 하는 문제 발생 Backward ray tracing 관찰자의 눈에서 광원 방향으로 시선을 역추적 장점 투명물체와 거울면 반사 표현 가능 은면제거 처리 불필요(why?) 단점 알고리즘은 복잡하지 않지만 전체적인 계산량 많아짐
4) Ray tracing - 3 속도 개선 기법 문제점(계산 시간 많이 걸림) 해결책 (바운딩 볼륨by Rubin) 각 물체의 명암계산을 점 샘플링 방법에 의한 pixel단위의 계산을 수행 재귀적 방법에 의한 계산량 증가 해결책 (바운딩 볼륨by Rubin) 랜더링하고자 하는 복잡한 물체를 구 또는 직육면체와 같이 간단한 물체로 둘러싸서 교차점 검사
5) Shading 정의 Polygon mesh shading 종류 광선추적법에 의해 계산된 물체의 보이는 부분에 대해 광원과 관찰자의 위치를 고려해 조명값을 결정하는 과정 Polygon mesh shading 종류 Constant shading Gouraud shading Phong shading
Constant shading 원리 물체를 이루는 각 다각형에서 각 면의 법선벡터를 구해 광원으로부터의 정반사 및 난반사 광도를 계산 곡면은 여러 개의 면으로 분할하여 각 면에 균일 광도로 음영처리 장점 : 계산시간이 빠르다 단점 : 곡률이 급격히 변하는 물체의 광도의 불연속성 발생
Gouraud shading 원리 각 꼭지점의 법선벡터 빛의 광도 보간법 이용 1. 꼭지점의 법선벡터 : 꼭지점의 이웃하는 면들의 법선 벡터의 평균값으로 정한다. 2.보간법을 사용하여 밝기를 정하는 경우, 점4의 밝기는 점 1,2에 의해서, 점 6의 밝기는 점 2,3에 의해서 결정. 마지막으로 점 5의 밝기는 점4, 6에 의해서 정해짐
Phong shading 원리 빛의 광도 보간하는 대신 각 꼭지점의 법선벡터를 선형보간 면의 하이라이트를 실감있게 표현 그림 14-25와 같은 다각형에서, 점 4에 대한 법선벡타값은 꼭지점 1과 꼭지점 2의 법선벡타 값을 보간법에 적용하여 계산한다. 점 6에 대한 법선벡타값도, 같은 방법에 의해서 꼭지점 2와 꼭지점 3에 의해 계산한다. 점 4와 점 6을 지나는 주사선상의 모든 점에 대한 법선벡타값은 점 4와 점 6의 법선벡타를 보간법에 적용하여 계산하는 것이다. 비교(3가지 방법)
6) Radiosity 환경내의 포함되어진 각종의 광원과 모든 반사광으로부터의 조명량을 직접 산출 빛의 난반사 효과 중점적으로 표현 사무실, 공장 내부 등과 같은 실내공간 랜더링 장점 : 매우 현실감 있는 영상 생성 단점 : 계산시간이 많이 소요되는 점 정반사 표현하기 적합하지 않다
7) Volume rendering voxel을 기본으로한 정보를 통해 rendering하는것이다. Voxel 3차원 voxel data를 입력하여 물체의 면뿐만 아니라 그 내부까지도 표현할 수 있는 것 컴퓨터 단층 촬영(CT) & 핵자기 공명 장치(MRI) Voxel Small blocks of space
8) Image based rendering 정의 여러시점의 2차원 입력 영상을 이용하여 3차원 공간의 임의의 시점에서 본 영상을 생성하는 기술 특징 영상을 입력자료로 하기때문에 영상의 복잡도와 무관 새로운 시점의 영상을 실시간으로 생성 컴퓨터 비젼기술 + 컴퓨터 그래픽스 기술 비젼 기술 영상정보추출, pixel 재투사 기술 그래픽스 기술 영상정보를 사용해서 출력영상을 생성
8) Image based rendering - 2 표현기술 영상기반 모델링 기술 2차원 영상으로부터 3차원 모델을 복원하여 표현 영상기반 랜더링 기술 2차원 영상들의 조합으로부터 시점의 영상 생성 영상기반 가속화 기술 실시간 랜더링을 위해 시점에 가까운 물체 대해서는 기하모델로 표현하고 멀리있는 물체에 대해서는 이미지를 대치하는 기술 영상기반 라이팅 기술 2차원 영상으로부터 조명정보를 추출하여 새로운 랜더링을 부여하는 기술
8) Image based rendering - 3 영상기반 기술 (예) 입력 이미지 생성 배경모델 임의의 위치에서의 결과
8) Image based rendering - 4 랜더링 기술 비교 3차원 모델기반 모델링 영상기반 랜더링 입력자료 3차원 모델 2차원 영상들의 집합 랜더링 전통적인 랜더링 기술 보간법 및 픽셀 재투사 기술 속도 영상의 복잡도에 의존 영상에 복잡도와는 무관 하드웨어 가속기에 의존 프로세서의 속도에 의존 실감형 영상 정교한 소프트웨어를 필요 입력 영상의 해상도에 따라 실감 좌우
8) Image based rendering - 5 영상 기반 표현 방법 문제점 물체 및 배경이 움직이는 동적환경에서 적용 어렵다. 물체들간의 겹침에 의해 발생하는 영상의 왜곡현상 새로운 시점에서 생성하는 영상이 정확한 영상이 아니라 시점에 근사 된 영상을 생성하는 문제점
9) Nonphotorealistic rendering 물체의 사실감이 아닌 예술적인 감성의 표현에 주안점 초기 펜이나 잉크의 같은 스타일이나 캔버스 위의 수채물감이나 오일과 같은 형태의 전형적인 art form의 재생산
9) Nonphotorealistic rendering-2 NPR 기법 2D brush-oriented painting 브러쉬,캔버스,stroke등을 위해서 좀 더 정교한 모델 2D/2.5D post processing 시스템 Raw or augmented 이미지 데이타가 이미지 프로세싱을 위한 기반으로 사용 사용자의 개입정도에 따라 Automatic techniques 사용자의 개입이 거의 요구되지 않는 기술 비자동적 기법 사용자의 개입에 따라 stroke을 정하는 기술
9) Nonphotorealistic rendering - 3 최근 경향 3D 기법 채택 NPR이 interactive하게 조작될 수 있는 3D 데이터의 스타일 가시화를 위한 실시간 알고리즘 제공에 초점 2D Paint (brush oriented) 2.5D Paint 2D/2.5D (Post-processors) 3D renders 랜더링 예 NPR 기법의 출현과정