FingerFeatureStateThresholds

VR/Oculus Integration 2023. 12. 14. 15:56
반응형

 

FingerFeatureStateThresholds는 각 손가락 기능의 상태 임계값을 정의하는 ScriptableObject입니다.

상태 임계값은 손가락이 상태 간에 전환되는 시기를 결정하는 경계 집합입니다.

 

예를 들어 컬 기능에는 열림, 중립, 닫힘의 3가지 상태가 있습니다.

따라서 컬의 상태 임계값은 각도(도)를 사용하여 손가락의 상태가 열림에서 중립으로, 중립에서 닫힘으로 또는 그 반대로 변경되는 시기를 정의합니다.

 

Curl

손가락이나 엄지손가락의 위쪽 두 관절이 얼마나 구부러졌는지 나타냅니다. 이 기능은 근위(너클) 관절을 고려하지 않습니다.

 

Open (열림): 손가락이 완전히 곧게 펴집니다

Neutral : 마치 커피 머그를 감싸듯이 손가락이 안쪽으로 약간 구부러져 있습니다.

Closed  (사진): 손가락 끝이 손바닥에 거의 닿을 정도로 안쪽으로 촘촘하게 말려 있습니다.

 

 

Curl Closed

 

 

 

 

Interaction SDK는 DefaultSettings/PoseDetection 아래에 네 가지 기본 상태 임계값 세트를 제공합니다.

 

 

  • DefaultThumbFeatureStateThresholds (for the thumb)
  • IndexFingerFeatureStateThresholds (for the Index finger)
  • MiddleFingerFeatureStateThresholds (for the Middle finger)
  • DefaultFingerFeatureStateThresholds (for the Ring & Pinky fingers)

 

 

엄지 손가락의 컬 상태 임계값입니다. 컬의 경우 값은 각도(도)입니다.

 

손가락의 위쪽 2개 관절을 나타내는 볼록한 각도(도)입니다. 손가락 컬이 닫힐수록 각도가 증가합니다.

 

Min Time In State

기능이 실제로 해당 상태로 변경되기 전에 값이 새 상태에 있어야 하는 기간입니다. 이는 전환 가장자리에서 급격한 깜박임을 방지하기 위한 것입니다. 이 값은 모든 기능에 적용됩니다.

 

 

 

Expected Value Range

평균적인 인간이 달성할 수 있는 동작 범위를 나타내는 대략적인 가이드입니다.

 

Midpoint

상태가 A > B(또는 B > A)에서 전환되는 값입니다.

 

With 

전환이 발생할 수 있을 때까지 값이 중간점을 얼마나 초과해야 하는지입니다. 이는 전환 가장자리에서 급격한 깜박임을 방지하기 위한 것입니다.

 

 

 

 

 

 

두 각을 합친거 같기도 하고...

 

 

이 상태가 Close니깐..

최소 90 + 90 (180)이란말야..

 

범위가 180 ~ 260 이라는건데 

 

 

260은 어떻게 만들어 지는거지..

 

위쪽 2 관절을 90도씩 접으면 180도 

 

 

 

270도 

 

 

위쪽 두 관절중 아무거나 조금 굽히면 260도 

 

새끼손가락은 내생각에는 불가능

 

 

응 다 됨 


 

FingerFeatureStateThresholds Example

 

두 상태 사이의 전환이 주어지면 A <> B: 현재 상태가 "A"인 경우 "B"로 전환하려면 각도가 해당 쌍의 중간점보다 "최소 상태 상태 시간" 초 동안 최소 (너비 / 2.0) 이상 높아야 합니다.

 

현재 상태가 "B"인 경우 "A"로 전환하려면 각도가 해당 쌍의 중간점 아래로 "최소 상태 유지 시간" 초 동안 최소한 (너비 / 2.0) 낮아야 합니다.

 

 

 

 

 

 

반대로 195보다 크면 Neutral상태임 

 

So for Curl, to transition:

  • From Open > Neutral: value must be above 195 for 0.0222 seconds
  • From Neutral > Open: value must be below 185 for 0.0222 seconds
  • From Neutral > Closed: value must be above 210 for 0.0222 seconds
  • From Closed > Neutral: value must be below 200 for 0.0222 seconds

Neutural : 195보다 크고 210보다 작음

 

Closed : 210보다 클경우

 

Open  185 보다 작을 경우

 

 

 

 

 

 

 


참고 

https://developer.oculus.com/documentation/unity/unity-isdk-hand-pose-detection/#finger-features

https://developer.oculus.com/documentation/unity/unity-isdk-hand-pose-detection/

https://developer.oculus.com/documentation/unity/unity-isdk-hand-pose-detection/#finger-feature-state-thresholds

반응형

'VR > Oculus Integration' 카테고리의 다른 글

Grabbable (Two Grab Transformers)  (0) 2023.12.19
Grabbable  (0) 2023.12.18
Unity VR Build a Custom Hand Pose (Oculus Integration SDK)  (0) 2023.12.14
Create Snap Interactions  (0) 2023.12.12
One/Two Grab Free Transformer  (0) 2023.12.11
: