전체 글

전체 글

    투영 벡터 공식 유도

    투영 벡터는 예제를 통한 증명? 방식으로 이해하는게 가장 빨랐어서 공식을 유도해보고자 한다. 목표 : 두 벡터 A,B가 있고 A벡터를 B에 투영한 projection 벡터 구하기 투영 벡터의 길이는 위와 같고, 투영 벡터의 길이에 B벡터의 단위 벡터를 곱하면 투영 벡터를 구할 수 있게 된다.

    벡터 내적 공식 유도

    -머릿말- 내적은 프로그래밍에 있어 가장 많이 쓰이고 중요한 연산중 하나이다. 최근에 백페이스 컬링을 위해 내적 연산을 사용했었는데, 이 외에도 정말 많은 연산에 사용된다. 오늘은 벡터 내적 공식 유도를 주제로 포스팅 한다. 간단하게 위 사진이 내적 증명의 전부인데, 핵심은 제 2코사인 법칙을 통해 증명이 된다는 점이다. 제 2 코사인 법칙을 설명하려면... 제 1코사인 법칙부터 설명해야하기에 그부터 설명해보겠습니다. 제 1 코사인 법칙 삼각형 CBA의 꼭짓점 A에서 변 BC에 직교하게끔 수선의 발을 내린 점 D를 만들었다고 가정한 후 이때, CD와 BD의 길이를 구해보자면, CD = CA cosC , BD = AB cosB가 됩니다. BC = CD + BD이므로, BC = CA cosC + AB cos..

    카메라의 뷰 좌표계와 LookAt 행렬 유도

    카메라의 뷰 좌표계란, 월드 좌표계에서 기준 점(X, Y, Z)로 부터 카메라를 기준으로 본 좌표계를 의미한다.

    3차원 회전 행렬 구하기 by 오일러각 Input

    고등학생때 2차원 회전 행렬을 응용해서 풀어야 했던 문제가 있었던게 어렴풋이 기억이 난다. 2차원 회전 행렬은 특정 각만큼 회전시켰을때 기존 좌표를 삼각함수로 연산하여 회전된 좌표를 구한 식을 행렬로 표현한 것이라고 할 수 있다. 이와 약간은 다르게 3차원 회전 행렬은 축기준으로 회전을 하게 된다. X축을 기준으로 회전하면, X값은 변치 않고 Y,Z값만 수정되며, Y축을 기준으로 회전하면, Y값은 변치 않고 X,Z값만 수정되며, Z축을 기준으로 회전하면 Z값은 변치 않고 X,Y값만 수정된다. 이때 중요한 점은 특정 축을 기준으로 회전하기에, 수정되는 좌표는 어디까지나 2개의 좌표이므로, 2차원 회전 행렬 개념을 그대로 적용해서 연산을 수행한다고 볼 수 있다. 또한 최종 연산 결과가 여러 축을 기준으로 회..