This document is about: FUSION 2
SWITCH TO

MX Ink 통합

Fusion XR 프로토타이핑 애드온

이 애드온은 Logitech MX Ink 펜을 Fusion 프로젝트에 통합하는 방법을 보여줍니다.

또한 특정 오류 상황(예: Meta SDK가 설치되지 않았거나, 펜이 사용 불가하거나, 일부 컴포넌트의 서브클래싱이 필요한 경우 등)을 처리할 수 있도록 수정된 Unity 통합 패키지가 포함되어 있습니다.

구성 요소

HardwareMXPen

HardwareMXPen 컴포넌트는 Logitech 유니티 통합 패키지에 포함된 VrStylusHandler 클래스를 약간 수정한 버전입니다.

주요 기능은 에디터 내에서 MX Ink 펜 존재를 강제로 에뮬레이션 할 수 있게 해주는 것입니다. 두 가지 옵션을 제공합니다:

  • forceRightHandPen: true로 설정하면, 실제 하드웨어와 관계없이 에디터 내 오른쪽 컨트롤러가 MX Ink 펜으로 인식됩니다.

  • forcedHandPenIsAController: 기본적으로 팁 압력 입력은 컨트롤러의 x축 스틱 위치에 대응합니다. 압력이 없을 때 값이 1, 최대 압력 시 값이 0이 됩니다. true로 설정하면 이 논리가 반전되어, 컨트롤러를 쉴 때 무작정 그림을 그리지 않게 할 수 있습니다. false로 설정하면 기본 논리가 적용되어 MX Ink 펜이 예상대로 동작합니다.

HardwareMXPen은 로컬 펜 감지를 위해 하드웨어 리그에 배치해야 합니다.
VrStylusHandler처럼 left_touch_controllerright_touch_controller 참조가 필요하며, 펜이 감지되면 컨트롤러는 숨겨집니다.

NetworkMXPen

NetworkMXPen 클래스는 LineDrawing 애드온의 NetworkLineDrawer를 제어합니다.

현재 구현 로직은 다음과 같습니다:

  • MX Ink 펜의 압력 또는 팁 버튼이 눌리면 드로잉 포인트를 추가하여 필요한 경우 드로잉/라인을 시작합니다.
  • 두 버튼 모두 압력이 0이 되면 현재 라인을 종료합니다.
  • 압력 버튼 인접 버튼이 눌리면 현재 드로잉을 종료합니다.
  • 스타일러스가 감지되지 않으면 드로잉을 종료합니다.

또한 이 클래스는 MX Ink 펜이 손을 대체할 때 네트워크 리그에서 숨겨야 할 파트를 제어합니다.
NetworkHand 컴포넌트를 사용할 경우, automaticallyDetectNetworkHands 속성을 true로 설정하면 이 구성이 자동화됩니다.

의존성

데모

데모 씬은 Assets\Photon\FusionAddons\MXInkIntegration\Demo\ 폴더에 있습니다.

이 데모 씬을 테스트하려면 프로젝트에 Meta 패키지를 설치해야 합니다.
또는 Meta XR 통합 프로젝트를 사용하여 직접 테스트할 수 있습니다.

다운로드

이 애드온의 최신 버전은 무료 XR 애드온 프로젝트에 포함되어 있습니다.

지원 토폴로지

  • 공유 모드

변경 기록

  • 버전 2.0.2: 의존성 검사 수정
  • 버전 2.0.1:
    • 프리팹에 콜라이더 추가 및 BlockingContact 호환성 관련 수정
    • 피드백 클래스 추가
  • 버전 2.0.0: 첫 번째 릴리스
Back to top