Summary
- 2012년 Pointer Lock 초안은 시스템 포인터를 숨기고 마우스 이벤트를 한 요소에 모아, 화면 가장자리에 막히지 않는 상대 이동을 웹 게임에 제공했다.
- 2016년 W3C 권고안은 브라우저의 기본 잠금 해제 동작을 항상 남기도록 했다. 키보드에는 Esc를 권장하며, 사람이 그 방법으로 나온 뒤에는 페이지가 다시 잠그기 전에 새로운 참여 동작이 필요하다.
1인칭 게임에서 오른쪽을 계속 돌아보자. 일반 커서는 화면 오른쪽 끝에 먼저 도착하고, 카메라는 손보다 일찍 멈춘다. 3차원 모형을 돌리는 작업도 드래그가 테두리에서 끊기면 반 바퀴가 아쉽다. 2012년 5월 W3C 첫 공개 초안은 커서를 감추고 한 요소가 이벤트를 받게 하며, 위치 대신 마우스가 움직인 양을 전달했다. 모니터 크기를 늘리지 않고도 시점은 계속 돌 수 있게 됐다.
이는 단순히 드래그 시간을 늘린 기능이 아니다. 기존의 마우스 캡처는 버튼을 놓으면 끝난다. Pointer Lock은 버튼을 누르지 않아도 유지되며 커서의 화면 좌표를 요구하지 않는다. movementX와 movementY가 이동량을 보내는 동안 화면 좌표는 고정된다. 벽에 부딪히던 화살표가 게임 속 인물의 목이 된 셈이다.
마술에는 청구서가 따라온다. 커서가 사라지고 게임이 이벤트를 가져가면 사람이 브라우저 버튼이나 다른 창으로 옮겨 가는 평소 길도 막힌다. 2012년 초안의 보안 부분은 사용자가 나온 뒤 페이지가 마우스를 계속 다시 붙잡을 수 있다는 위험을 짚었다. 브라우저는 페이지가 가로챌 수 없는 탈출 동작을 마련해야 했다. 게임에 빌려준 마우스의 소유권은 결국 사람에게 있다.
2016년 10월 W3C 권고안은 거래 조건을 명확히 했다. 기본 잠금 해제 동작은 항상 가능해야 하고, 키보드라면 Esc가 권장된다. 대상 요소가 사라지거나 탭 또는 창이 초점을 잃으면 잠금도 끝난다. pointerlockchange는 상태가 바뀐 사실을, pointerlockerror는 실패를 알린다. 게임은 그 신호에 맞춰 보통 메뉴를 되돌릴 수 있다. 화면 확대 소프트웨어에는 잠긴 동안 키보드로 확대 위치에 접근할 길이 필요하다는 설명도 붙었다.
진짜 묘수는 두 번째 잠금이다. 첫 잠금과, 사람이 브라우저의 기본 탈출 동작으로 나온 뒤의 잠금에는 새로운 참여 동작이 필요하다. 반면 게임이 exitPointerLock()을 호출해 메뉴로 잠깐 나갔다면 별도 동작 없이 다시 들어갈 수 있다. 사람의 탈출은 거부이고, 게임의 내부 전환은 변속이다. 둘을 같게 취급하면 Esc는 출구가 아니라 회전문이 된다.
2026년 2월 Pointer Lock 2.0 초안은 지원 환경에서 운영체제의 마우스 가속을 거치지 않는 입력을 요청하는 unadjustedMovement와 Promise를 반환하는 요청을 담는다. 같은 손짓이 가속 때문에 다른 각도의 회전이 되면 정확한 조작은 흔들린다. 짧은 사용자 활성화 기간과 전체 화면 요청 순서도 정리한다. W3C의 2.0 발표 이력은 2016년부터 2026년까지 이어진다. 조그만 화살표 하나를 지우는 데 붙은 긴 회의록이다.
이제 플레이어는 화면 끝을 지나 가상 방 전체를 둘러볼 수 있다. 쉬고 싶으면 마우스를 현실의 책상으로 돌려놓는다. 시점의 경계는 사라졌지만 사람의 결정권은 남았다.
회원 브리핑
프로필 심층 컨텍스트
올바른 멤버십 등급으로 로그인하면 전체 브리핑과 출처 노트를 볼 수 있습니다.
Strategic Circle 전용
Strategic Circle
모든 독자에게 공개됩니다. 가입 후 로그인하면 프로필 브리핑를 열람할 수 있습니다.
Strategic Circle 가입하기Leadership Alliance 전용
Leadership Alliance
자격을 갖춘 IP 자산 소유자 및 운영진을 위한 콘텐츠입니다. 로그인하면 Leadership Alliance 브리핑을 열람할 수 있습니다.
Leadership Alliance 가입하기





