THREE.Raycaster는 2D 화면 좌표를 3D 씬 안의 직선으로 바꿔주는 도구입니다. raycaster.setFromCamera(pointerNDC, camera)로 카메라 위치에서 그 방향으로 광선을 세팅하고, raycaster.intersectObjects(objects)를 부르면 광선과 부딪힌 오브젝트들을 카메라와 가까운 순서로 정렬해 돌려줍니다.
포인터 좌표는 픽셀이 아니라 정규화 장치 좌표(NDC, -1~1)로 넘겨야 합니다 — x는 (clientX/너비)*2-1, y는 -(clientY/높이)*2+1로 변환합니다. y축 부호가 반대인 걸 자주 놓칩니다.
카드 미리보기는 pointer-events가 꺼져 있어 실제 마우스 입력을 받을 수 없으므로, 이 데모는 규칙대로 가상의 포인터가 리사주 곡선을 그리며 격자를 스캔하다가 실제 pointermove 이벤트가 오면 그쪽으로 제어권을 넘깁니다. 부딪힌 박스는 색이 바뀌고 살짝 커집니다.
언제 쓰나
3D 씬에서 오브젝트를 클릭·호버로 선택해야 할 때 (에디터, 제품 커스터마이저, 게임 UI).