게임 화면 오른쪽으로 나갔다가 왼쪽의 같은 높이에서 다시 나타나는 장면을 생각해 볼까요? 하지만 경계를 다르게 붙이면 어떻게 될까요? 가상 화면은 가로10, 세로6의 직사각형이며 좌표 는 아래에서 위로 세어요. 길이 단위는 게임 단위예요. 위아래 경계는 같은 가로 위치끼리 연결하고, 좌우 경계는 두 방식으로 비교해요. 캐릭터는 위아래 모서리를 제외한 에서 수평으로만 움직여, 경계 사이에서 높이가 바뀌지 않아요.
첫 방식은 오른쪽 를 왼쪽 에 붙이에요. 둘째는 오른쪽 를 왼쪽 에 붙이에요. 둘째는 경계를 넘을 때 세로 좌표가 반전되는 규칙이며, 이것을 따르는 위치 계산만 살펴보겠습니다.
첫 방식에서는 높이2가 그대로2로 남지만 둘째에서는4로 바뀌어요. 둘째 규칙을 다시 한 번 적용하면 다음과 같아요.
두 번 경계를 건넌 뒤에는 원래 높이로 돌아와요. 높이3은 이므로 허용한 내부 높이 중 한 번 건너도 그대로인 유일한 높이예요. 이것은 를 풀어 얻는 고정 위치이며, 다른 높이가 한 번에 보존된다는 뜻은 아니에요.
두 방식 모두 화면은 직사각형으로 그려집니다. 그런데 화면 모양만 같다고 공간의 연결 규칙까지 같지는 않아요. 실제 게임에서 사선 이동까지 다루려면 경계에서 이동 방향을 어떻게 바꿀지도 정해야 해요. 이번에는 수평 이동 조건으로 그 부분을 분리했어요. 위치가 다시 나타나는 규칙 하나가 플레이어가 경험하는 공간을 바꿀 수 있어요.
참고한 수학 개념: IMAGINARY · Genaster.
이 글의 생활 상황과 계산 예시는 수학 이야기에서 새로 구성했습니다.
