2012년 1월 13일 금요일

Perspective correct barycentric coordinate

Perspective effect가 있으면, projected space에서 barycentric 계산 틀려짐.
아래는 nvidia 어디에선가 가져온 자료.

그냥 Object space에서 해결.




시간나면 다른 방법으로도 풀어봐야겠다.

cursor위치에서 vertex normal을 이용하여 normal vector interpolation을 하기 위함

Perspective-correct barycentric coordinate for picking:


     float b0 = _area[0];
     float b1 = _area[1];
     float b2 = _area[2];

     float w0 = p_rot_face[0].z;
     float w1 = p_rot_face[1].z;
     float w2 = p_rot_face[2].z;

     w_= b0/w0 + b1/w1 + b2/w2;

     w_ = 1.0/w_;

     _area[0] = _area[0] / w0 * w_;
     _area[1] = _area[1] / w1 * w_;
     _area[2] = _area[2] / w2 * w_;





댓글 2개:

  1. 답글
    1. 알고보면 쉬운거에요. 석사 때 진작 해놓을 걸 ㅋㅋ

      삭제