상호 작용 가능한 개체Interactable object

Interactible 개체

단추는 긴 2D 추상 세계에서 이벤트를 트리거하는 데 사용 되는 비유입니다.A button has long been a metaphor used for triggering an event in the 2D abstract world. 3 차원 혼합 현실 세계에서는 이러한 추상화의 목표로 더 이상 국한 되지 않습니다.In the three-dimensional mixed reality world, we don’t have to be confined to this world of abstraction anymore. 모든 항목은 이벤트를 트리거하는 interactable 개체 일 수 있습니다.Anything can be an interactable object that triggers an event. Interactable 개체는 테이블의 커피에서 midair의 풍선에 이르기까지 모든 것이 될 수 있습니다.An interactable object can be anything from a coffee cup on a table to a balloon in midair. 대화 상자 UI에서와 같은 특정 상황에서는 여전히 기존 단추를 사용 합니다.We still do make use of traditional buttons in certain situation such as in dialog UI. 단추의 시각적 표시는 컨텍스트에 따라 달라 집니다.The visual representation of the button depends on the context.



Interactable 개체의 중요 한 속성Important properties of the interactable object

시각적 신호Visual cues

시각적 표시는 빛에서 받은 신호를 토대로 하 고 시각적 개체에 의해 시각적 표시를 통해 처리 됩니다.Visual cues are sensory cues from light, received by the eye, and processed by the visual system during visual perception. 시각적 시스템은 다양 한 정보, 특히 사람에 게 중요 한 것 이므로 시각적 신호는 전 세계의 정보에 대 한 많은 정보를 표시 합니다.Since the visual system is dominant in many species, especially humans, visual cues are a large source of information in how the world is perceived.

Holographic 개체는 혼합 현실에서 실제 환경과 혼합 되므로 상호 작용할 수 있는 개체를 이해 하기 어려울 수 있습니다.Since the holographic objects are blended with the real-world environment in mixed reality, it could be difficult to understand which objects you can interact with. 사용자 환경에서 interactable 개체의 경우 각 입력 상태에 대해 차별화 된 시각적 표시를 제공 하는 것이 중요 합니다.For any interactable objects in your experience, it's important to provide differentiated visual cues for each input state. 이렇게 하면 사용자가 interactable 하는 환경 부분을 이해 하 고 일관 된 상호 작용 방법을 사용 하 여 사용자를 신뢰할 수 있습니다.This helps the user understand which part of your experience is interactable and makes the user confident by using a consistent interaction method.



먼 상호 작용Far interactions

사용자가 응시, 손 모양 및 동작 컨트롤러의 광선과 상호 작용할 수 있는 개체의 경우 다음과 같은 세 입력 상태에 대해 서로 다른 시각적 신호를 사용 하는 것이 좋습니다.For any objects that user can interact with gaze, hand ray, and motion controller's ray, we recommend having different visual cue for these three input states:

interactibleobject-기본값interactibleobject-states-default
기본 (관찰) 상태Default (Observation) state
개체의 기본 유휴 상태입니다.Default idle state of the object. 커서가 개체에 없습니다.The cursor isn't on the object. 직접 검색 되지 않았습니다.Hand isn't detected.

interactibleobject-상태-대상interactibleobject-states-targeted
대상 (가리키기) 상태Targeted (Hover) state
개체가 응시 커서, 손가락 근접 또는 동작 컨트롤러의 포인터를 대상으로 하는 경우When the object is targeted with gaze cursor, finger proximity or motion controller's pointer. 커서가 개체에 있습니다.The cursor is on the object. 준비가 완료 되었습니다.Hand is detected, ready.

interactibleobject-상태-누름interactibleobject-states-pressed
누름 상태Pressed state
공기 탭 제스처를 사용 하 여 개체를 누르면 손가락을 누르거나 동작 컨트롤러의 선택 단추를 선택 합니다.When the object is pressed with an air tap gesture, finger press or motion controller's select button. 커서가 개체에 있습니다.The cursor is on the object. 손으로 검색 되었습니다.Hand is detected, air tapped.



강조 표시 또는 크기 조정과 같은 기술을 사용 하 여 사용자의 입력 상태를 시각적으로 파악할 수 있습니다.You can use techniques such as highlighting or scaling to provide visual cues for the user’s input state. 혼합 현실에서는 시작 메뉴와 앱 바 단추를 사용 하 여 다양 한 입력 상태를 시각화 하는 예제를 찾을 수 있습니다.In mixed reality, you can find examples of visualizing different input states on the Start menu and with app bar buttons.

Holographic 단추 에서 이러한 상태는 다음과 같습니다.Here's what these states look like on a holographic button:

interactibleobject-기본값interactibleobject-states-default
기본 (관찰) 상태Default (Observation) state

interactibleobject-상태-대상interactibleobject-states-targeted
대상 (가리키기) 상태Targeted (Hover) state

