ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Texture
    그래픽스 2021. 12. 1. 12:30

    Texture Mapping

    벽지를 벽에 붙이는 것이라고 생각하면 된다.

    Parameterization

    여러가지 방식

    Texture Mapping

    1. 텍스처 정의
    2. 텍스처에서 표면으로 매핑 지정
    3. 스캔 변환 중 텍스처 값 조회

    scan 변환시, 어디로 부터 map을 하는 것인가?

    • 이미지 좌표계(x, y)에서
    • 모델링 좌표계(u, v)에서
    • 텍스처 이미지(s, t) 통해서 값을 읽어온다.

    텍스처 매핑은 2D 투영 변환입니다.
    텍스처 좌표계(s, t) -> 이미지 좌표계(x, y)

    Scan conversion

    스캔 라인을 가로질러/아래로 텍스처 좌표 보간

    이중선 보간을 이용해서 근사값을 구한다.

    • 폴리곤을 더 작은 폴리곤으로 자른다.
    • 각 픽셀의 원근감 분할

    원근 보정 보건

    위 방법대로 하면, 왼쪽처럼 나온다.

    하지만, OpenGL에서는 원근 보정 보건법을 이용해서 평평하게 보이게 만들어 준다.

    Texture Filtering

    1:1 이 안되면 Aliasing이 일어난다.

    필터의 크기는 투영 왜곡에 따라 다르다.

    Mip Maps

    보통의 방법은 Original을 가지고, 값을 가져오는 형태이다.

    이 방법이 될 수 도 있고, 안되는 수도 있다.

    Mip maps 방법을 통해서

    각 픽셀에 대해 두 개의 가장 가까운 레벨 사이를 선형으로 보간을 한다.(: 삼선형 보관볍).
    빠르고, 쉽다.

    Summed-area tables

    bounding box의 값을 구하기 위해서 A,B를 빼고, C는 A,B로 인해서 2번 계산되어서 1번 더해준다.

    • 직사각형 내의 모든 값의 합을 계산하려면 두 항목을 빼십시오.
    • 매우 비스듬한 투영을 캡처할 때 더 나은 성능을 보여준다.
    • 그러나 단일 바이트에 값을 저장할 수 없습니다.

    Modulation textures

    모델의 텍스처를 값을 곱해서, Model에 texture를 입을 수 있다.

    Illumination Mapping

    Bump Mapping

    표면의 질감(normal 값)을 model의 표면에 대입한다.

    Displacement Mapping

    Normal Mapping Problem(=Bump mapping) 단점

    • 시차를 표현을 못한다.
    • 그림자 표현을 못한다.
    • 실루엣을 표현을 못한다.

    Displacement Mapping

    객체의 geometry까지 변경한다.

    Environment Mapping

    저비용으로 완전 반사체를 구현할 수 있다

    Cube Mapping

    Environment Mapping을 이용해서, 환경맵을 구현할 때 쓸 수 있다.

    Solid Textures

    내부가 꽉찬 텍츠처를 구현하는 것이다.

    3D 위치(x,y,z)로 인덱싱된 texture 값이다.

    • 용량이 크다
    • 계산은 빠르게 된다.
    • ex) Perlin Noise이 있다.

     

    '그래픽스' 카테고리의 다른 글

    Shading  (0) 2021.11.29
    illumination 조명  (0) 2021.11.17
    Rendering Pipeline  (0) 2021.11.15
    3D Object - Curve & Surface  (0) 2021.11.08
    3D Object  (0) 2021.11.01

    댓글

Designed by Tistory.