ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 3D 렌더링
    그래픽스 2021. 10. 25. 21:52

    rendering

    3D 표현 과정

    1. 3차원 환경 표현
    2. 3차원 보는 사람 표현
    3. 보이는 물체 결정
    4. 조명 시물레이션 Intensity (빛의세기)

    3D Scene 표현

    • 다각형
    • 다면체
    • 곡면
    • 내부가 꽉 찬 모델

    3D 점

    간단하다

    위치 값을 알 수 있다.

    3D 벡터

    방향 과 크기를 가지고 있다.

    위치값을 알 수 가 없다.

    내적 Scalar Procduct

    Innter product (Scalar Procduct) 내적을 구할 수 있습니다.

    cos 법칙을 이용해서 각도를 알 수 있다.

    내적의 특징

    내적을 이용해서 다른 벡터를 알 수 있다.

    내적의 값으로 내적의 각도를 알 수 있다.

    외적 Cross(=Vector) product

    외적은 두 벡터의 수직인 벡터를 알 수 있다.

    v1과 v2의 순서를 바꾸면 안된다. 왜냐하면, 오른손 법칙에 의해서 구하려는 방향이 다르게 나온다.

    v1 * v2는 사진과 같이 위쪽 수직이 나오지만, 반대로 하면 아래 방향의 수직을 구하게 됩니다.

    3D 선분

    두 점사이의 길이를 나타낸다.

    3D 광선 (Ray)

    주로 광선을 표현한다

    끝이 무한대로 빛을 표현할 때 쓴다.

    3D 선

    제한이 없다.

    3D 평면

    N 은 'normal'이라고 한다.

    • 단위 벡터
    • 평면과 수직한다.

    구하는 방법은 P1P3의 벡터P1P2의 벡터의 외적을 구하면, N을 구할 수 있다.

    P1P3 * P1P2

    세개의 점의 조합으로 평면을 이룬다.

    계산식으로는 아래 사진으로 표현된다.

    3D 다각형

    삼각형, 사변형 등 여러가지 가 있다.

    그 중 삼각형은 모든 평면의 기준이 된다.

    • Convex 볼록다각형
      • 다각형 내부 혹은 경계를 잇는 직선에 대해서, 다각형의 꼭지점을 잇는 직선은 언제나 다각형의 내부 혹은 경계에 있다.
    • Concave 오목다각형
      • 꼭지점을 직선으로 잇는데, 적어도 2개의 꼭지점을 잇는 직선이 다각형의 변 위에 있지 않고, 외부로 이어진다.
    • convex hull
      • 도형의 모든 영역을 포함하는 모든 점들을 포함하는 최소 크기의 볼록 다각형
      • 별 사진을 예로 하면, 별의 꼭짓점 5개가 만 있으면 별을 만들 수 있다. 이 점을 conves hull라고 한다.

    반드시 다각형의 정보는 반시계방향으로 저장해야 한다. 왜냐하면 normal을 구할 때, 편하게 하기 위해서 이다.

    3D 구체

    3D scenes

    3D 보는 방법

    camera Models

    pin-hole camera를 이용하다.

    pin-hole camera : 빛을 이용해서, 작은 구멍안에 빛이 들어와서 거꾸로 상을 표현하는 방식이다.

     

    • Eye position or camera, view라고도 불린다.
    • 캡처된 모든 광선이 렌즈 왜곡 없이 초점 방향으로 이동한다.(모든 것이 초점이 맞춰져 있다)

    Camera Parameters

    UVN 좌표계를 쓴다. (시각 좌표계)

    • Position(위치)
      • Eye position  (px, py, pz)
    • Orientation (방향)
      • View direction (dx, dy, dz) (보는 방향)
      • Up direction (vx, vy, vz) (어떻게 자세로 보고 있는지)
    • Aperture (조리개) 얼마나빛을 받아드리는 지
      • Field of view(FOV) (xfov, yfov)
    • Film plane (필름 평면)
      • “Look at” point (보는 부분의 위치 값)
      • View plane normal (보는 부분의 단위 벡터)

    Towards를 구하기 위해서는 외적을 구하면 된다.

    Visible Surface Determination

    Ray Casting

    방법

    1. 눈에서 광선을 생성한다.
    2. 도형과 만나는 교차점을 판단한다. 첫번째 물체를 판단한다
    3. 조명을 계산한다. Intensity 빛의 세기, 밝기

    1) 광선을 어떻게 생성하는 가

    눈의 위치로 부 터(P0) tV로 간다.

    2) 도형과 만나는 교차점을 판단한다. 첫번째 물체를 판단한다

    교차하는 점

    T가 가장 적게 나온 부분이 첫번째 교차점이다

    주의할 점)

    광선을 랜덤하게 쐇서, 도형을 제대로 표현하게 만든다.

    Lighting simulation

    • 발산
    • 반사
    • 감쇠형상
      • 거리에 따라 빛의 세기가 줄어드는 현상
    • 반응

    감쇠는 빛의 벡터와 보는 광선의 벡터의 내각을 통해서, 빛의 세기의 값을 알 수 있다.

    간점, 직접 조명

    직접 조명 표현

    • Ray casting
    • Polygon shading

    간접조명 표현

    • Ray tracing
    • Monte Carlo methods
    • Radiosity

    정확한 물리적 시뮬레이션은 복잡하고 다루기 어렵다. 그래서 렌더링 알고리즘은 표현과 계산을 단순화하기 위해 많은 근사치를 적용한다.

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

    3D Object - Curve & Surface  (0) 2021.11.08
    3D Object  (0) 2021.11.01
    Modeling Transformation  (0) 2021.10.20
    Image  (0) 2021.09.29
    Color  (0) 2021.09.27

    댓글

Designed by Tistory.