← 뒤로:목차 페이지
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에 추가했습니다
경고
Unity 2022.1.0f1 이전 버전과의 호환성이 깨졌습니다. 호환성 문제가 발생하면 최신 버전으로 업데이트해 주십시오.
파괴적인 변경
- Inverse3 및 VerseGrip 는,
ConnectionStateChanged이벤트의 첫 번째 인수로device~을 건네주게 되었습니다ConnectionStateChanged(state, prevState)>ConnectionStateChanged(device, state, prevState)ConnectionStateChangedAsync(state, prevState)>ConnectionStateChangedAsync(device, state, prevState)
- DeviceMapper의
State속성이 읽기 전용으로 변경되었습니다.
새로운 기능
- Inverse3Body 컴포넌트는Inverse3 장치의 본체 방향을 지정된 GameObject에 적용합니다.
- Inverse3:
- 기기 데이터(인스펙터)에는 기기로 전송된
ControlMode그리고 마지막에Force、Position, 또는Angles가 표시됩니다. JointsAngles그리고JointsAngularVelocity。Powered는 기기의 전원이 현재 켜져 있는지 여부를 나타냅니다.PowerSupplyStatusChangedUnity 이벤트는 전원 공급 상태가 바뀔 때마다 발생합니다.Orientation는Inverse3 장치의 현재 방향을 가져옵니다.OrientationChangedAsync이벤트는 바디의 방향이 바뀔 때마다 발생합니다.RequestOrientation()는 본체의 방향을 수동으로 요청합니다.ControlMode는 현재 제어 모드(CursorForce, CursorPosition, JointsTorques, JointsAngles)를 가져옵니다.ControlModeChangedUnity 이벤트는 제어 모드가 바뀔 때마다 발생합니다.ForceOutput、PositionOutput、JointsTorqueOutput、JointsAnglesOutput는 현재 출력을 가져옵니다.Release()는 null 신호를 전송하여 장치 제어를 초기화합니다(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 컴포넌트에 OrientationSettings가 추가되었습니다.
VerseGrip.Orientation는VerseGrip.LocalRotation로 대체합니다.- Inverse3 캐시를 위한 명시적인 Inverse3D데이터 유형:
- 캐시된 상태 속성:
CursorPosition、JointsAngles、JointsAngularVelocity、Orientation、GravityCompensation、StatusPowerSupply、ConfigTorqueScaling - 캐시된 제어 출력
속성:
ControlMode、CursorForceOutput、CursorPositionOutput、JointsTorqueOutput、JointsAnglesOutput。 coordinateConverter는 지정된 좌표계에서 수신 데이터와 송신 데이터를 변환하는 데 사용됩니다.- 캐시는 클라이언트를 구독하여 자동으로 업데이트됩니다.
- 캐시가 업데이트될 때 이벤트를 발생시킵니다.
- 캐시된 상태 속성:
- 3개의 float 멤버
j0、j1、j2을 갖는 명시적인Joint3구조체(JointsSetTorque그리고JointsSetAngles(에서 사용). - VerseGrip 캐시를 위한 명시적인 VerseGripData 유형:
- 캐시된 상태 속성:
Orientation、IsAttached、ButtonCount。 - 캐시된 버튼의 상태.
- 캐시는 클라이언트를 구독하여 자동으로 업데이트됩니다.
coordinateConverter는 지정된 좌표계에서 수신 데이터를 변환하는 데 사용됩니다.- 캐시가 업데이트될 때 이벤트를 발생시킵니다.
- 캐시된 상태 속성:
- CoordinateConverter(
UnityConvert(대안): 디바이스의 좌표계를 Unity의 좌표계로 변환하는 방법을 개별적으로 정의합니다:Inverse3CoordinateConverter는 커서 좌표와 본체의 방향을 변환합니다.VerseGripCoordinateConverter는 VerseGrip의 방향을 전환합니다.Vector3Settings그리고QuaternionSettings구조체는 좌표계 변환 설정을 저장하는 데 사용됩니다.- ‘컴포넌트’ 또는 ‘Assets’ 메뉴에서 ‘Inverse3 ’ 및 ‘VerseGrip’용 기본 좌표 변환 프리셋을 생성합니다.
- Inverse3(팔 앞으로 뻗기 자세) 변환: 팔을 사용자 쪽으로 향하게 하고, LED 아이콘이 측면에 있는 기기를 위한 설정을 적용하는 변환.
- Inverse3(아이콘 전방 방향) 변환: LED 아이콘이 사용자 쪽을 향하고, 팔이 측면에 위치한 기기를 위한 설정을 포함하는 변환입니다.
- VerseGrip(기본값) 변환: 화면을 정면으로 향하게 하고, 사용자 입력 버튼이 상단에 위치한 기기용 변환입니다.
- 클라이언트 연결 는, 기기를 열었을 때
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)로 대체되었습니다
← 목차 페이지로 돌아가기