랜더링 수학

naranghae·2020년 12월 22일
0

miniRT

목록 보기
2/10

일차방정식

두 개의 교점으로 일차방정식을 구하려면, $$(x_1,y_1), (x_2, y_2)$$ 의 두개의 점이 있을 때
일차 방정식은 $$y =\cfrac{y_2-y_1}{x_2 - x_1}x + b$$ 의 형태이다.
여기서 a는 기울기이고, b는 y절편이다. 기울기를 구하는 공식은 $$\cfrac{y_2-y_1}{x_2 - x_1}$$ 이다.
그리고 b는 두개의 좌표 중 하나를 넣어서 구한다.
ex) (1, 3), (2, -1)이 있다고 하면, $$\cfrac{-1-3}{2 - 1}$$ 로 -4가 되서
$$y =-4x + b$$이고 이 공식에 x = 1, y = 3을 넣으면 $$3 =-4 + b$$ 로 b가 7이 되어
일차 방정식은 $$y =-4x + 7$$이 된다.

엄청 간단하다.

두 점의 가중 평균

이것도 간단하다. $$A(x_1,y_1), B(x_2, y_2)$$이 있을 때 그 점을 잇는 선에 점M이 있다고 하자.
그 때 $$M = \cfrac{A + B + B}{3}$$로 나타내어 $$M = \cfrac{A + 2B}{3}$$ -> $$M = \cfrac{1}{3}A + \cfrac{2}{3}B$$ 가 된다.
그리고 점A부터 점M까지를 $$\cfrac{2}{3}$$ , 점B부터 점M까지를 $$\cfrac{1}{3}$$ 라 둔다.
그러면 점A부터 점B까지가 1이 되는데 여기서 $$\cfrac{1}{3}$$를 t라 두고 $$\cfrac{2}{3}$$ 를 (1 - t)라 한다.
그러면 $$M(x,y) =(1 - t)A + tB$$라는 수식이 완성되고,
$$M(x) =(1 - t)x_1 + tx_2$$,
$$M(y) =(1 - t)y_1 + ty_2$$
으로 M의 좌표를 구할 수 있다.

평면과 광선의 교차점

문제

광선 추적을 이용하여 방정식 $$6x + 5y +z-30=0$$으로 정의된 이미지 평면을 만든다.
좌표가 $$(0, 0, 0)$$인 카메라에서 나와 좌표 $$(2,4,8)$$인 픽셀을 지나는 광선을 그리고, 그 광선이
평면과 점 $$I$$에서 만난다면 $$I$$의 좌표는 무엇일까?

이러면 우선 방정식을 구한다. $$(0,0,0)$$를 점$$C$$라 하고 좌표 $$(2,4,8)$$인 픽셀을 점$$P$$라고 하자.
그러면 점$$C$$에서 나와 점$$P$$를 지나가는 광선을 매개변수화시켜서 $$t$$에 대한 함수로 나타낼 수 있다. $$R(t) = (1-t)C + P$$가 된다.

여기서 교점 $$I$$에 대한 좌표를 $$R(t^)$$에 대해 정의하고 $$t^$$에 대한 $$I$$좌표로 나타낼 수 있다.
$$I_x = R_x(t^) = (1 - t^)C_x + t^P_x$$
$$I_y = R_y(t^
) = (1 - t^)C_y + t^P_y$$
$$I_z = R_z(t^
) = (1 - t^
)C_z + t^*P_z$$

위 공식에서 $$C$$의 점은 전부 $$0$$이고 $$P$$의 점은 $$(2,4,8)$$이므로,
$$I_x = R_x(t^) = 0 + t^2 = 2t^$$
$$I_y = R_y(t^
) = 0 + t^4= 4t^$$
$$I_z = R_z(t^) = 0 + t^8= 8t^$$
로 나타낼 수 있다. 이 $$I$$의 좌표를 $$6x + 5y +z-30=0$$ 에 넣어 $$t^
$$를 구하면 $$\cfrac{3}{4}$$ 이 되고 $$I$$ 좌표에 대입하면 $$I$$좌표는 $$(1.5, 3,6)$$이 된다.

3D 삼각형 교차점

문제

삼각형 $$ABC$$는 다음 세 점에 의해 정의 된다.
$$A = (4,2,4)$$
$$B = (5,-5,5)$$
$$C = (3,-2,6)$$
한 반직선이$$ABC$$로 정의된 평면을 지나가면서 점 $$I$$를 지납니다.
$$I =(3.1,-4.3,4.9)$$라면 $$I$$는 $$\vartriangle ABC$$안에 있나요?

$$I$$가 삼각형 안에 있다고 생각해서 $$I = aA+bB+cC$$ 라 정의한다.
그리고 $$I$$의 각각의 좌표를 나타내면,
$$I_x = aA_x+bB_x+cC_x$$
$$I_y = aA_y+bB_y+cC_y$$
$$I_z = aA_z+bB_z+cC_z$$

여기에 좌표값들을 집어 넣는다.
$$3.1 = 4a+5b+3c$$
$$-4.3 = 2a-5b-2c$$
$$4.9 = 4a+5b+6c$$

이 수식을 연립방정식으로 풀면, $$a=-0.3, b= 0.5,c=0.3$$가 나오는데 $$a$$를 봤을 때
$$a$$가 마이너스이므로 $$I$$는 $$\vartriangle ABC$$안에 없다.

문제 출처: https://ko.khanacademy.org/partner-content/pixar/rendering/rendering-2/e/triangle-intersection-3d

profile
오늘보다 더 나은 내일

0개의 댓글