주요 콘텐츠로 건너뛰기
버전: 2.2.0

색인 페이지로 돌아가기

2.1.1 변경 로그

종속성

  • haply-inverse-c.dll 버전 2.1.1 업데이트( Inverse SDK >= 2.1 필요)
  • 업데이트된 Haply.Inverse.dll 버전 2.1.1
  • com.unity.xr.core-utils 버전 2.3.0 추가
경고

2022.1.0f1 이전 Unity 버전과의 호환성이 깨졌습니다. 호환성 문제가 발생하면 최신 버전으로 업데이트하세요.

획기적인 변화

  • Inverse3 및 VerseGrip 통과 device as ConnectionStateChanged 이벤트 첫 번째 인수
    • ConnectionStateChanged(state, prevState) > ConnectionStateChanged(device, state, prevState)
    • ConnectionStateChangedAsync(state, prevState) > ConnectionStateChangedAsync(device, state, prevState)
  • 디바이스맵퍼 State 속성이 읽기 전용으로 변경되었습니다.

새로운 기능

  • Inverse3Body 컴포넌트는 지정된 게임 오브젝트에 Inverse3 디바이스의 몸체 방향을 적용합니다.
  • Inverse3:
    • 장치 데이터(인스펙터) 표시 ControlMode 그리고 마지막 Force, Position 또는 Angles 를 장치로 전송합니다.
    • JointsAngles 그리고 JointsAngularVelocity.
    • Powered 는 현재 기기에 전원이 공급되고 있는지 여부를 나타냅니다.
    • PowerSupplyStatusChanged 전원 공급 장치 상태가 변경될 때마다 트리거되는 유니티 이벤트입니다.
    • Orientation 는 Inverse3 디바이스의 현재 방향을 가져옵니다.
    • OrientationChangedAsync 몸체 방향이 바뀔 때마다 트리거되는 이벤트입니다.
    • RequestOrientation() 를 클릭하여 본문 방향을 수동으로 요청할 수 있습니다.
    • ControlMode 현재 제어 모드(커서 힘, 커서 위치, 관절 토크, 관절 각도)를 가져옵니다.
    • ControlModeChanged 제어 모드가 변경될 때마다 트리거되는 유니티 이벤트입니다.
    • ForceOutput, PositionOutput, JointsTorqueOutput 그리고 JointsAnglesOutput 현재 출력을 가져옵니다.
    • Release() 널 포스를 전송하여 장치 제어를 재설정합니다( TryResetForce()).
    • CoordinateConverter 를 사용하여 사전 설정 파일 또는 직접 값으로 좌표 변환 설정을 정의할 수 있습니다.
    • ErrorEvent 매핑된 장치에 ClientConnection 오류 이벤트가 추가될 때 (메인 스레드에서) 발생합니다.
  • VerseGrip:
    • CoordinateConverter 를 사용하여 사전 설정 파일 또는 직접 값으로 좌표 변환 설정을 정의할 수 있습니다.
    • ErrorEvent 매핑된 장치에 ClientConnection 오류 이벤트가 추가될 때 (메인 스레드에서) 발생합니다.
  • 디바이스맵퍼:
    • 런타임에 연결된 장치를 매핑합니다.
    • 각 Inverse3 기기에 대한 Inverse3 전원 공급 장치 및 본체 방향을 가져옵니다.
    • DeviceInfoPollingMode 모드 Manual, Once (기본값) 또는 Continuous
    • devicesInfoPollDelay 안전 최소값을 1sec 본문 방향이 요청된 경우 0.5sec 그렇지 않으면
    • 컴포넌트가 활성화된 경우에만 초기화합니다.
    • 필터링된 장치 가져오기:
      • GetInverse3Devices(handedness) 는 지정된 손맛으로 필터링된 Inverse3 디바이스를 검색합니다.
      • GetVerseGripDevices(handedness) 지정된 손맛과 일치하는 Inverse3 장치와 연결된 VerseGrip 장치를 검색합니다. 지정된 손 모양과 일치하는 장치를 검색합니다.
      • GetInverse3(handedness) 는 지정된 손맛과 일치하는 첫 번째 Inverse3 디바이스를 검색합니다.
      • GetInverse3(verseGrip) 는 지정된 VerseGrip 디바이스와 연결된 Inverse3 디바이스를 검색합니다.
      • GetVerseGrip(inverse3) 는 지정된 Inverse3 디바이스와 연결된 VerseGrip 디바이스를 검색합니다.
  • VerseGripCursor 및 Inverse3Body 컴포넌트에 오리엔테이션 설정이 추가되었습니다.
  • VerseGrip.Orientation 대체 VerseGrip.LocalRotation.
  • 명시적 Inverse3D데이터 유형으로 설정합니다:
    • 캐시된 상태 속성: CursorPosition, JointsAngles, JointsAngularVelocity, Orientation,
    • GravityCompensation, StatusPowerSupply, ConfigTorqueScaling
    • 캐시된 제어 출력 속성을 사용합니다: ControlMode, CursorForceOutput, CursorPositionOutput, JointsTorqueOutput, JointsAnglesOutput.
    • coordinateConverter 수신 및 전송된 데이터를 지정된 좌표계로 변환하는 데 사용됩니다.
    • 클라이언트에 캐시 구독을 설정하면 자동으로 업데이트됩니다.
    • 캐시 업데이트 시 이벤트를 발생시킵니다.
  • 명시적 Joint3 트리 부동 소수점 멤버가 있는 구조체 j0, j1 그리고 j2 (사용 대상 JointsSetTorque 그리고 JointsSetAngles).
  • 명시적 VerseGripData 유형으로 설정합니다:
    • 캐시된 상태 속성: Orientation, IsAttached, ButtonCount.
    • 캐시된 버튼 상태입니다.
    • 클라이언트에 캐시 구독을 설정하면 자동으로 업데이트됩니다.
    • coordinateConverter 수신된 데이터를 지정된 좌표계로 변환하는 데 사용됩니다.
    • 캐시 업데이트 시 이벤트를 발생시킵니다.
  • CoordinateConverter (대체 UnityConvert)를 사용하여 장치 좌표 공간을 다음으로 변환하는 방법을 개별적으로 정의할 수 있습니다. Unity 좌표 공간으로 변환하는 방법을 개별적으로 정의할 수 있습니다:
    • Inverse3CoordinateConverter 를 눌러 커서 좌표와 본문 방향을 변환합니다.
    • VerseGripCoordinateConverter 를 눌러 VerseGrip 방향을 변환합니다.
    • Vector3Settings 그리고 QuaternionSettings 좌표계 변환 설정을 저장하는 데 사용되는 구조체입니다.
    • 컴포넌트 또는 에셋 메뉴에서 Inverse3 및 VerseGrip의 기본 좌표 변환기 프리셋을 생성합니다.
      • 커서가 사용자를 향하는 장치에 대한 설정이 있는 역3(커서 전면) 변환기, 커서가 사용자를 향하는 장치, LED의 쪽에 있습니다.
      • LED가 사용자를 향하는 장치 설정이 있는 인버스3(LED 전면) 컨버터의 경우 커서가 쪽을 향하도록 설정합니다.
      • 상단의 버튼으로 화면을 가리키는 장치용 VerseGrip(기본값 ) 변환기입니다.
  • 클라이언트 연결 gets FirmwareVersion, GravityCompensation 그리고 TorqueScaling 을 클릭합니다.
  • 연결 모니터 디스플레이 GravityCompensation, TorqueScaling 그리고 PowerSupply.

