타일 공간 좌표에서 화면 공간 좌표로 의 변환 행렬 을 결정한 다음 이를위한 역행렬 을 계산해야합니다. 역행렬 은 화면 공간 좌표에 적용될 때 타일 공간 좌표로 변환됩니다.
그건 그렇고 : 오프셋은 실제로 모든 좌표 시스템에서 (0.0, 1.0) 인 장소를 가리키고 있지만 큰 문제는 아니며 명심해야 할 문제입니다. 이는 변환 된 좌표계 원점의 오프셋이 (오프셋 + 32, 0)에 있음을 의미합니다.
구체적인 경우
타일 공간 (a, b) 좌표를 화면 공간 (x, y) 좌표로 변환하기 위해 기본적으로 수행하는 작업은 다음 변환 매트릭스를 통해 실행하는 것입니다.
정의 : 타일 (0, 0)의 a 와 b 는 [0.0, 1.0) 범위에 있으며 (0.0, 0.0)은 위쪽 모서리, (1.0, 1.0) 아래쪽 모서리, (0.0, 1.0) 왼쪽 모서리 화면 공간의 오른쪽 모서리 (1.0, 0.0).
변환을 행렬에 통합 할 수 있도록 좌표 정의를 상수 세 번째 좌표 (항상 정확히 1 임)로 확장합니다.
이제이 변환에 대한 역행렬을 만들 수 있습니다 . 기본 공식은 다음과 같습니다.
... C 는 A에 대한 보조 인자 의 행렬입니다 .
귀하의 경우 결정 요인 | A | 오프셋에 관계없이 항상 1024이므로 역행렬은 다음과 같습니다.
계산 예
이제 예제 데이터를 위해 ...
수식에 오프셋의 숫자를 넣으면 다음과 같은 결과가 나타납니다.
(105, 100, 1) (화면 좌표)에 행렬을 곱하면 다음을 얻을 수 있습니다.
세 번째 좌표는 항상 1이므로 계산할 필요가 없습니다. 가장 가까운 정수로 내림하면 예상대로 타일 공간 좌표로 (1, 4)가 표시됩니다.
일반 차원 투영 행렬
각 타일의 너비가 2w (예 : 64, w = 32)이고 높이가 2 시간 (예 : 32, 따라서 h = 16)이고 원점의 오프셋 이 이와 같은 원근법이 있는 경우 가로 및 세로 축에 대해 화면 공간이 각각 f x 및 f y (예 : 192 및 0) 인 경우 행렬은 다음과 같습니다.
화면 공간에 타일 공간
공간을 타일로 묶는 화면 공간