컴퓨터공학

[컴퓨터그래픽스] Parametric Surface, Homogeneous Coordinate, Raytracing

TaeGyeong Lee 2023. 6. 12. 16:17

Parametric Surface

Surface를 구현하는 3번째 방법 (Mesh, Subdivision, Parametric Surface)

Parametric Curve - Surface를 하기 전에 2차원 Curve에 대한 적용법 이해

  • Blending Functions

Blending Functions

  • Piecewise Parametric Polynomial Curves
    • 모두 동일한 Blending functions
    • Local Control
  • Cubic Spline 
    • Continuity
    • Local Control 제공
    • Interpolating (점들을 지남)
    • Convex Hull
  • Cubic B-Spline
    ex) 4개의 점을 기반으로 한 3차 다항식 blending functions이 4개 필요함 (4*4 = 16가지 변수)
    • Local Control
    • C2 continuity 근사
      • ex) 점 5개에 대한 각각의 제약 3가지 (5*3 = 15가지)
        -> 0(연결), 1차미분가능, 2차미분가능
    • Approximation (점들을 지나지 않음)
    • Convex hull
  • Cubic Bezier
    • Local Control
    • Interpolating (매 3번째마다)
    • Convex hull
    • C2 Continuity
    • 대칭 - 이항분포식을 따른다
    • 데카스텔주 알고리즘 - 양쪽에서 1/2 한 것을 1/2 해서 연결한 점이 전체 곡선의 1/2

https://tiborstanko.sk/teaching/geo-num-2016/tp1.html

 

 

Parametric Surface 

  • Bi-cubic B-Spline
  • Bi-cubic Bezier

 

단점

  • Control Mesh는 Quardrilateral로 제한
  • Continuity 조정이 어렵다. (고수준으로 올라갈수록)
  • 교차점 찾기가 쉽지 않다.

Surface 구성 기법 4가지 구분표

 

Transformation - Homogeneous Coordinate

변환 작업 시 유용한 방법 : 2D 포인트에 대해 제 3의 좌표를 추가 -> 즉 0이 아닌 w 상수를 활용하여 (x,y) 를 (wx, wy, w)로 변환하는 것 (= inverse projection) 

무한대의 점을 좌표로 표현 가능하다 : (x,y) 방향의 점들을 -> (x,y,0) 로 표현

 

Ray Tracing

Ray Casting의 응용

width, heigth 순서대로

Octree, Quardtree - raytracing 성능을 가속화할 수 있는 방법, 분할하는 갯수가 많아질수록 탐색이 비싸지는 Trade-off 존재

Path Types - 어떤 물체를 만나느냐에 따라 다른 분류

  • LE : 다른 Surface를 통과하지 않고 직접
  • LDE : Diffuse Surface를 통과
  • LSE : Specular(Mirror) Surface 통과
  • L(S|D)E : LSDE LDSE