버그 수정

  • Inverse3.DeviceStateChanged 와 함께 트리거됩니다. JointsSetTorque 그리고 JointsSetAngles.
  • 연결을 끊은 후 자동으로 장치를 다시 연결합니다.
  • 빌드 종료 시 클라이언트 폴링 스레드를 정리합니다.
  • 버그 수정 및 안정성 개선.
  • 씬 언로드/로드 후 디바이스 매핑 수정

사용 중단

  • ClientConnection.Configuration.HapticFrequencyHz 로 대체 HapticPollFrequency
  • ClientConnection.Configuration.PollDelayNs 로 대체 HapticPollDelayNs
  • DeviceBehaviour.ConnectionStateChangedAsync 다음 주요 릴리스에서 제거됩니다.
  • Inverse3.Position 로 대체 Inverse3.CursorPosition
  • Inverse3.LocalPosition 로 대체 Inverse3.CursorLocalPosition
  • Inverse3.TryResetForce() 로 대체 Release()
  • VerseGrip.LocalRotation 로 대체 VerseGrip.Orientation
  • JointsSetTorque(Vector3) 로 대체 JointsSetTorques(Joint3)
  • JointsSetTorque(float, float, float) 로 대체 JointsSetTorques(float, float, float)
  • JointsSetAngles(Vector3) 로 대체 JointsSetAngles(Joint3)

색인 페이지로 돌아가기