interactibleobject-상태-누름interactibleobject-states-pressed
누름 상태Pressed state



거의 상호 작용 (직접)Near interactions (direct)

HoloLens 2는 개체와 상호 작용할 수 있도록 하는 트레일러 추적 입력을 지원 합니다.HoloLens 2 supports articulated hand tracking input, which allows you to interact with objects. 사용자 의견을 햅 하 고 완벽 하 게 인식 하지 못하는 경우 개체에서 얼마나 멀리 떨어져 있는지 또는 터치 하 고 있는지를 알려 주는 것이 어려울 수 있습니다.Without haptic feedback and perfect depth perception, it can be hard to tell how far away your hand is from an object or whether you're touching it. 개체 상태를 전달 하는 데 충분 한 시각적 신호를 제공 하는 것이 중요 합니다. 특히 해당 개체를 기반으로 하는 사용자의 상태를 전달 하는 것입니다.It's important to provide enough visual cues to communicate the state of the object, in particular the state of your hands based on that object.

시각적 피드백을 사용 하 여 다음 상태를 전달 합니다.Use visual feedback to communicate the following states:

  • Default (관찰): 개체의 기본 유휴 상태입니다.Default (Observation): Default idle state of the object.
  • 가리키기: 손을 홀로그램 근처에 있으면 시각적 개체를 대상으로 하 여 홀로그램을 대상으로 하는 통신으로 변경 합니다.Hover: When a hand is near a hologram, change visuals to communicate that hand is targeting hologram.
  • 거리 및 상호 작용 지점: 홀로그램은 홀로그램 이며, 프로젝션 된 상호 작용 지점을 전달 하 고, 개체에서 손가락으로 얼마나 떨어져 있는지에 대 한 피드백을 디자인 합니다.Distance and point of interaction: As the hand approaches a hologram, design feedback to communicate the projected point of interaction, and how far from the object the finger is
  • 연락처 시작: 터치가 발생 했음을 알리기 위해 시각적 개체 (광원, 색)를 변경 합니다.Contact begins: Change visuals (light, color) to communicate that a touch has occurred
  • Grasped: 개체가 Grasped 경우 시각적 개체 (광원, 색)를 변경 합니다.Grasped: Change visuals (light, color) when the object is grasped
  • 연락처 끝: 터치가 종료 되 면 시각적 개체 (밝은 색)를 변경 합니다.Contact ends: Change visuals (light, color) when touch has ended


가리키기 (Far)Hover (Far)
가리키기 (Far)Hover (Far)
손 모양에 따라 강조 표시 합니다.Highlighting based on the proximity of the hand.

가리키기 (근처)Hover (Near)
가리키기 (근처)Hover (Near)
강조 표시 크기는 손 거리에 따라 변경 됩니다.Highlight size changes based on the distance to the hand.

터치/누르기Touch / press
터치/누르기Touch / press
시각적 개체와 오디오 피드백Visual plus audio feedback.

잡습니다Grasp
잡습니다Grasp
시각적 개체와 오디오 피드백Visual plus audio feedback.




HoloLens 2의 단추 는 서로 다른 입력 상호 작용 상태를 시각화 하는 방법의 예입니다.A button on HoloLens 2 is an example of how the different input interaction states are visualized:

기본값Default
기본값Default

가리키기Hover
가리키기Hover
근접 기반 조명 효과를 표시 합니다.Reveal a proximity-based lighting effect.

터치Touch
터치Touch
Ripple 효과를 표시 합니다.Show ripple effect.

작업 방법Press
작업 방법Press
프런트 판을 이동 합니다.Move the front plate.



HoloLens 2의 "링" 시각 신호The "ring" visual cue on HoloLens 2

HoloLens 2에는 사용자가 깊이를 인식 하는 데 도움이 될 수 있는 추가적인 시각적 표시 큐가 있습니다.On HoloLens 2, there's an extra visual cue, which can help the user's perception of depth. Fingertip 근처의 링은 개체에 가까울수록 fingertip가 위쪽으로 표시 되 고 축소 됩니다.A ring near their fingertip shows up and scales down as the fingertip gets closer to the object. 누름 상태에 도달 하면 링이 결국 점으로 수렴.The ring eventually converges into a dot when the pressed state is reached. 이 시각적 affordance는 사용자가 개체에서 얼마나 떨어져 있는지 이해 하는 데 도움이 됩니다.This visual affordance helps the user understand how far they are from the object.

비디오 루프: 경계 상자에 근접 한 시각적 피드백의 예Video loop: Example of visual feedback based on proximity to a bounding box

spacespace
근접 한 시각적 피드백Visual feedback on hand proximity



오디오 신호Audio cues

