[14.12.08] 행렬대수(shaderstudy)

14
Monday, December 08, 2014 Est. 1869 Price 6d - 해강 Member of the Asscoiated Press . Aenean commodo ligula eget dolor. Aenean. Aenean commodo ligula eget dolor. Aenhswse. Cejhciebce fcdcdcd. DirectX 11을 이용한 3D 게임 프로그래밍 입문 02. 행렬대수

Post on 11-Jul-2015

270 views

Category:

Software


3 download

TRANSCRIPT

Page 1: [14.12.08] 행렬대수(ShaderStudy)

Monday, December 08, 2014Est. 1869 Price 6d

- 해강

Member of the Asscoiated Press . Aenean commodo ligula eget dolor.

Aenean. Aenean commodo ligula eget

dolor. Aenhswse. Cejhciebce fcdcdcd.

DirectX 11을 이용한 3D 게임 프로그래밍 입문

02. 행렬대수

Page 2: [14.12.08] 행렬대수(ShaderStudy)

• 행렬은 비례, 회전, 이동같은 변환이나, 기준계 변환에 쓰인다

• 행렬은 m개의 행과 n개의 열로 이루어진 실수들의 배열이다

• u, v는 행이나 열이 하나씩이라 각각 행벡터, 열벡터라 한다

• 한 행렬의 행이나 열들은 벡터로 간주하기도 한다

정의

Page 3: [14.12.08] 행렬대수(ShaderStudy)

• 행렬은 아래의 법칙들을 만족한다

정의2

Page 4: [14.12.08] 행렬대수(ShaderStudy)

• 행렬 A, B의 곱 AB의 ij 성분은 A의 i번째 행벡터와 B의 j번째열벡터의 내적이다

• 따라서 행렬곱이 정의 되려면 A의 행수, B의 열수가 일치해야한다

곱셈

성립한다성립하지 않는다

Page 5: [14.12.08] 행렬대수(ShaderStudy)

• 일반적으로 행렬 곱셈에는 교환 법칙은 성립하지 않는다

- 교환할 경우 행과 열이 맞지 않을 수 있기 때문이다

• 행렬 곱셈은 결합법칙을 만족한다

곱셈2

Page 6: [14.12.08] 행렬대수(ShaderStudy)

• 전치 행렬은 행렬의 행과 열을 맞바꾼 것을 말한다

전치

Page 7: [14.12.08] 행렬대수(ShaderStudy)

• 전치행렬에는 아래와 같은 속성이 있다

전치2

Page 8: [14.12.08] 행렬대수(ShaderStudy)

• 단위행렬은 주대각 성분들이 1, 나머지는 모두 0인 정방행렬(행과 열의 수가 같다)이다

• 단위행렬은 곱셈의 항등원 역할을 한다.

• 어떤 행렬을 곱해도 변하지 않는다

• 단위 행렬과 곱셈을 하는 행렬이 정방행렬일때, 교환법칙을 성립한다

단위행렬

Page 9: [14.12.08] 행렬대수(ShaderStudy)

• 행렬식은 정방행렬을 받아서 실수 값을 산출하는 함수다

• 정방행렬 A는 detA로 표기한다

• 행렬의 역을 구할때 행렬식이 사용된다

• 특정 행과 열을 삭제한 소행렬을 통해 구할 수 있다

행렬식

Page 10: [14.12.08] 행렬대수(ShaderStudy)

• n x n 행렬 A에 대한 곱 을 여인수라고 부른다

• A의 각 성분에 여인수 Cij를 해당 위치에 넣은 행렬을

여인수 행렬이라 한다

• 여인수 행렬의 전치행렬을 딸림행렬(수반행렬)이라 한다

딸림행렬

Page 11: [14.12.08] 행렬대수(ShaderStudy)

• 정방행렬만이 역행렬을 가진다

• n x n 행렬 A의 역은 n x n 행렬이며 A-1로 표기한다

• 모든 정방행렬에 역행렬이 존재하지는 않는다

- 역행렬이 있는 경우 가역행렬, 없는 경우 특이행렬이라 한다

• 역행렬이 존재하는 경우 그 역행렬은 고유하다

• 행렬에 역행렬을 곱하면 단위행렬이 나온다

행렬의 역

Page 12: [14.12.08] 행렬대수(ShaderStudy)

• 행렬의 역은 행렬 방정식을 다른 행렬에 대해 풀 때 유용하다

• 딸림 행렬과 행렬식을 이용해 역행렬을 구할 수 있다

행렬의 역2

Page 13: [14.12.08] 행렬대수(ShaderStudy)

• 4x4 행렬을 나타내기 위해 XMMATRIX 클래스가 사용 된다

• XMVECTOR 인스턴스 네개를 사용한다

• 곱셈을 위해 중복적재된 연산자를 지원한다

• 색인을 지정해 접근/수정할 수 있도록 대괄호 연산자를 지원한다

• 생성자이외에 XMMatrixSet이라는 함수로 지정할 수 있다

• 행렬을 클래스에 멤버로 저장할때 XMFLOAT4X4를 사용할 것을 추천한다

XNA Math 행렬 기능

Page 14: [14.12.08] 행렬대수(ShaderStudy)

• 행렬 관련 함수

XNA Math 행렬 기능2