DirectX/보충 4

Matrix 함수

회전 함수에도 두종류로 나뉘어 지는데 1. 오일러 회전 D3DXMatrixScaling(); //크기 D3DXMatrixTranslation(); //위치 D3DXMatrixRotationX(); // x축 회전 D3DXMatrixRotationY(); // y축 회전 D3DXMatrixRotationZ(); // z축 회전 D3DXMatrixRotationYawPitchRoll() // 3개의 축 회전 D3DXMatrixRotationAxis() // 임의축 기준을 잡고 회전 여기서 문제는 이 회전 함수들은 하나의 축을 계산하기 때문에 '짐벌락' 현상이 일어난다. 짐벌락 현상 이란? 더보기 정상적인 각도 90도 회전 각도 (짐벌락 현상) 간단히 애기하면 하나의 3개의 축을 돌리는게 아닌 하나의 축으로 ..

DirectX/보충 2020.12.27

Matrix (회전, 크기, 위치 )

게임에서 회전 크기 위치 관련을 사용을 할 때 행열을 사용하는데 기본적인 행렬 상태는 이렇게 되어 있다. 중요한 건 이 행렬의 위치마다 각각의 값이 적용되는데 살펴보면 크기 더보기 크기의 행열을 보면 대각선으로 알 수가 있는데 여기서 크기에서 제일 중요한 점은 절대로 0이 들어가면 안되는데 그 이유는 크기가 0이면 그림이 안보이기 때문이다. 그렇기 때문에 맨처음 D3DXMATRIX 변수를 D3DXMatrixIdentity 해당 함수로 초기화 시키는 이유가 크기 부분에 1로 초기화 기본 상태로 만들어 놓고 world 값을 조합한다 아래 그림으로 예시를 보면 (2D 이기 떄문에 Z값은 1로 고정한다) 보시다 싶이 X, Y만 변경이 된다 위치 더보기 위치는 아래 41, 42, 43 으로 X, Y, Z 값으로 ..

DirectX/보충 2020.12.21

Vertex 좌표, Texture좌표(UV 좌표)

버텍스 좌표 : 화면에 그려줄 좌표 텍스쳐 좌표 : 텍스쳐 이미지의 좌표 위에 두개의 내용으로만 보면 이해가 안될수도 있는데.. 1. 버텍스 좌표계 우선 버텍스 좌표는 우리가 출력하는 디바이스 화면에서 그려줄 각각의 정점을 찍어서 그림을 그리기 위한 좌표이다. 예시로 정사각형을 그려보자면 vertics[0].position = D3DXVECTOR3(-0.5f, -0.5f, 0.0f); // 0 vertics[1].position = D3DXVECTOR3(-0.5f, +0.5f, 0.0f); // 1 vertics[2].position = D3DXVECTOR3(+0.5f, -0.5f, 0.0f); // 2 vertics[3].position = D3DXVECTOR3(+0.5f, +0.5f, 0.0f); /..

DirectX/보충 2020.12.20