직접 상호 작용을 위해 적절 한 오디오 피드백을 통해 사용자 환경을 크게 향상 시킬 수 있습니다.For direct hand interactions, proper audio feedback can dramatically improve the user experience. 오디오 피드백을 사용 하 여 다음 큐를 전달 합니다.Use audio feedback to communicate the following cues:

  • 연락처 시작: 터치 시작 시 소리 재생Contact begins: Play sound when touch begins
  • 연락처 끝: 터치 엔드에서 소리 재생Contact ends: Play sound on touch end
  • 시작: 잡기 시작 시 소리 재생Grab begins: Play sound when grab starts
  • 잡기 종료: 잡기 종료 시 소리 재생Grab ends: Play sound when grab ends


음성 명령Voice commanding

Interactable 개체의 경우 대체 상호 작용 옵션을 지 원하는 것이 중요 합니다.For any interactable objects, it's important to support alternative interaction options. 기본적으로 interactable 되는 모든 개체에 대해 음성 명령 지원을 권장 합니다.By default, we recommend that voice commanding be supported for any objects that are interactable. 검색 가능성을 향상 시키기 위해 가리키기 상태에서 도구 설명을 제공할 수도 있습니다.To improve discoverability, you can also provide a tooltip during the hover state.

Image: 음성 명령에 대 한 도구 설명Image: Tooltip for the voice command

음성 명령



크기 조정 권장 사항Sizing recommendations

모든 interactable 개체의 작업을 쉽게 수행할 수 있도록 하려면 사용자에 게 배치 된 거리를 기준으로 interactable가 최소 크기를 충족 하는지 확인 하는 것이 좋습니다.To ensure all interactable objects can easily be touched, we recommend making sure the interactable meets a minimum size based on the distance it's placed from the user. 시각적 각도는 종종 시각적 호의 각도로 측정 됩니다. 시각적 각도는 사용자의 눈동자와 개체 간의 거리를 기준으로 하며 일정 하 게 유지 되 고, 대상의 실제 크기는 사용자의 거리가 변경 될 때 변경 될 수 있습니다.The visual angle is often measured in degrees of visual arc. Visual angle is based on the distance between the user's eyes and the object and stays constant, while the physical size of the target may change as the distance from the user changes. 사용자의 거리를 기준으로 개체의 필요한 실제 크기를 확인 하려면 다음과 같은 시각적각도 계산기를 사용해 보세요.To determine the necessary physical size of an object based on the distance from the user, try using a visual angle calculator such as this one.

다음은 interactable 콘텐츠의 최소 크기에 대 한 권장 사항입니다.Below are the recommendations for minimum sizes of interactable content.

직접 상호 작용의 대상 크기Target size for direct hand interaction

거리Distance 시야각Viewing angle 크기Size
45 cm45 cm 2 ° 미만no smaller than 2° 1.6 x 1.6 cm1.6 x 1.6 cm

직접 상호 작용의 대상 크기Target size for direct hand interaction
직접 상호 작용의 대상 크기Target size for direct hand interaction


단추의 대상 크기Target size for buttons

직접 상호 작용에 대 한 단추를 만들 때 아이콘 및 잠재적으로 일부 텍스트를 포함할 수 있는 충분 한 공간이 있도록 최소 크기인 3.2 x 3.2 cm을 권장 합니다.When creating buttons for direct interaction, we recommend a larger minimum size of 3.2 x 3.2 cm to ensure that there's enough space to contain an icon and potentially some text.

거리Distance 최소 크기Minimum size
45 cm45 cm 3.2 x 3.2 cm3.2 x 3.2 cm

단추의 대상 크기Target size for the buttons
단추의 대상 크기Target size for the buttons


핸드 레이 또는 응시 상호 작용의 대상 크기Target size for hand ray or gaze interaction

거리Distance 시야각Viewing angle 크기Size
2 m2 m 1 ° 보다 작음no smaller than 1° 3.5 x 3.5 cm3.5 x 3.5 cm

핸드 레이 또는 응시 상호 작용의 대상 크기Target size for hand ray or gaze interaction
핸드 레이 또는 응시 상호 작용의 대상 크기Target size for hand ray or gaze interaction



Unity 용 MRTK (Mixed Reality Toolkit)의 Interactable 개체Interactable object in MRTK (Mixed Reality Toolkit) for Unity

Mrtk 에서는 Interactable 스크립트를 사용 하 여 개체를 다양 한 유형의 입력 상호 작용 상태에 응답할 수 있습니다.In MRTK, you can use the script Interactable to make objects respond to various types of input interaction states. 색, 크기, 재질, 셰이더 등의 개체 속성을 제어 하 여 시각적 상태를 정의할 수 있도록 하는 다양 한 형식의 테마를 지원 합니다.It supports various types of themes that allow you define visual states by controlling object properties such as color, size, material, and shader.

MixedRealityToolkit의 표준 셰이더는 시각적 및 오디오 큐를 만드는 데 도움이 되는 근접 조명 과 같은 다양 한 옵션을 제공 합니다.MixedRealityToolkit's Standard shader provides various options such as proximity light that helps you create visual and audio cues.



참조See also