수정중인 페이지 입니다.
접촉 차단
Available in the Industries Circle
Fusion Industries 프로토타이핑 애드온
이 모듈은 VRShared 샘플에서 사용할 수 있는 하드웨어 캡처 시스템을 확장하여 표면이 팁(펜,...)으로 일부 물체를 차단하는 동시에 손을 잡는 것도 차단합니다.
접촉 로직
BlockableTip
컴포넌트에는 보간 대상 계층 구조(보이는 물체이므로)에 있을 것으로 예상되는 자식 변환인 tip
이 포함되어 있으며, 객체 위치의 실제 팁(차단 "점")을 결정합니다.
BlockableTip
컴포넌트는 blockingLayers
마스크에 레이어가 있고 BlockingSurface
컴포넌트가 있는 객체와의 트리거 접촉을 감지합니다.
그로부터, 감지된 표면 참조에서 tip
의 로컬 좌표에 의해 표면과의 실제 접촉이 'IsInContact
에서 확인됩니다:
BlockingSurface
의positiveProximityThresholds
와negativeProximityThresholds
은 접촉이 효과적인 시기를 결정합니다.x
와y
값은 표면의 크기를 정의하는 반면,z
값은 허용되는 접촉 깊이를 정의합니다(차단 효과는 표면의z
축을 따라 결정됩니다).BlockingSurface
최대 깊이는 팁(및 손잡기)을 어느z
깊이에서 차단해야 하는지 결정합니다
팁과 손 블로킹
블로킹 자체는 FixContactPosition()
메소드에서 발생합니다: 컴포넌트가 팁의 대상 z
위치를 정의하여 깊이 제약을 평가합니다.
그런 다음 실제 BlockableTip
게임 객체 위치를 결정하여 팁이 최종적으로 이 목표 위치에 도달하도록 합니다.
그리고 마지막으로 손을 움직여 잡는 초기 위치를 평가합니다.
이동 계산은 Render()
와 FixedUpdateNetwork()
타이밍이 다릅니다:
Render()
동안 보간 대상이 이동할 때, 팁이 보간 대상의 일부이기 때문에 계산이 비교적 간단합니다.FixedupdateNetwork()
중에는 실제 객체가 이동되는 경우(changeActualPosition
옵션이 true로 설정된 경우), 객체 계층에서 팁의 실제 위치를 먼저 찾아야 합니다.
다운로드
이 애드온의 최신 버전은 애드온 프로젝트에 포함되어 있습니다.
지원하는 토폴로지
- 공유 모드
- 호스트 모드
변경 내역
- 버전 1.0 (2023년 8월 25일) : 최초 릴리즈