KR20250023244A - Method for supporting object selection in virtual environment and electronic device supporting the same - Google Patents

Method for supporting object selection in virtual environment and electronic device supporting the same Download PDF

Info

Publication number
KR20250023244A
KR20250023244A KR1020230170845A KR20230170845A KR20250023244A KR 20250023244 A KR20250023244 A KR 20250023244A KR 1020230170845 A KR1020230170845 A KR 1020230170845A KR 20230170845 A KR20230170845 A KR 20230170845A KR 20250023244 A KR20250023244 A KR 20250023244A
Authority
KR
South Korea
Prior art keywords
electronic device
virtual
input device
affordance
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
KR1020230170845A
Other languages
Korean (ko)
Inventor
안소민
강동희
이태하
이형건
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to PCT/KR2024/011901 priority Critical patent/WO2025034055A1/en
Publication of KR20250023244A publication Critical patent/KR20250023244A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/002Specific input/output arrangements not covered by G06F3/01 - G06F3/16
    • G06F3/005Input arrangements through a video camera
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating three-dimensional [3D] models or images for computer graphics
    • G06T19/006Mixed reality

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Various embodiments of the present disclosure provide a method for supporting object selection in a virtual environment and an electronic device supporting the same. An electronic device according to an embodiment of the present disclosure may include a display and a processor. The processor according to an embodiment may operate to recognize an input device in a virtual environment. The processor may be configured to determine a virtual space for determining a target virtual object based on an attribute of the input device. The processor according to an embodiment may operate to determine the target virtual object based on the virtual space. The processor according to an embodiment may operate to generate affordances respectively corresponding to the target virtual object. The processor according to an embodiment may operate to display the affordance according to a specified arrangement method. Various embodiments are possible.

Description

가상 환경에서 객체 선택을 지원하는 방법 및 이를 지원하는 전자 장치{METHOD FOR SUPPORTING OBJECT SELECTION IN VIRTUAL ENVIRONMENT AND ELECTRONIC DEVICE SUPPORTING THE SAME}METHOD FOR SUPPORTING OBJECT SELECTION IN VIRTUAL ENVIRONMENT AND ELECTRONIC DEVICE SUPPORTING THE SAME

본 개시의 실시예는 가상 환경에서 객체 선택을 지원할 수 있는 방법 및 이를 지원하는 전자 장치를 제공한다.Embodiments of the present disclosure provide a method capable of supporting object selection in a virtual environment and an electronic device supporting the same.

최근 가상 현실(VR, virtual reality), 증강 현실(AR, augmented reality) 및/또는 혼합 현실(MR, mixed reality)과 같은 확장 현실(XR, expended reality) 기술에 대한 연구 및 개발이 진행되고 있다. 최근에는 VR, AR 및/또는 MR 기술을 다양한 분야(예: 엔터테인먼트(entertainment), 인포테인먼트(infotainment), 스마트 홈(smart home) 및/또는 스마트 팩토리(smart factory) 분야)에서 다양하게 활용하고 있으며, 이를 위한 전자 장치의 하드웨어적인 부분 및/또는 소프트웨어적인 부분이 지속적으로 연구 및 개발되고 있다.Recently, research and development are being conducted on expanded reality (XR) technologies such as virtual reality (VR), augmented reality (AR), and/or mixed reality (MR). Recently, VR, AR, and/or MR technologies have been utilized in various fields (e.g., entertainment, infotainment, smart home, and/or smart factory), and hardware and/or software parts of electronic devices for this purpose are continuously being researched and developed.

예를 들면, 웨어러블 전자 장치는 단독(예: 스탠드얼론(standalone) 방식) 또는 적어도 둘 이상의 장치들 간에 서로 연동(예: 테더드(tethered) 방식)하여, AR 서비스에 관련된 어플리케이션을 통해 현실 세계 위에 다양한 디지털 컨텐츠(digital contents)(예: 가상 이미지)를 겹쳐서(또는 오버레이(overlay)하여) 웨어러블 전자 장치의 디스플레이를 통해 하나의 영상으로 제공할 수 있다. 예를 들면, 최근에는 전자 장치(예: 스마트 폰)와 웨어러블 전자 장치를 연결하고, 전자 장치에 의해 생성되는 가상 컨텐츠를 웨어러블 전자 장치의 디스플레이를 통해 제공하는 테더드 AR 방식 및 전자 장치와 연결 없이 웨어러블 전자 장치가 단독으로 가상 컨텐츠를 생성하여 디스플레이를 통해 제공하는 스탠드얼론 AR 방식과 같은 AR 환경을 구현하고 있다.For example, a wearable electronic device can operate independently (e.g., in a standalone manner) or in conjunction with at least two or more devices (e.g., in a tethered manner), and can provide a single image through the display of the wearable electronic device by overlaying various digital contents (e.g., virtual images) on the real world through an application related to the AR service. For example, recently, AR environments such as the tethered AR method, in which an electronic device (e.g., a smartphone) and a wearable electronic device are connected and virtual contents generated by the electronic device are provided through the display of the wearable electronic device, and the standalone AR method, in which the wearable electronic device generates virtual contents on its own without being connected to the electronic device and provides them through the display, have been implemented.

이와 같이, 최근의 AR 서비스의 기술 발전으로, AR 서비스를 이용하는 사용자가 증가하고 있으며, 그에 따른 사용자 니즈(needs)도 증가하고 있다. 예를 들면, AR 서비스를 이용하는 사용자는, AR 환경의 컨텐츠를 보다 정확하고 직관적으로 편리하게 선택 및 표시하고자 하는 요구가 증가하고 있다.In this way, with the recent technological advancement of AR services, the number of users using AR services is increasing, and the user needs are also increasing accordingly. For example, users using AR services are increasingly demanding to select and display content in the AR environment more accurately, intuitively, and conveniently.

상술한 정보는 본 개시에 대한 이해를 돕기 위한 목적으로 하는 배경 기술(related art)로 제공될 수 있다. 상술한 내용 중 어느 것도 본 개시와 관련된 종래 기술(prior art)로서 적용될 수 있는지에 대하여 어떠한 주장이나 결정이 제기되지 않는다.The above information may be provided as related art for the purpose of assisting in understanding the present disclosure. No claim or determination is made as to whether any of the above is applicable as prior art related to the present disclosure.

본 개시의 일 실시예에서는, 가상 환경에서 객체 선택을 지원하는 방법 및 이를 지원하는 전자 장치를 제공한다.In one embodiment of the present disclosure, a method for supporting object selection in a virtual environment and an electronic device supporting the same are provided.

본 개시의 일 실시예에서는, 가상 환경에서 인식하는 입력 장치에 기반하여 가상 환경 내의 객체를 쉽게 선택할 수 있는 어포던스(또는 가이드 핸들)를 제공하는 방법 및 이를 지원하는 전자 장치를 제공한다.In one embodiment of the present disclosure, a method for providing an affordance (or guide handle) for easily selecting an object in a virtual environment based on an input device recognized in the virtual environment and an electronic device supporting the same are provided.

본 개시의 일 실시예에서는, 가상 환경에서 객체 선택을 지원하는 어포던스의 표시 위치 및 어포던스의 유형을 결정하는 방법 및 이를 지원하는 전자 장치를 제공한다.In one embodiment of the present disclosure, a method for determining a display position and type of affordance for supporting object selection in a virtual environment and an electronic device supporting the same are provided.

본 문서에서 이루고자 하는 기술적 과제는 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical problems to be achieved in this document are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art to which the present invention belongs from the description below.

본 개시의 일 실시예에 따른 전자 장치는, 디스플레이 및 상기 디스플레이와 작동적으로(operatively) 연결된 프로세서를 포함할 수 있다. 일 실시예에 따른 상기 프로세서는, 가상 환경에서 입력 장치를 인식하도록 동작할 수 있다. 일 실시예에 따른 상기 프로세서는, 상기 입력 장치의 속성에 기반하여 대상 가상 객체를 결정하기 위한 가상 공간을 결정하도록 동작할 수 있다. 일 실시예에 따른 상기 프로세서는, 상기 가상 공간에 기반하여 상기 대상 가상 객체를 판단하도록 동작할 수 있다. 일 실시예에 따른 상기 프로세서는, 상기 대상 가상 객체에 각각 대응하는 어포던스를 생성하도록 동작할 수 있다. 일 실시예에 따른 상기 프로세서는, 상기 어포던스를 지정된 배치 방식에 따라 표시하도록 동작할 수 있다.An electronic device according to one embodiment of the present disclosure may include a display and a processor operatively connected with the display. The processor according to one embodiment may be operable to recognize an input device in a virtual environment. The processor according to one embodiment may be operable to determine a virtual space for determining a target virtual object based on a property of the input device. The processor according to one embodiment may be operable to determine the target virtual object based on the virtual space. The processor according to one embodiment may be operable to generate an affordance corresponding to each of the target virtual objects. The processor according to one embodiment may be operable to display the affordance according to a specified arrangement method.

본 개시의 일 실시예에 따른 전자 장치의 동작 방법은, 가상 환경에서 입력 장치를 인식하는 동작을 포함할 수 있다. 상기 동작 방법은, 상기 입력 장치의 속성에 기반하여 대상 가상 객체를 결정하기 위한 가상 공간을 결정하는 동작을 포함할 수 있다. 상기 동작 방법은, 상기 가상 공간에 기반하여 상기 대상 가상 객체를 판단하는 동작을 포함할 수 있다. 상기 동작 방법은, 상기 대상 가상 객체에 각각 대응하는 어포던스를 생성하는 동작을 포함할 수 있다. 상기 동작 방법은, 상기 어포던스를 지정된 배치 방식에 따라 표시하는 동작을 포함할 수 있다.A method of operating an electronic device according to one embodiment of the present disclosure may include an operation of recognizing an input device in a virtual environment. The method of operating may include an operation of determining a virtual space for determining a target virtual object based on a property of the input device. The method of operating may include an operation of determining the target virtual object based on the virtual space. The method of operating may include an operation of generating an affordance corresponding to each of the target virtual objects. The method of operating may include an operation of displaying the affordance according to a specified arrangement method.

상기와 같은 과제를 해결하기 위하여 본 개시의 다양한 실시예들에서는, 상기 방법을 프로세서에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체를 포함할 수 있다.In order to solve the above-mentioned problem, various embodiments of the present disclosure may include a computer-readable recording medium having recorded thereon a program for executing the method on a processor.

일 실시예에 따르면, 하나 이상의 프로그램들을 저장하는 비 일시적(non-transitory) 컴퓨터 판독 가능 저장 매체(또는 컴퓨터 프로그램 프로덕트(product))가 기술된다. 일 실시예에 따르면, 하나 이상의 프로그램들은, 전자 장치의 프로세서에 의해 실행될 시, 가상 환경에서 입력 장치를 인식하는 동작, 상기 입력 장치의 속성에 기반하여 대상 가상 객체를 결정하기 위한 가상 공간을 결정하는 동작, 상기 가상 공간에 기반하여 상기 대상 가상 객체를 판단하는 동작, 상기 대상 가상 객체에 각각 대응하는 어포던스를 생성하는 동작, 및 상기 어포던스를 지정된 배치 방식에 따라 표시하는 동작을 수행하는 명령어를 포함할 수 있다.According to one embodiment, a non-transitory computer-readable storage medium (or a computer program product) storing one or more programs is described. According to one embodiment, the one or more programs may include instructions that, when executed by a processor of an electronic device, perform operations of recognizing an input device in a virtual environment, determining a virtual space for determining a target virtual object based on a property of the input device, determining the target virtual object based on the virtual space, generating an affordance corresponding to each of the target virtual objects, and displaying the affordance according to a specified arrangement method.

본 개시의 적용 가능성의 추가적인 범위는 이하의 상세한 설명으로부터 명백해질 것이다. 그러나 본 개시의 사상 및 범위 내에서 다양한 변경 및 수정은 당업자에게 명확하게 이해될 수 있으므로, 상세한 설명 및 본 개시의 바람직한 실시예와 같은 특정 실시예는 단지 예시로 주어진 것으로 이해되어야 한다.Further scope of the applicability of the present disclosure will become apparent from the detailed description below. However, since various changes and modifications within the spirit and scope of the present disclosure will become apparent to those skilled in the art, it should be understood that the detailed description and specific embodiments, such as the preferred embodiments of the present disclosure, are given by way of example only.

본 개시의 일 실시예에 따른 전자 장치, 그 동작 방법 및 기록 매체에 따르면, 가상 환경에서 인식하는 입력 장치에 기반하여 가상 환경 내의 객체를 용이하게 선택할 수 있는 어포던스(또는 가이드 핸들)를 제공할 수 있다. 일 실시예에 따르면, 밀집된 객체를 포함하는 가상 환경에서 밀집된 객체들 중 사용자가 원하는 객체를 정확하고 손쉽게 선택하도록 지원할 수 있다. 일 실시예에 따르면, 가상 환경에서 객체 선택 시 객체 형태를 유지하고, 사용자 입력에 의해 선택 가능 범위에 포함된 객체를 기준으로 어포던스를 제공하여, 사용자의 가상 환경 사용에 대한 몰입감을 유지하도록 할 수 있다. 일 실시예에 따르면, 가상 서비스(예: AR 서비스 및/또는 VR 서비스)의 사용에 따른 사용자 니즈(needs)를 충족하고, 사용자에게 새로운 사용자 경험(UX, user experience)을 제공할 수 있다.According to an electronic device, an operation method thereof, and a recording medium according to one embodiment of the present disclosure, an affordance (or a guide handle) for easily selecting an object in a virtual environment can be provided based on an input device recognized in the virtual environment. According to one embodiment, in a virtual environment including dense objects, it is possible to support a user to accurately and easily select a desired object among dense objects. According to one embodiment, when selecting an object in a virtual environment, the shape of the object is maintained, and an affordance is provided based on an object included in a selectable range by a user input, so as to maintain a user's sense of immersion in using the virtual environment. According to one embodiment, user needs according to the use of a virtual service (e.g., AR service and/or VR service) can be satisfied, and a new user experience (UX) can be provided to the user.

이 외에, 본 문서를 통해 직접적 또는 간접적으로 파악되는 다양한 효과들이 제공될 수 있다. 본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.In addition, various effects that can be directly or indirectly understood through this document can be provided. The effects that can be obtained from this disclosure are not limited to the effects mentioned above, and other effects that are not mentioned can be clearly understood by those skilled in the art to which this disclosure belongs from the description below.

도면 설명과 관련하여, 동일 또는 유사한 구성 요소에 대해서는 동일 또는 유사한 참조 부호가 사용될 수 있다.
도 1은 다양한 실시예들에 따른 네트워크 환경 내의 전자 장치의 블록도이다.
도 2는 일 실시예에 따른 전자 장치의 일 예를 도시하는 도면이다.
도 3은 일 실시예에 따른 전자 장치의 내부 구조의 일 예를 도시하는 도면이다.
도 4a는 일 실시예에 따른 전자 장치와 다른 전자 장치 간의 네트워크 환경을 도시한 도면이다.
도 4b는 일 실시예에 따른 전자 장치에서 가상 환경을 표시하는 예를 도시하는 도면이다.
도 5는 일 실시예에 따른 전자 장치의 구성을 개략적으로 도시하는 도면이다.
도 6은 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 7a, 도 7b, 도 7c, 및 도 7d는 본 개시의 일 실시예에 따른 전자 장치에서 가상 객체와 연관지어 어포던스를 제공하는 동작 예를 도시하는 도면들이다.
도 8은 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 9는 본 개시의 일 실시예에 따른 전자 장치에서 다양한 입력 장치 별 인디케이터의 예를 도시하는 도면이다.
도 10은 본 개시의 일 실시예에 따른 전자 장치에서 생성하는 가상 공간 및 입력 장치에 대응하는 인디케이터의 예를 도시하는 도면이다.
도 11은 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 12는 본 개시의 일 실시예에 따른 전자 장치에서 입력 장치에 대응하는 가상 공간을 제공하는 예를 도시하는 도면이다.
도 13은 본 개시의 일 실시예에 따른 전자 장치에서 제공하는 입력 장치 별 분해능에 대한 예를 도시하는 도면이다.
도 14는 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 15는 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 16a 및 도 16b는 본 개시의 일 실시예에 따른 전자 장치에서 대상 가상 객체를 결정하는 예를 도시하는 도면들이다.
도 17은 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 18은 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 19a, 도 19b 및 도 19c는 본 개시의 일 실시예에 따른 전자 장치에서 어포던스를 제공하는 예를 도시하는 도면들이다.
도 20은 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 21a, 도 21b 및 도 21c는 본 개시의 일 실시예에 따른 전자 장치에서 어포던스의 크기를 결정하는 예를 도시하는 도면들이다.
도 22a 및 도 22b는 본 개시의 일 실시예에 따른 전자 장치에서 가상 객체와 연관지어 어포던스를 제공하는 동작 예를 도시하는 도면들이다.
도 23a, 도 23b 및 도 23c는 본 개시의 일 실시예에 따른 전자 장치에서 가상 객체와 연관지어 어포던스를 제공하는 동작 예를 도시하는 도면들이다.
도 24a, 도 24b 및 도 24c는 본 개시의 일 실시예에 따른 전자 장치에서 가상 객체와 연관지어 어포던스를 제공하는 동작 예를 도시하는 도면들이다.
도 25a 및 도 25b는 개시의 일 실시예에 따른 전자 장치에서 가상 객체와 연관지어 어포던스를 제공하는 동작 예를 도시하는 도면들이다.
도 26은 본 개시의 일 실시예에 따른 전자 장치에서 어포던스를 제공하는 동작 예를 도시하는 도면이다.
도 27a, 도 27b 및 도 27c는 본 개시의 일 실시예에 따른 전자 장치에서 가상 객체와 연관지어 어포던스를 제공하는 동작 예를 도시하는 도면들이다.
도 28a 및 도 28b는 본 개시의 일 실시예에 따른 전자 장치에서 가상 객체와 연관지어 어포던스를 제공하는 동작 예를 도시하는 도면들이다.
In connection with the drawing description, the same or similar reference numerals may be used for identical or similar components.
FIG. 1 is a block diagram of an electronic device within a network environment according to various embodiments.
FIG. 2 is a diagram illustrating an example of an electronic device according to one embodiment.
FIG. 3 is a diagram illustrating an example of the internal structure of an electronic device according to one embodiment.
FIG. 4A is a diagram illustrating a network environment between an electronic device and another electronic device according to one embodiment.
FIG. 4b is a diagram illustrating an example of displaying a virtual environment in an electronic device according to one embodiment.
FIG. 5 is a diagram schematically illustrating the configuration of an electronic device according to one embodiment.
FIG. 6 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.
FIGS. 7A, 7B, 7C, and 7D are diagrams illustrating examples of operations for providing affordance in association with a virtual object in an electronic device according to one embodiment of the present disclosure.
FIG. 8 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.
FIG. 9 is a diagram illustrating examples of indicators for various input devices in an electronic device according to one embodiment of the present disclosure.
FIG. 10 is a diagram illustrating an example of a virtual space generated by an electronic device and an indicator corresponding to an input device according to one embodiment of the present disclosure.
FIG. 11 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.
FIG. 12 is a diagram illustrating an example of providing a virtual space corresponding to an input device in an electronic device according to one embodiment of the present disclosure.
FIG. 13 is a diagram illustrating an example of resolution for each input device provided by an electronic device according to one embodiment of the present disclosure.
FIG. 14 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.
FIG. 15 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.
FIGS. 16A and 16B are diagrams illustrating examples of determining a target virtual object in an electronic device according to one embodiment of the present disclosure.
FIG. 17 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.
FIG. 18 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.
FIGS. 19A, 19B, and 19C are diagrams illustrating examples of providing affordance in an electronic device according to one embodiment of the present disclosure.
FIG. 20 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.
FIGS. 21A, 21B, and 21C are diagrams illustrating examples of determining the size of an affordance in an electronic device according to one embodiment of the present disclosure.
FIGS. 22A and 22B are diagrams illustrating examples of operations for providing affordance in association with a virtual object in an electronic device according to one embodiment of the present disclosure.
FIGS. 23A, 23B, and 23C are diagrams illustrating examples of operations for providing affordance in association with a virtual object in an electronic device according to one embodiment of the present disclosure.
FIGS. 24A, 24B, and 24C are diagrams illustrating examples of operations for providing affordance in association with a virtual object in an electronic device according to one embodiment of the present disclosure.
FIGS. 25A and 25B are diagrams illustrating examples of operations for providing affordance in association with a virtual object in an electronic device according to one embodiment of the disclosure.
FIG. 26 is a diagram illustrating an example of an operation of providing affordance in an electronic device according to one embodiment of the present disclosure.
FIGS. 27A, 27B, and 27C are diagrams illustrating examples of operations for providing affordance in association with a virtual object in an electronic device according to one embodiment of the present disclosure.
FIGS. 28A and 28B are diagrams illustrating examples of operations for providing affordance in association with a virtual object in an electronic device according to one embodiment of the present disclosure.

이하에서는 도면을 참조하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 도면의 설명과 관련하여, 동일하거나 유사한 구성요소에 대해서는 동일하거나 유사한 참조 부호가 사용될 수 있다. 또한, 도면 및 관련된 설명에서는, 잘 알려진 기능 및 구성에 대한 설명이 명확성과 간결성을 위해 생략될 수 있다.Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings so that those skilled in the art can easily implement the present disclosure. However, the present disclosure may be implemented in various different forms and is not limited to the embodiments described herein. In connection with the description of the drawings, the same or similar reference numerals may be used for the same or similar components. In addition, in the drawings and related descriptions, descriptions of well-known functions and configurations may be omitted for clarity and conciseness.

도 1은 다양한 실시예들에 따른 네트워크 환경(100) 내의 전자 장치(101)의 블록도이다. FIG. 1 is a block diagram of an electronic device (101) within a network environment (100) according to various embodiments.

도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108) 중 적어도 하나와 통신할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 모듈(150), 음향 출력 모듈(155), 디스플레이 모듈(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 연결 단자(178), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 연결 단자(178))가 생략되거나, 하나 이상의 다른 구성요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들(예: 센서 모듈(176), 카메라 모듈(180), 또는 안테나 모듈(197))은 하나의 구성요소(예: 디스플레이 모듈(160))로 통합될 수 있다.Referring to FIG. 1, in a network environment (100), an electronic device (101) may communicate with an electronic device (102) via a first network (198) (e.g., a short-range wireless communication network), or may communicate with at least one of an electronic device (104) or a server (108) via a second network (199) (e.g., a long-range wireless communication network). According to one embodiment, the electronic device (101) may communicate with the electronic device (104) via the server (108). According to one embodiment, the electronic device (101) may include a processor (120), a memory (130), an input module (150), an audio output module (155), a display module (160), an audio module (170), a sensor module (176), an interface (177), a connection terminal (178), a haptic module (179), a camera module (180), a power management module (188), a battery (189), a communication module (190), a subscriber identification module (196), or an antenna module (197). In some embodiments, the electronic device (101) may omit at least one of these components (e.g., the connection terminal (178)), or may have one or more other components added. In some embodiments, some of these components (e.g., the sensor module (176), the camera module (180), or the antenna module (197)) may be integrated into one component (e.g., the display module (160)).

프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 저장하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일 실시예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치(CPU, central processing unit) 또는 어플리케이션 프로세서(AP, application processor)) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치(GPU, graphic processing unit), 신경망 처리 장치(NPU, neural processing unit), 이미지 시그널 프로세서(ISP, image signal processor), 센서 허브 프로세서(sensor hub processor), 또는 커뮤니케이션 프로세서(CP, communication processor))를 포함할 수 있다. 예를 들어, 전자 장치(101)가 메인 프로세서(121) 및 보조 프로세서(123)를 포함하는 경우, 보조 프로세서(123)는 메인 프로세서(121)보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.The processor (120) may control at least one other component (e.g., a hardware or software component) of the electronic device (101) connected to the processor (120) by executing, for example, software (e.g., a program (140)), and may perform various data processing or calculations. According to one embodiment, as at least a part of the data processing or calculations, the processor (120) may store a command or data received from another component (e.g., a sensor module (176) or a communication module (190)) in the volatile memory (132), process the command or data stored in the volatile memory (132), and store result data in the nonvolatile memory (134). According to one embodiment, the processor (120) may include a main processor (121) (e.g., a central processing unit (CPU) or an application processor (AP)) or an auxiliary processor (123) (e.g., a graphic processing unit (GPU), a neural processing unit (NPU), an image signal processor (ISP), a sensor hub processor, or a communication processor (CP)) that can operate independently or together with the main processor (121). For example, when the electronic device (101) includes the main processor (121) and the auxiliary processor (123), the auxiliary processor (123) may be configured to use lower power than the main processor (121) or to be specialized for a given function. The auxiliary processor (123) may be implemented separately from the main processor (121) or as a part thereof.

보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(inactive)(예: 슬립(sleep)) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 디스플레이 모듈(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일 실시예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다. 일 실시예에 따르면, 보조 프로세서(123)(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능 모델이 수행되는 전자 장치(101) 자체에서 수행될 수 있고, 별도의 서버(예: 서버(108))를 통해 수행될 수도 있다. 학습 알고리즘은, 예를 들어, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)을 포함할 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은, 복수의 인공 신경망 레이어들을 포함할 수 있다. 인공 신경망은 심층 신경망(DNN: deep neural network), CNN(convolutional neural network), RNN(recurrent neural network), RBM(restricted boltzmann machine), DBN(deep belief network), BRDNN(bidirectional recurrent deep neural network), 심층 Q-네트워크(deep Q-networks) 또는 상기 중 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다.The auxiliary processor (123) may control at least a part of functions or states related to at least one component (e.g., a display module (160), a sensor module (176), or a communication module (190)) of the electronic device (101), for example, on behalf of the main processor (121) while the main processor (121) is in an inactive (e.g., sleep) state, or together with the main processor (121) while the main processor (121) is in an active (e.g., application execution) state. In one embodiment, the auxiliary processor (123) (e.g., an image signal processor or a communication processor) may be implemented as a part of another functionally related component (e.g., a camera module (180) or a communication module (190)). In one embodiment, the auxiliary processor (123) (e.g., a neural network processing device) may include a hardware structure specialized for processing an artificial intelligence model. The artificial intelligence model may be generated through machine learning. Such learning may be performed, for example, in the electronic device (101) itself on which the artificial intelligence model is executed, or may be performed through a separate server (e.g., server (108)). The learning algorithm may include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but is not limited to the examples described above. The artificial intelligence model may include a plurality of artificial neural network layers. The artificial neural network may be one of a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), deep Q-networks, or a combination of two or more of the above, but is not limited to the examples described above. In addition to the hardware structure, the artificial intelligence model may additionally or alternatively include a software structure.

메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서 모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다. The memory (130) can store various data used by at least one component (e.g., processor (120) or sensor module (176)) of the electronic device (101). The data can include, for example, software (e.g., program (140)) and input data or output data for commands related thereto. The memory (130) can include volatile memory (132) or nonvolatile memory (134).

프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(OS, operating system)(142), 미들 웨어(middleware)(144) 또는 어플리케이션(146)을 포함할 수 있다. The program (140) may be stored as software in the memory (130) and may include, for example, an operating system (OS) (142), middleware (144), or an application (146).

입력 모듈(150)은, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 모듈(150)은, 예를 들면, 마이크, 마우스, 키보드, 키(예: 버튼), 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다. The input module (150) can receive commands or data to be used in a component of the electronic device (101) (e.g., a processor (120)) from an external source (e.g., a user) of the electronic device (101). The input module (150) can include, for example, a microphone, a mouse, a keyboard, a key (e.g., a button), or a digital pen (e.g., a stylus pen).

음향 출력 모듈(155)은 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 모듈(155)은, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있다. 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일 실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.The audio output module (155) can output an audio signal to the outside of the electronic device (101). The audio output module (155) can include, for example, a speaker or a receiver. The speaker can be used for general purposes such as multimedia playback or recording playback. The receiver can be used to receive an incoming call. According to one embodiment, the receiver can be implemented separately from the speaker or as a part thereof.

디스플레이 모듈(160)은 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 디스플레이 모듈(160)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일 실시예에 따르면, 디스플레이 모듈(160)은 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다. The display module (160) can visually provide information to an external party (e.g., a user) of the electronic device (101). The display module (160) can include, for example, a display, a holographic device, or a projector and a control circuit for controlling the device. According to one embodiment, the display module (160) can include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of a force generated by the touch.

오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일 실시예에 따르면, 오디오 모듈(170)은, 입력 모듈(150)을 통해 소리를 획득하거나, 음향 출력 모듈(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102))(예: 스피커 또는 헤드폰)를 통해 소리를 출력할 수 있다.The audio module (170) can convert sound into an electrical signal, or vice versa, convert an electrical signal into sound. According to one embodiment, the audio module (170) can obtain sound through an input module (150), or output sound through an audio output module (155), or an external electronic device (e.g., an electronic device (102)) (e.g., a speaker or a headphone) directly or wirelessly connected to the electronic device (101).

센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일 실시예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다. The sensor module (176) can detect an operating state (e.g., power or temperature) of the electronic device (101) or an external environmental state (e.g., user state) and generate an electric signal or data value corresponding to the detected state. According to one embodiment, the sensor module (176) can include, for example, a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.

인터페이스(177)는 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일 실시예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD(secure digital) 카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.The interface (177) may support one or more designated protocols that may be used to directly or wirelessly connect the electronic device (101) with an external electronic device (e.g., the electronic device (102)). According to one embodiment, the interface (177) may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, a secure digital (SD) card interface, or an audio interface.

연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일 실시예에 따르면, 연결 단자(178)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.The connection terminal (178) may include a connector through which the electronic device (101) may be physically connected to an external electronic device (e.g., the electronic device (102)). According to one embodiment, the connection terminal (178) may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).

햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일 실시예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.The haptic module (179) can convert an electrical signal into a mechanical stimulus (e.g., vibration or movement) or an electrical stimulus that a user can perceive through a tactile or kinesthetic sense. According to one embodiment, the haptic module (179) can include, for example, a motor, a piezoelectric element, or an electrical stimulation device.

카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일 실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.The camera module (180) can capture still images and moving images. According to one embodiment, the camera module (180) can include one or more lenses, image sensors, image signal processors, or flashes.

전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일 실시예에 따르면, 전력 관리 모듈(188)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.The power management module (188) can manage power supplied to the electronic device (101). According to one embodiment, the power management module (188) can be implemented as, for example, at least a part of a power management integrated circuit (PMIC).

배터리(189)는 전자 장치(101)의 적어도 하나의 구성요소에 전력을 공급할 수 있다. 일 실시예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.The battery (189) can power at least one component of the electronic device (101). In one embodiment, the battery (189) can include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.

통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108)) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일 실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제1 네트워크(198)(예: 블루투스, WiFi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제2 네트워크(199)(예: 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN(wide area network))와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치(104)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제1 네트워크(198) 또는 제2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 또는 인증할 수 있다. The communication module (190) may support establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device (101) and an external electronic device (e.g., the electronic device (102), the electronic device (104), or the server (108)), and performance of communication through the established communication channel. The communication module (190) may operate independently from the processor (120) (e.g., the application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module (190) may include a wireless communication module (192) (e.g., a cellular communication module, a short-range wireless communication module, or a GNSS (global navigation satellite system) communication module) or a wired communication module (194) (e.g., a local area network (LAN) communication module or a power line communication module). Among these communication modules, a corresponding communication module may communicate with an external electronic device (104) via a first network (198) (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network (199) (e.g., a long-range communication network such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a LAN or a wide area network (WAN))). These various types of communication modules may be integrated into a single component (e.g., a single chip) or implemented as a plurality of separate components (e.g., multiple chips). The wireless communication module (192) may use subscriber information (e.g., an international mobile subscriber identity (IMSI)) stored in the subscriber identification module (196) to identify or authenticate the electronic device (101) within a communication network such as the first network (198) or the second network (199).

무선 통신 모듈(192)은 4G 네트워크 이후의 5G 네트워크 및 차세대 통신 기술, 예를 들어, NR 접속 기술(new radio access technology)을 지원할 수 있다. NR 접속 기술은 고용량 데이터의 고속 전송(eMBB, enhanced mobile broadband), 단말 전력 최소화와 다수 단말의 접속(mMTC, massive machine type communications), 또는 고신뢰도와 저지연(URLLC, ultra-reliable and low-latency communications)을 지원할 수 있다. 무선 통신 모듈(192)은, 예를 들어, 높은 데이터 전송률 달성을 위해, 고주파 대역(예: mmWave 대역)을 지원할 수 있다. 무선 통신 모듈(192)은 고주파 대역에서의 성능 확보를 위한 다양한 기술들, 예를 들어, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO(multiple-input and multiple-output)), 전차원 다중입출력(FD-MIMO, full dimensional MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 또는 대규모 안테나(large scale antenna)와 같은 기술들을 지원할 수 있다. 무선 통신 모듈(192)은 전자 장치(101), 외부 전자 장치(예: 전자 장치(104)) 또는 네트워크 시스템(예: 제2 네트워크(199))에 규정되는 다양한 요구사항을 지원할 수 있다. 일 실시예에 따르면, 무선 통신 모듈(192)은 eMBB 실현을 위한 Peak data rate(예: 20Gbps 이상), mMTC 실현을 위한 손실 Coverage(예: 164dB 이하), 또는 URLLC 실현을 위한 U-plane latency(예: 다운링크(DL) 및 업링크(UL) 각각 0.5ms 이하, 또는 라운드 트립 1ms 이하)를 지원할 수 있다.The wireless communication module (192) can support a 5G network and next-generation communication technology after a 4G network, for example, NR access technology (new radio access technology). The NR access technology can support high-speed transmission of high-capacity data (eMBB, enhanced mobile broadband), minimization of terminal power and connection of multiple terminals (mMTC, massive machine type communications), or high reliability and low latency communications (URLLC, ultra-reliable and low-latency communications). The wireless communication module (192) can support, for example, a high-frequency band (e.g., mmWave band) to achieve a high data transmission rate. The wireless communication module (192) can support various technologies for securing performance in a high-frequency band, such as beamforming, massive multiple-input and multiple-output (MIMO), full dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module (192) can support various requirements specified in an electronic device (101), an external electronic device (e.g., electronic device (104)), or a network system (e.g., second network (199)). According to one embodiment, the wireless communication module (192) may support a peak data rate (e.g., 20 Gbps or more) for eMBB realization, a loss coverage (e.g., 164 dB or less) for mMTC realization, or a U-plane latency (e.g., 0.5 ms or less for downlink (DL) and uplink (UL) each, or 1 ms or less for round trip) for URLLC realization.

안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부의 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일 실시예에 따르면, 안테나 모듈(197)은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 안테나를 포함할 수 있다. 일 실시예에 따르면, 안테나 모듈(197)은 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다. 이런 경우, 제1 네트워크(198) 또는 제2 네트워크(199)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 상기 복수의 안테나들로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부의 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시예에 따르면, 방사체 이외에 다른 부품(예: RFIC(radio frequency integrated circuit))이 추가로 안테나 모듈(197)의 일부로 형성될 수 있다.The antenna module (197) can transmit or receive signals or power to or from the outside (e.g., an external electronic device). According to one embodiment, the antenna module (197) can include an antenna including a radiator formed of a conductor or a conductive pattern formed on a substrate (e.g., a PCB). According to one embodiment, the antenna module (197) can include a plurality of antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network, such as the first network (198) or the second network (199), can be selected from the plurality of antennas by, for example, the communication module (190). A signal or power can be transmitted or received between the communication module (190) and the external electronic device through the selected at least one antenna. According to some embodiments, in addition to the radiator, another component (e.g., a radio frequency integrated circuit (RFIC)) can be additionally formed as a part of the antenna module (197).

다양한 실시예들에 따르면, 안테나 모듈(197)은 mmWave 안테나 모듈을 형성할 수 있다. 일 실시예에 따르면, mmWave 안테나 모듈은 인쇄 회로 기판, 상기 인쇄 회로 기판의 제1 면(예: 아래 면)에 또는 그에 인접하여 배치되고 지정된 고주파 대역(예: mmWave 대역)을 지원할 수 있는 RFIC, 및 상기 인쇄 회로 기판의 제2 면(예: 윗 면 또는 측 면)에 또는 그에 인접하여 배치되고 상기 지정된 고주파 대역의 신호를 송신 또는 수신할 수 있는 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다.According to various embodiments, the antenna module (197) can form a mmWave antenna module. According to one embodiment, the mmWave antenna module can include a printed circuit board, an RFIC positioned on or adjacent a first side (e.g., a bottom side) of the printed circuit board and capable of supporting a designated high-frequency band (e.g., a mmWave band), and a plurality of antennas (e.g., an array antenna) positioned on or adjacent a second side (e.g., a top side or a side) of the printed circuit board and capable of transmitting or receiving signals in the designated high-frequency band.

상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))을 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.At least some of the above components may be interconnected and exchange signals (e.g., commands or data) with each other via a communication method between peripheral devices (e.g., a bus, a general purpose input and output (GPIO), a serial peripheral interface (SPI), or a mobile industry processor interface (MIPI)).

일 실시예에 따르면, 명령 또는 데이터는 제2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 외부의 전자 장치(102, 또는 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일 실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부의 전자 장치들(102, 104, 또는 108) 중 하나 이상의 외부의 전자 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부의 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부의 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 모바일 에지 컴퓨팅(MEC, mobile edge computing), 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다. 전자 장치(101)는, 예를 들어, 분산 컴퓨팅 또는 모바일 에지 컴퓨팅을 이용하여 초저지연 서비스를 제공할 수 있다. 다른 실시예에 있어서, 외부의 전자 장치(104)는 IoT(internet of things) 기기를 포함할 수 있다. 서버(108)는 기계 학습 및/또는 신경망을 이용한 지능형 서버일 수 있다. 일 실시예에 따르면, 외부의 전자 장치(104) 또는 서버(108)는 제2 네트워크(199) 내에 포함될 수 있다. 전자 장치(101)는 5G 통신 기술 및 IoT 관련 기술을 기반으로 지능형 서비스(예: 스마트 홈, 스마트 시티, 스마트 카, 또는 헬스 케어)에 적용될 수 있다.In one embodiment, commands or data may be transmitted or received between the electronic device (101) and an external electronic device (104) via a server (108) connected to a second network (199). Each of the external electronic devices (102 or 104) may be the same or a different type of device as the electronic device (101). In one embodiment, all or part of the operations executed in the electronic device (101) may be executed in one or more of the external electronic devices (102, 104, or 108). For example, when the electronic device (101) is to perform a certain function or service automatically or in response to a request from a user or another device, the electronic device (101) may, instead of or in addition to executing the function or service itself, request one or more external electronic devices to perform at least a part of the function or service. One or more external electronic devices that have received the request may execute at least a part of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device (101). The electronic device (101) may provide the result, as is or additionally processed, as at least a part of a response to the request. For this purpose, for example, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used. The electronic device (101) may provide an ultra-low latency service by using, for example, distributed computing or mobile edge computing. In another embodiment, the external electronic device (104) may include an IoT (Internet of Things) device. The server (108) may be an intelligent server using machine learning and/or a neural network. According to one embodiment, the external electronic device (104) or the server (108) may be included in the second network (199). The electronic device (101) can be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.

본 문서에 개시된 다양한 실시예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.The electronic devices according to various embodiments disclosed in this document may be devices of various forms. The electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliance devices. The electronic devices according to embodiments of this document are not limited to the above-described devices.

본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제1", "제2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제1) 구성요소가 다른(예: 제2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.It should be understood that the various embodiments of this document and the terminology used herein are not intended to limit the technical features described in this document to specific embodiments, but include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the items, unless the context clearly dictates otherwise. In this document, each of the phrases "A or B", "at least one of A and B", "at least one of A or B", "A, B, or C", "at least one of A, B, and C", and "at least one of A, B, or C" can include any one of the items listed together in the corresponding phrase, or all possible combinations thereof. Terms such as "first", "second", or "first" or "second" may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order). When a component (e.g., a first component) is referred to as "coupled" or "connected" to another (e.g., a second component), with or without the terms "functionally" or "communicatively," it means that the component can be connected to the other component directly (e.g., wired), wirelessly, or through a third component.

본 문서의 다양한 실시예들에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로와 같은 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일 실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다. The term "module" used in various embodiments of this document may include a unit implemented in hardware, software or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit, for example. A module may be an integrally configured component or a minimum unit of the component or a portion thereof that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).

본 문서의 다양한 실시예들은 기기(machine)(예: 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(140))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(101))의 프로세서(예: 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장 매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.Various embodiments of the present document may be implemented as software (e.g., a program (140)) including one or more instructions stored in a storage medium (e.g., an internal memory (136) or an external memory (138)) readable by a machine (e.g., an electronic device (101)). For example, a processor (e.g., a processor (120)) of the machine (e.g., an electronic device (101)) may call at least one instruction among the one or more instructions stored from the storage medium and execute it. This enables the machine to operate to perform at least one function according to the called at least one instruction. The one or more instructions may include code generated by a compiler or code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, ‘non-transitory’ simply means that the storage medium is a tangible device and does not contain signals (e.g. electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently or temporarily on the storage medium.

일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory(CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트 폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to one embodiment, the method according to various embodiments disclosed in the present document may be provided as included in a computer program product. The computer program product may be traded between a seller and a buyer as a commodity. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., a compact disc read only memory (CD-ROM)), or may be distributed online (e.g., downloaded or uploaded) via an application store (e.g., Play Store TM ) or directly between two user devices (e.g., smart phones). In the case of online distribution, at least a part of the computer program product may be at least temporarily stored or temporarily generated in a machine-readable storage medium, such as a memory of a manufacturer's server, a server of an application store, or an intermediary server.

다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있으며, 복수의 개체 중 일부는 다른 구성요소에 분리 배치될 수도 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱(heuristic)하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.According to various embodiments, each component (e.g., a module or a program) of the above-described components may include a single or multiple entities, and some of the multiple entities may be separately arranged in other components. According to various embodiments, one or more components or operations of the above-described corresponding components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, the multiple components (e.g., a module or a program) may be integrated into one component. In such a case, the integrated component may perform one or more functions of each of the multiple components identically or similarly to those performed by the corresponding component of the multiple components before the integration. According to various embodiments, the operations performed by the module, program, or other component may be executed sequentially, in parallel, repeatedly, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.

본 개시의 다양한 실시예들을 서술하기에 앞서, 본 개시의 실시예가 적용될 수 있는 전자 장치(101)에 대하여 설명한다.Before describing various embodiments of the present disclosure, an electronic device (101) to which an embodiment of the present disclosure can be applied is described.

도 2는 일 실시예에 따른 전자 장치의 일 예를 도시하는 도면이다.FIG. 2 is a diagram illustrating an example of an electronic device according to one embodiment.

일 실시예에 따라, 도 2에서는 전자 장치(101)가 안경 형태의 웨어러블 전자 장치(201)(예: 안경형 디스플레이 장치 또는 AR(augmented reality) 글래스)인 예를 도시하고 있으나, 이에 한정하는 것은 아니다. 예를 들면, 웨어러블 전자 장치(201)는, 디스플레이를 포함하고, 사용자의 신체 일부(예: 얼굴 또는 머리 부분)에 착용(또는 장치)되어, 증강 현실(AR, augmented reality), 혼합 현실(MR, mixed reality) 및/또는 가상 현실(VR, virtual reality) 서비스를 제공하는 다양한 형태의 장치를 포함할 수 있다. 예를 들어, 웨어러블 전자 장치(201)는 안경(glass), 고글(goggles), 헬멧 또는 모자 형태 중 적어도 하나의 형태로 구현될 수 있으며, 이에 한정하는 것은 아니다. According to one embodiment, FIG. 2 illustrates an example in which the electronic device (101) is a wearable electronic device (201) in the form of glasses (e.g., a glasses-type display device or AR (augmented reality) glasses), but is not limited thereto. For example, the wearable electronic device (201) may include various forms of devices that include a display and are worn (or installed) on a part of a user's body (e.g., a face or a head) to provide augmented reality (AR), mixed reality (MR), and/or virtual reality (VR) services. For example, the wearable electronic device (201) may be implemented in at least one form of glasses, goggles, a helmet, or a hat, but is not limited thereto.

일 실시예에 따르면, 웨어러블 전자 장치(201)는 VST(video see-through) 기기를 포함할 수 있다. 예를 들어, VST 기기는 증강 현실과 가상 현실 서비스를 선택적으로 제공할 수 있다. VST 기기는 복수의 카메라들을 포함할 수 있으며, 복수의 카메라들(예: 도 3의 시선 추적 카메라(312-1, 312-2))을 기초로 사용자의 시선을 추적할 수 있다. 일 실시예에서, 시선 추적(eye tracking)은 사용자의 시선의 위치 및/또는 움직임을 추적하는 기술을 나타낼 수 있다. 일 실시예에 따르면, VST기기는 복수의 카메라들을 기초로 사용자 전방의 실세계(real world)를 촬영 또는 검출하여 디스플레이(사용자의 양안에 각각 대응하는 디스플레이)를 통해 실세계를 표시할 수 있다. VST 기기는 실세계를 표시하면서 가상 객체를 표시함으로써 증강 현실 서비스를 제공할 수 있다.According to one embodiment, the wearable electronic device (201) may include a VST (video see-through) device. For example, the VST device may selectively provide augmented reality and virtual reality services. The VST device may include a plurality of cameras and may track the gaze of a user based on the plurality of cameras (e.g., the gaze tracking cameras (312-1, 312-2) of FIG. 3). In one embodiment, eye tracking may refer to a technology for tracking the position and/or movement of a user's gaze. According to one embodiment, the VST device may capture or detect the real world in front of the user based on the plurality of cameras and display the real world through a display (a display corresponding to each of the user's two eyes). The VST device may provide an augmented reality service by displaying a virtual object while displaying the real world.

이하에서 설명되는 웨어러블 전자 장치(201)는 앞서 도 1을 참조하여 설명한 바와 같은 전자 장치(101)에 포함된 구성 요소 중 적어도 일부를 포함하는 장치일 수 있다. 이하 설명에서 언급되지 않더라도 본 개시에 따른 웨어러블 전자 장치(201)는 도 1을 참조하여 설명한 바와 같은 다양한 구성 요소들을 포함할 수 있는 것으로 해석될 수 있다.The wearable electronic device (201) described below may be a device including at least some of the components included in the electronic device (101) described above with reference to FIG. 1. Even if not mentioned in the description below, it may be interpreted that the wearable electronic device (201) according to the present disclosure may include various components as described with reference to FIG. 1.

일 실시예에 따르면, 웨어러블 전자 장치(201)는 사용자의 얼굴에 착용되어, 사용자에게 영상(예: 증강 현실 영상, 혼합 현실 영상 및/또는 가상 현실 영상)을 제공할 수 있다. 일 실시예에 따라, 웨어러블 전자 장치(201)는 실제 현실 공간(또는 환경)의 적어도 일부에 가상 정보(또는 가상 객체)를 덧붙이는 AR 서비스를 제공할 수 있다. 예를 들어, 웨어러블 전자 장치(201)는, 착용자의 시야각(FOV, field of view)에 대응하는 실제 현실 공간에 가상 정보를 겹쳐서 사용자에게 제공할 수 있다. According to one embodiment, the wearable electronic device (201) may be worn on a user's face and may provide an image (e.g., an augmented reality image, a mixed reality image, and/or a virtual reality image) to the user. According to one embodiment, the wearable electronic device (201) may provide an AR service that superimposes virtual information (or virtual objects) on at least a part of an actual real space (or environment). For example, the wearable electronic device (201) may provide the user with virtual information by superimposing it on an actual real space corresponding to the wearer's field of view (FOV).

도 2를 참조하면, 웨어러블 전자 장치(201)는 사용자의 양안(예: 좌안 및 우안)에 대응하는 위치에 배치되는 글래스 부재(또는 윈도우 부재)(210), 글래스 부재(210)를 고정하는 메인 프레임(또는 본체부)(240), 메인 프레임(240)의 양단에서 연결되어 사용자의 귀에 거치되는 지지 프레임(또는 지지 부재)(250), 및 카메라 모듈(280)(예: 촬영용 카메라)을 포함할 수 있다. Referring to FIG. 2, a wearable electronic device (201) may include a glass member (or window member) (210) positioned at positions corresponding to the user's two eyes (e.g., left eye and right eye), a main frame (or main body) (240) that fixes the glass member (210), a support frame (or support member) (250) that is connected to both ends of the main frame (240) and is placed on the user's ear, and a camera module (280) (e.g., a camera for taking pictures).

일 실시예에 따르면, 글래스 부재(210)는 사용자의 좌안에 대응하는 제1 글래스(220)와 사용자의 우안에 대응하는 제2 글래스(230)를 포함할 수 있다. 일 실시예에 따라, 글래스 부재(210)는 메인 프레임(240)에 의해 지지될 수 있다. 예를 들어, 메인 프레임(240)에 형성된 개구부에 글래스 부재(210)가 끼워질 수 있다. 일 실시예에 따라, 디스플레이 모듈(예: 도 1의 디스플레이 모듈(160))에서 방출되는 AR 영상은 글래스 부재(210)에 투영될 수 있다. According to one embodiment, the glass member (210) may include a first glass (220) corresponding to the user's left eye and a second glass (230) corresponding to the user's right eye. According to one embodiment, the glass member (210) may be supported by the main frame (240). For example, the glass member (210) may be fitted into an opening formed in the main frame (240). According to one embodiment, an AR image emitted from a display module (e.g., the display module (160) of FIG. 1) may be projected onto the glass member (210).

일 실시예에 따르면, 글래스 부재(210)는 적어도 일부 영역에 도파로(예: 광도파로(waveguide) 또는 투명 도파로(transparent waveguide))가 형성될 수 있다. 일 실시예에서, 도파로는 디스플레이 모듈에서 방출된 AR 영상을 사용자의 눈으로 유도하는 역할을 할 수 있다. 도파로에 대한 상세한 설명은 도 3의 제1 글래스(220) 및 제2 글래스(230)와 관련된 설명을 참조하여 설명된다. According to one embodiment, the glass member (210) may have a waveguide (e.g., a waveguide or a transparent waveguide) formed in at least a portion of the region. In one embodiment, the waveguide may serve to guide an AR image emitted from the display module to the user's eyes. A detailed description of the waveguide is described with reference to the description related to the first glass (220) and the second glass (230) of FIG. 3.

일 실시예에 따라, 글래스 부재(210)는, 도 2에 예시된 바와 같이, 사용자의 좌안과 우안에 각각 대응되도록 제1 글래스(220) 및 제2 글래스(230)로 분리되는 형태로 구현하는 것을 예로 하였으나, 어떤 실시예에 따르면, 글래스 부재(210)는 제1 글래스(220)와 제2 글래스(230)의 구분 없이 하나의 글래스 형태로 구현될 수도 있다.According to one embodiment, the glass member (210) is implemented as a form that is separated into a first glass (220) and a second glass (230) to correspond to the left and right eyes of the user, respectively, as illustrated in FIG. 2. However, according to some embodiments, the glass member (210) may be implemented as a single glass form without distinction between the first glass (220) and the second glass (230).

일 실시예에 따라, 메인 프레임(240) 및 지지 프레임(250)은 안경 형태로 구현될 수 있다. According to one embodiment, the main frame (240) and the support frame (250) may be implemented in the form of glasses.

일 실시예에서, 메인 프레임(240)은 사용자의 코에 적어도 부분적으로 거치되는 구조일 수 있다. 일 실시예에 따르면, 메인 프레임(240)은 글래스 부재(210)를 지지할 수 있다. 일 실시예에 따르면, 메인 프레임(240)은 합성 수지 소재로 형성될 수 있다. 일 실시예에 따르면, 메인 프레임(240)에 형성된 개구부에 글래스 부재(210)가 끼워짐으로써, 메인 프레임(240)이 글래스 부재(210)를 지지할 수 있다.In one embodiment, the main frame (240) may be a structure that is at least partially placed on the user's nose. According to one embodiment, the main frame (240) may support the glass member (210). According to one embodiment, the main frame (240) may be formed of a synthetic resin material. According to one embodiment, the glass member (210) may be fitted into an opening formed in the main frame (240), thereby allowing the main frame (240) to support the glass member (210).

일 실시예에서, 지지 프레임(250)은 제1 방향 귀(예: 왼쪽 귀)에 거치되는 제1 지지 프레임(260)과 제2 방향 귀(예: 오른쪽 귀)에 거치되는 제2 지지 프레임(270)을 포함할 수 있다. 예를 들어, 메인 프레임(240)과 지지 프레임(250)(예: 제1 지지 프레임(260) 및 제2 지지 프레임(270))은 힌지부(미도시)를 통해 연결될 수 있으며, 폴딩(folding)이 가능하도록 결합될 수 있다. In one embodiment, the support frame (250) may include a first support frame (260) mounted on a first direction ear (e.g., a left ear) and a second support frame (270) mounted on a second direction ear (e.g., a right ear). For example, the main frame (240) and the support frame (250) (e.g., the first support frame (260) and the second support frame (270)) may be connected through a hinge portion (not shown) and may be combined so as to enable folding.

일 실시예에서, 지지 프레임(250)은 메인 프레임(240)에 회전 가능하게 연결될 수 있다. 일 실시예에 따르면, 지지 프레임(250)은, 제1 지지 프레임(260)과 제2 지지 프레임(270)을 포함할 수 있다. 제1 지지 프레임(260)은 ‘A’ 방향에서 바라볼 때, 메인 프레임(240)에 대하여 좌측(예: 제1 방향)에서 메인 프레임(240)에 연결될 수 있다. 제2 지지 프레임(270)은 ‘A’ 방향에서 바라볼 때, 메인 프레임(240)에 대하여 우측(예: 제2 방향)에서 메인 프레임(240)에 연결될 수 있다. In one embodiment, the support frame (250) may be rotatably connected to the main frame (240). According to one embodiment, the support frame (250) may include a first support frame (260) and a second support frame (270). The first support frame (260) may be connected to the main frame (240) from the left side (e.g., the first direction) with respect to the main frame (240) when viewed from the ‘A’ direction. The second support frame (270) may be connected to the main frame (240) from the right side (e.g., the second direction) with respect to the main frame (240) when viewed from the ‘A’ direction.

일 실시예에서, 지지 프레임(250)은 메인 프레임(240)에 고정 설치될 수도 있다. 예를 들어, 메인 프레임(240)의 좌측에 연결된 제1 지지 프레임(260)과, 메인 프레임(240)의 우측에 연결된 제2 지지 프레임(270)이 서로 연결되도록 형성될 수도 있다. 일 실시예에 따르면, 메인 프레임(240)의 양측에 연결된 지지 프레임(250)은 링(ring) 형태를 이루고 사용자의 머리에 끼워지는 방식으로 착용될 수 있다. 이 밖에도 지지 프레임(250)은 사용자의 얼굴에 웨어러블 전자 장치(201)가 착용될 수 있는 다양한 형태로 변형될 수 있다. In one embodiment, the support frame (250) may be fixedly installed on the main frame (240). For example, a first support frame (260) connected to the left side of the main frame (240) and a second support frame (270) connected to the right side of the main frame (240) may be formed to be connected to each other. According to one embodiment, the support frames (250) connected to both sides of the main frame (240) may be worn in a ring shape and fitted onto the user's head. In addition, the support frame (250) may be transformed into various shapes so that the wearable electronic device (201) may be worn on the user's face.

일 실시예에 따르면, 지지 프레임(250)은 사용자의 귀에 걸치도록 형성될 수 있다. 예를 들면, 메인 프레임(240)에 연결된 지지 프레임(250)이 사용자의 귀에 걸쳐지는 방식으로 웨어러블 전자 장치(201)가 사용자의 얼굴에 착용될 수 있다. 일 실시예에 따라, 지지 프레임(250)은 메인 프레임(240)에 대해 회전할 수 있다. 일 실시예에 따라, 지지 프레임(250)이 메인 프레임(240)에 근접하는 방향으로 회전되어 웨어러블 전자 장치(201)의 부피가 줄어들 수 있다. In one embodiment, the support frame (250) may be formed to be hung over the user's ear. For example, the wearable electronic device (201) may be worn on the user's face in such a way that the support frame (250) connected to the main frame (240) is hung over the user's ear. In one embodiment, the support frame (250) may be rotated relative to the main frame (240). In one embodiment, the support frame (250) may be rotated in a direction closer to the main frame (240) to reduce the volume of the wearable electronic device (201).

일 실시예에 따르면, 디스플레이 모듈(예: 도 1의 디스플레이 모듈(160))은 전자 장치(201)의 프로세서(120)(예: 도 1의 프로세서(120)) 또는 전자 장치(201)와 연결된 다른 전자 장치(예: 도 4a의 다른 전자 장치(401))(예: 테더드(tethered) 전자 장치(예: 스마트 폰))의 프로세서에서 생성된 AR 영상을 출력할 수 있다. 디스플레이 모듈에서 AR 영상을 생성하여 글래스 부재(210)에 투영하면, 글래스 부재(210)를 통해 전방(예: 사용자가 바라보는 방향)으로부터 입사되는 가시광(L)에, AR 영상에 포함된 객체가 합쳐져 AR이 구현될 수 있다. 디스플레이 모듈은 크기가 매우 작은 프로젝터(예: 마이크로 프로젝터, 피코 프로젝터)일 수 있다. 예를 들어, 디스플레이 모듈은 LSD(laser scanning display), DMD(digital micro-mirror display) 및/또는 LCoS(liquid crystal on silicon)일 수 있다. 일 실시예에 따르면, 디스플레이 모듈은 투명 디스플레이일 수 있다. 이러한 경우, 디스플레이 모듈에 포함된 발광 소자는 글래스 부재(210)에 직접 배치될 수 있다. 이 밖에도 디스플레이 모듈은 AR을 구현하기 위한 다양한 디스플레이 장치일 수 있다. According to one embodiment, a display module (e.g., the display module (160) of FIG. 1) can output an AR image generated by a processor (120) of an electronic device (201) (e.g., the processor (120) of FIG. 1) or a processor of another electronic device (e.g., another electronic device (401) of FIG. 4A) connected to the electronic device (201) (e.g., a tethered electronic device (e.g., a smart phone)). When an AR image is generated by the display module and projected onto a glass member (210), an object included in the AR image can be combined with visible light (L) incident from the front (e.g., in a direction viewed by a user) through the glass member (210), thereby implementing AR. The display module may be a very small projector (e.g., a micro projector, a pico projector). For example, the display module may be a laser scanning display (LSD), a digital micro-mirror display (DMD), and/or a liquid crystal on silicon (LCoS). According to one embodiment, the display module may be a transparent display. In this case, the light-emitting element included in the display module may be directly placed on the glass member (210). In addition, the display module may be a variety of display devices for implementing AR.

일 실시예에서, 글래스 부재(210), 지지 프레임(250), 및/또는 디스플레이 모듈은 사용자의 좌안과 우안에 대응되도록 한 쌍으로 마련될 수 있다. 예를 들어, 글래스 부재(210)는 제1 글래스(220) 및 제2 글래스(230)를 포함할 수 있고, 지지 프레임(250)은 제1 지지 프레임(260) 및 제2 지지 프레임(270)을 포함할 수 있다. 일 실시예에 따르면, 앞서 설명한 구성 요소 중 적어도 일부는 좌안에 대응하는 구성과 우안에 대응하는 구성이 상이할 수 있다.In one embodiment, the glass member (210), the support frame (250), and/or the display module may be provided as a pair to correspond to the left and right eyes of the user. For example, the glass member (210) may include a first glass (220) and a second glass (230), and the support frame (250) may include a first support frame (260) and a second support frame (270). According to one embodiment, at least some of the components described above may have different configurations corresponding to the left eye and the right eye.

일 실시예에 따라, 카메라 모듈(280)은, 예를 들면, 촬영용 카메라(예: 전방 촬영 카메라)를 나타낼 수 있다. 예를 들면, 카메라 모듈(280)은 웨어러블 전자 장치(201)의 전면(또는 사용자가 바라보는 전면)의 피사체를 촬영하도록, 메인 프레임(240)에 배치하여 구현될 수 있다. 예를 들어, 카메라 모듈(280)은 메인 프레임(240)의 전방을 촬영할 수 있도록 메인 프레임(240)에서 제1 글래스(220)와 제2 글래스(230) 사이의 중앙 부분(또는 중심점)에 배치될 수 있다. 일 실시예에서, 메인 프레임(240)의 전방은 사용자가 웨어러블 전자 장치(201)를 착용했을 때, 사용자가 바라보는 방향을 의미할 수 있다. In one embodiment, the camera module (280) may represent, for example, a camera for shooting (e.g., a front shooting camera). For example, the camera module (280) may be implemented by being placed in the main frame (240) to shoot a subject in the front (or the front that the user is looking at) of the wearable electronic device (201). For example, the camera module (280) may be placed in a central portion (or a central point) between the first glass (220) and the second glass (230) in the main frame (240) to shoot a front of the main frame (240). In one embodiment, the front of the main frame (240) may mean a direction in which the user is looking when wearing the wearable electronic device (201).

일 실시예에 따르면, 카메라 모듈(280)은 적어도 하나의 카메라를 포함할 수 있으며, 웨어러블 전자 장치(201)는 카메라 모듈(280)을 통해 사용자 전방에 위치한 실세계의 촬영, 사물의 인지, 및/또는 3차원 깊이 정보를 포함한 공간의 인지와 같은 동작 수행할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(201)는 카메라 모듈(280)을 통해 웨어러블 전자 장치(201)를 기준으로 인지된 사물의 상대적 위치 정보 또는 인지된 공간에서의 사물의 위치 정보를 획득할 수도 있다.According to one embodiment, the camera module (280) may include at least one camera, and the wearable electronic device (201) may perform operations such as photographing the real world located in front of the user, recognizing objects, and/or recognizing space including three-dimensional depth information through the camera module (280). According to one embodiment, the wearable electronic device (201) may also obtain relative position information of objects recognized based on the wearable electronic device (201) or position information of objects in the recognized space through the camera module (280).

일 실시예에서, 웨어러블 전자 장치(201)는 카메라 모듈(280)을 비롯하여, 복수의 다른 카메라를 포함할 수 있으며, 카메라 모듈(280) 및 복수의 다른 카메라들에 대한 상세한 설명은 도 3을 참조하여 설명된다.In one embodiment, the wearable electronic device (201) may include a camera module (280) and a plurality of other cameras, and a detailed description of the camera module (280) and the plurality of other cameras is described with reference to FIG. 3.

도 3은 일 실시예에 따른 전자 장치의 내부 구조의 일 예를 도시하는 도면이다.FIG. 3 is a drawing illustrating an example of the internal structure of an electronic device according to one embodiment.

일 실시예에 따르면, 웨어러블 전자 장치(201)(예: 도 1의 전자 장치(101))는 사용자의 얼굴 또는 머리 부분에 착용되는 형태로 구현된 장치일 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(201)는 사용자의 양안(예: 좌안 및 우안) 각각에 대응하는 복수 개의 글래스(예: 제1 글래스(220) 및 제2 글래스(230))를 포함할 수 있고, 안경 형태로 구현될 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(201)는 사용자에게 AR 서비스와 관련된 영상을 제공할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(201)는 제1 글래스(220) 및/또는 제2 글래스(230)에 가상 객체를 투영하거나 표시함으로써, 사용자가 웨어러블 전자 장치(201)의 제1 글래스(220) 및/또는 제2 글래스(230)를 통해 인지하는 현실 세계에 적어도 하나의 가상 객체가 겹쳐 보이도록 할 수 있다.According to one embodiment, the wearable electronic device (201) (e.g., the electronic device (101) of FIG. 1) may be a device implemented in a form that is worn on a user's face or head. According to one embodiment, the wearable electronic device (201) may include a plurality of glasses (e.g., the first glass (220) and the second glass (230)) corresponding to each of the user's two eyes (e.g., the left eye and the right eye) and may be implemented in the form of glasses. According to one embodiment, the wearable electronic device (201) may provide the user with an image related to an AR service. According to one embodiment, the wearable electronic device (201) may project or display a virtual object on the first glass (220) and/or the second glass (230), thereby allowing at least one virtual object to be superimposed on the real world perceived by the user through the first glass (220) and/or the second glass (230) of the wearable electronic device (201).

도 3을 참조하면, 일 실시예에 따른 웨어러블 전자 장치(201)는 메인 프레임(또는 본체부)(240), 지지 프레임(예: 제1 지지 프레임(260), 제2 지지 프레임(270)), 및 힌지부(예: 제1 힌지부(340-1), 제2 힌지부(340-2))를 포함할 수 있다.Referring to FIG. 3, a wearable electronic device (201) according to one embodiment may include a main frame (or main body) (240), a support frame (e.g., a first support frame (260), a second support frame (270)), and a hinge part (e.g., a first hinge part (340-1), a second hinge part (340-2)).

일 실시예에 따르면, 메인 프레임(240) 및 지지 프레임(예: 제1 지지 프레임(260), 및/또는 제2 지지 프레임(270))은 웨어러블 전자 장치(201)의 다양한 구성 요소들을 실장할 수 있다. 일 실시예에 따르면, 메인 프레임(240)과 지지 프레임(260, 270)은 힌지부(340-1, 340-2)를 통해 작동적으로 연결될 수 있다. According to one embodiment, the main frame (240) and the support frames (e.g., the first support frame (260) and/or the second support frame (270)) can mount various components of the wearable electronic device (201). According to one embodiment, the main frame (240) and the support frames (260, 270) can be operatively connected via hinge portions (340-1, 340-2).

일 실시예에 따라, 메인 프레임(240)은 사용자의 코에 적어도 부분적으로 거치될 수 있도록 형성된 부분을 포함할 수 있다. In one embodiment, the main frame (240) may include a portion formed to be at least partially resting on a user's nose.

일 실시예에 따라, 지지 프레임(260, 270)은 사용자의 귀에 걸쳐질 수 있는 형태의 지지 부재를 포함할 수 있다. 일 실시예에 따라, 지지 프레임(260, 270)은 사용자의 왼쪽 귀에 거치되는 제1 지지 프레임(260) 및 사용자의 오른쪽 귀에 거치되는 제2 지지 프레임(270)을 포함할 수 있다. In one embodiment, the support frame (260, 270) may include a support member that is shaped to be worn over the user's ear. In one embodiment, the support frame (260, 270) may include a first support frame (260) that is worn over the user's left ear and a second support frame (270) that is worn over the user's right ear.

일 실시예에 따라, 제1 힌지부(340-1)는 제1 지지 프레임(260)이 메인 프레임(240)에 대해 회전 가능하도록 제1 지지 프레임(260)과 메인 프레임(240)을 연결할 수 있다. 일 실시예에 따라, 제2 힌지부(340-2)는 제2 지지 프레임(270)이 메인 프레임(240)에 대해 회전 가능하도록 제2 지지 프레임(270)과 메인 프레임(240)을 연결할 수 있다. 다른 실시예에 따르면, 웨어러블 전자 장치(201)의 힌지부(340-1, 340-2)는 생략될 수 있다. 예를 들어, 지지 프레임(260, 270)은 메인 프레임(240)에 바로 연결되어 고정 설치될 수 있다.According to one embodiment, the first hinge portion (340-1) may connect the first support frame (260) and the main frame (240) so that the first support frame (260) may be rotatable relative to the main frame (240). According to one embodiment, the second hinge portion (340-2) may connect the second support frame (270) and the main frame (240) so that the second support frame (270) may be rotatable relative to the main frame (240). According to another embodiment, the hinge portions (340-1, 340-2) of the wearable electronic device (201) may be omitted. For example, the support frames (260, 270) may be directly connected to the main frame (240) and fixedly installed.

일 실시예에 따르면, 메인 프레임(240)은 사용자의 양안(예: 좌안 및 우안)에 대응하는 글래스(예: 제1 글래스(220) 및 제2 글래스(230)), 디스플레이 모듈(예: 제1 디스플레이 모듈(314-1) 및 제2 디스플레이 모듈(314-2)), 광도파로(예: 제1 광도파로(320) 및 제2 광도파로(330)), 카메라 모듈(280)(예: 촬영용 카메라 또는 전방 촬영 카메라), 인식용 카메라(예: 제1 인식용 카메라(311-1), 제2 인식용 카메라(311-2)), 및 시선 추적 카메라(예: 제1 시선 추적 카메라(312-1), 제2 시선 추적 카메라(312-2)), 적어도 하나의 마이크(예: 제1 마이크(341-1), 제2 마이크(341-2) 및/또는 제3 마이크(341-3)), 및 적어도 하나의 조명 부재(예: 제1 조명 부재(342-1) 및/또는 제2 조명 부재(342-2))를 포함할 수 있다. According to one embodiment, the main frame (240) includes glasses corresponding to the user's two eyes (e.g., the left eye and the right eye) (e.g., the first glass (220) and the second glass (230)), display modules (e.g., the first display module (314-1) and the second display module (314-2)), optical waveguides (e.g., the first optical waveguide (320) and the second optical waveguide (330)), a camera module (280) (e.g., a camera for shooting or a front shooting camera), a recognition camera (e.g., the first recognition camera (311-1), the second recognition camera (311-2)), and an eye tracking camera (e.g., the first eye tracking camera (312-1), the second eye tracking camera (312-2)), at least one microphone (e.g., the first microphone (341-1), the second microphone (341-2) and/or the third microphone (341-3)), and at least one lighting member (e.g., the first lighting member). It may include an absence (342-1) and/or a second lighting absence (342-2).

일 실시예에 따라, 웨어러블 전자 장치(201)는, 디스플레이 모듈(314-1, 314-2)에서 생성된 광이 글래스(220, 230)에 투영되어 다양한 정보를 표시할 수 있다. 예를 들어, 제1 디스플레이 모듈(314-1)에서 생성된 광은 제1 글래스(220)에 투영될 수 있고, 제2 디스플레이 모듈(314-2)에서 생성된 광은 제2 글래스(230)에 투영될 수 있다. 일 실시예에 따르면, 제1 글래스(220) 및 제2 글래스(230)는 적어도 일부가 투명한 소재(예: 투명 부재)로 형성될 수 있다. 일 실시예에 따르면, 사용자의 좌안에 대응하는 제1 글래스(220)(또는 제1 투명 부재)는 제1 디스플레이 모듈(314-1)와 연결되고, 사용자의 우안에 대응되는 제2 글래스(230)(또는 제2 투명 부재)는 제2 디스플레이 모듈(314-2)와 연결될 수 있다. 일 실시예에 따르면, 제1 글래스(220) 및 제2 글래스(230)는 글래스 플레이트, 플라스틱 플레이트 및/또는 폴리머로 형성될 수 있으며, 투명 또는 반투명하게 제작될 수 있다.According to one embodiment, the wearable electronic device (201) can display various information by projecting light generated from the display modules (314-1, 314-2) onto the glasses (220, 230). For example, light generated from the first display module (314-1) can be projected onto the first glass (220), and light generated from the second display module (314-2) can be projected onto the second glass (230). According to one embodiment, the first glass (220) and the second glass (230) can be formed of at least a portion of a transparent material (e.g., a transparent member). According to one embodiment, the first glass (220) (or the first transparent member) corresponding to the user's left eye can be connected to the first display module (314-1), and the second glass (230) (or the second transparent member) corresponding to the user's right eye can be connected to the second display module (314-2). According to one embodiment, the first glass (220) and the second glass (230) may be formed of a glass plate, a plastic plate, and/or a polymer, and may be made transparent or translucent.

일 실시예에 따르면, 디스플레이 모듈(예: 제1 디스플레이 모듈(314-1) 및 제2 디스플레이 모듈(314-2))은 액정 표시 장치(LCD, liquid crystal display), 디지털 미러 표시 장치(DMD, digital micro-mirror device), 실리콘 액정 표시 장치(LCoS, liquid crystal on silicon), 유기 발광 다이오드(OLED, organic light emitting diode) 또는 마이크로 엘이디(micro LED, micro light emitting diode)를 포함할 수 있다. According to one embodiment, the display modules (e.g., the first display module (314-1) and the second display module (314-2)) may include a liquid crystal display (LCD), a digital micro-mirror device (DMD), a liquid crystal on silicon (LCoS), an organic light emitting diode (OLED), or a micro light emitting diode (micro LED).

일 실시예에 따르면, 제1 글래스(220) 및 제2 글래스(230)는 집광 렌즈(condensing lens) 및/또는 광도파로(waveguide)(또는 투명 도파로(transparent waveguide))(예: 제1 광도파로(320), 제2 광도파로(330))를 포함할 수 있다. 일 실시예에 따라, 광도파로(320, 330)는 글래스(220, 230)의 일부에 적어도 부분적으로 위치할 수 있다. 예를 들어, 제1 광도파로(320)는 제1 글래스(220)에 부분적으로 위치할 수 있고, 제2 광도파로(330)은 제2 글래스(230)에 부분적으로 위치할 수 있다. 일 실시예에 따르면, 광도파로(320, 330)는 디스플레이 모듈(314-1, 314-2)에서 생성한 광원을 사용자 눈으로 전달하는 역할을 할 수 있다. 일 실시예에 따르면, 디스플레이 모듈(314-1, 314-2)에서 방출된 광은 글래스(220, 230)의 일면(또는 일단)으로 입사될 수 있다. 글래스(220, 230)의 일면으로 입사된 광은 글래스(220, 230) 내에 형성된(또는 위치된) 광도파로(320, 330)를 통해 사용자에게 전달될 수 있다. According to one embodiment, the first glass (220) and the second glass (230) may include a condensing lens and/or an optical waveguide (or a transparent waveguide) (e.g., the first optical waveguide (320), the second optical waveguide (330)). According to one embodiment, the optical waveguides (320, 330) may be at least partially positioned on a portion of the glasses (220, 230). For example, the first optical waveguide (320) may be partially positioned on the first glass (220), and the second optical waveguide (330) may be partially positioned on the second glass (230). According to one embodiment, the optical waveguides (320, 330) may serve to transmit a light source generated by the display modules (314-1, 314-2) to the user's eyes. According to one embodiment, light emitted from the display module (314-1, 314-2) may be incident on one side (or one end) of the glass (220, 230). The light incident on one side of the glass (220, 230) may be transmitted to the user through the optical waveguide (320, 330) formed (or positioned) within the glass (220, 230).

일 실시예에서, 광도파로(320, 330)는 글래스, 플라스틱, 또는 폴리머로 제작될 수 있고, 내부 또는 외부의 일 표면에 형성된 나노 패턴을 포함할 수 있다. 나노 패턴은 다각형 또는 곡면 형상의 격자 구조(grating structure)를 포함할 수 있다. 일 실시예에 따르면, 글래스(220, 230)의 일면으로 입사된 광은 나노 패턴에 의해 광도파로(320, 330) 내부에서 전파 또는 반사되어 사용자에게 전달될 수 있다. 일 실시예에 따르면, 광도파로(320, 330)는 적어도 하나의 회절 요소(예: DOE(diffractive optical element), HOE(holographic optical element)) 또는 반사 요소(예: 반사 거울) 중 적어도 하나를 포함할 수 있다. 일 실시예에 따르면, 광도파로(320, 330)는 적어도 하나의 회절 요소 또는 반사 요소를 이용하여 디스플레이 모듈(314-1, 314-2)(예: 광원부)로부터 방출된 광을 사용자의 눈으로 유도할 수 있다.In one embodiment, the optical waveguide (320, 330) can be made of glass, plastic, or polymer, and can include a nano-pattern formed on one surface of the inner or outer surface. The nano-pattern can include a grating structure having a polygonal or curved shape. According to one embodiment, light incident on one surface of the glass (220, 230) can be propagated or reflected by the nano-pattern inside the optical waveguide (320, 330) and transmitted to the user. According to one embodiment, the optical waveguide (320, 330) can include at least one diffractive element (e.g., a diffractive optical element (DOE), a holographic optical element (HOE)) or at least one reflective element (e.g., a reflective mirror). According to one embodiment, the optical waveguide (320, 330) can guide light emitted from a display module (314-1, 314-2) (e.g., a light source unit) to a user's eye using at least one diffractive element or reflective element.

일 실시예에서, 회절 요소는 입력 광학 부재/출력 광학 부재(미도시)를 포함할 수 있다. 입력 광학 부재는 입력 그레이팅 영역(input grating area)을 의미할 수 있으며, 출력 광학 부재(미도시)는 출력 그레이팅 영역(output grating area)을 의미할 수 있다. 입력 그레이팅 영역은 디스플레이 모듈(314-1, 314-2)(예: micro LED)로부터 출력되는 빛을 글래스(예: 제1 글래스(220), 제2 글래스(230))로 전달하기 위해 회절(또는 반사)시키는 입력단 역할을 할 수 있다. 출력 그레이팅 영역은 광도파로(320, 330)의 글래스(예: 제1 글래스(220), 제2 글래스(230))에 전달된 빛을 사용자의 눈으로 회절(또는 반사)시키는 출구 역할을 할 수 있다. In one embodiment, the diffractive element may include an input optical member/output optical member (not shown). The input optical member may mean an input grating area, and the output optical member (not shown) may mean an output grating area. The input grating area may serve as an input terminal that diffracts (or reflects) light output from a display module (314-1, 314-2) (e.g., micro LED) to transmit it to a glass (e.g., a first glass (220), a second glass (230)). The output grating area may serve as an outlet that diffracts (or reflects) light transmitted to the glass (e.g., a first glass (220), a second glass (230)) of the optical waveguide (320, 330) to a user's eye.

일 실시예에서, 반사 요소는 전반사(TIR, total internal reflection)를 위한 전반사 광학 소자 또는 전반사 도파관을 포함할 수 있다. 전반사는 광을 유도하는 하나의 방식으로, 입력 그레이팅 영역을 통해 입력되는 빛(예: 가상 영상)이 광도파로(320, 330)의 일면(예: 지정된 면)에서 약 100% 반사되도록 입사각을 만들어, 출력 그레이팅 영역까지 약 100% 전달되도록 하는 것을 의미할 수 있다.In one embodiment, the reflective element may include a total internal reflection (TIR) optical element or waveguide for total internal reflection. Total internal reflection may mean a method of guiding light such that light (e.g., a virtual image) input through the input grating region is reflected about 100% from one side (e.g., a designated side) of the optical waveguide (320, 330) at an angle of incidence such that about 100% of the light is transmitted to the output grating region.

일 실시예에 따르면, 디스플레이 모듈(예: 314-1, 314-2)로부터 방출되는 광은 입력 광학 부재를 통해 광도파로(320, 330)로 광 경로가 유도될 수 있다. 광도파로(320, 330) 내부를 이동하는 광은 출력 광학 부재를 통해 사용자 눈 방향으로 유도될 수 있다. According to one embodiment, light emitted from a display module (e.g., 314-1, 314-2) may be guided along an optical path to an optical waveguide (320, 330) through an input optical member. Light traveling inside the optical waveguide (320, 330) may be guided toward a user's eyes through an output optical member.

일 실시예에 따르면, 디스플레이 모듈(314-1, 314-2)은 복수의 패널(또는 표시 영역)을 포함할 수 있고, 복수의 패널은 글래스(220, 230)에 위치할 수 있다. 일 실시예에 따르면, 디스플레이 모듈(314-1, 314-2)의 적어도 일부는 투명 소자로 구성될 수 있고, 사용자가 디스플레이 모듈(314-1, 314-2)을 투과하여, 디스플레이 모듈(314-1, 314-2)의 후면의 실제 공간을 인지할 수 있다. 일 실시예에 따르면, 디스플레이 모듈(314-1, 314-2)은 사용자에게 실제 현실 공간의 적어도 일부에 가상 객체(또는 가상 정보)가 덧붙여진 것으로 보이도록 투명 소자의 적어도 일부 영역에 가상 객체를 표시할 수 있다. 일 실시예에 따르면, 디스플레이 모듈(314-1, 314-2)이 투명 마이크로 엘이디인 경우 글래스(220, 230) 내에 광도파로(320, 330) 구성은 생략될 수 있다.According to one embodiment, the display module (314-1, 314-2) may include a plurality of panels (or display areas), and the plurality of panels may be positioned on the glass (220, 230). According to one embodiment, at least a portion of the display module (314-1, 314-2) may be formed of a transparent element, and a user may perceive an actual space behind the display module (314-1, 314-2) by seeing through the display module (314-1, 314-2). According to one embodiment, the display module (314-1, 314-2) may display a virtual object on at least a portion of the transparent element so that the user may see that the virtual object (or virtual information) is added to at least a portion of the actual real space. According to one embodiment, when the display module (314-1, 314-2) is a transparent micro LED, the optical waveguide (320, 330) configuration within the glass (220, 230) may be omitted.

일 실시예에 따르면, 웨어러블 전자 장치(201)는 복수 개의 카메라(예: 제1 카메라, 제2 카메라 및 제3 카메라)를 포함할 수 있다. 예를 들어, 제1 카메라(예: 도 2의 카메라 모듈(280))는 사용자의 시야각(FoV, field of view)에 대응되는 영상을 촬영하거나 및/또는 객체와의 거리를 측정하기 위한 촬영용 카메라(280)(예: RGB 카메라)일 수 있다. 제2 카메라는 사용자가 바라보는 시선의 방향을 확인하기 위한 시선 추적 카메라(eye tracking camera module)(312-1, 312-2)일 수 있다. 제3 카메라는 일정 공간을 인식하기 위한 인식용 카메라(gesture camera module)(311-1, 311-2)일 수 있다. According to one embodiment, the wearable electronic device (201) may include a plurality of cameras (e.g., a first camera, a second camera, and a third camera). For example, the first camera (e.g., the camera module (280) of FIG. 2) may be a camera (280) (e.g., an RGB camera) for capturing an image corresponding to a field of view (FoV) of a user and/or for measuring a distance to an object. The second camera may be an eye tracking camera module (312-1, 312-2) for confirming a direction of a user's gaze. The third camera may be a recognition camera (gesture camera module) (311-1, 311-2) for recognizing a certain space.

일 실시예에 따라, 촬영용 카메라(280)는 웨어러블 전자 장치(201)의 전면 방향을 촬영할 수 있고, 시선 추적 카메라(312-1, 312-2)는 촬영용 카메라(280)의 촬영 방향과 반대되는 방향을 촬영할 수 있다. 예를 들어, 제1 시선 추적 카메라(312-1)는 사용자의 좌안을 부분적으로 촬영하고, 제2 시선 추적 카메라(312-2)는 사용자의 우안을 부분적으로 촬영할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(201)는 촬영용 카메라(280)를 통해 획득한 실제 현실 공간과 관련된 영상 정보에 기반하여 AR 서비스와 관련된 가상 객체(또는 가상 정보)를 함께 표시할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(201)는 사용자의 양안에 대응하여 배치된 디스플레이 모듈(예: 좌안에 대응되는 제1 디스플레이 모듈(314-1), 및/또는 우안에 대응되는 제2 디스플레이 모듈(314-2))을 기반으로 가상 객체를 표시할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(201)는 미리 설정된 설정 정보(예: 해상도(resolution), 프레임 레이트(frame rate), 밝기, 및/또는 표시 영역)를 기반으로 가상 객체를 표시할 수 있다.According to one embodiment, the capturing camera (280) can capture a front direction of the wearable electronic device (201), and the gaze tracking cameras (312-1, 312-2) can capture a direction opposite to the capturing direction of the capturing camera (280). For example, the first gaze tracking camera (312-1) can partially capture the user's left eye, and the second gaze tracking camera (312-2) can partially capture the user's right eye. According to one embodiment, the wearable electronic device (201) can display a virtual object (or virtual information) related to an AR service together with image information related to an actual real space acquired through the capturing camera (280). According to one embodiment, the wearable electronic device (201) can display a virtual object based on display modules arranged to correspond to both eyes of the user (e.g., the first display module (314-1) corresponding to the left eye and/or the second display module (314-2) corresponding to the right eye). According to one embodiment, the wearable electronic device (201) may display a virtual object based on preset configuration information (e.g., resolution, frame rate, brightness, and/or display area).

일 실시예에 따르면, 촬영용 카메라(280)는 HR(high resolution) 카메라 및/또는 PV(photo video) 카메라와 같은 고해상도의 카메라를 포함할 수 있다. 예를 들어, 촬영용 카메라(280)는 오토 포커스 기능과 떨림 보정(OIS)과 같이 고화질의 영상을 획득하기 위해 활용될 수 있다. 촬영용 카메라(280)는 컬러(color) 카메라 이외에 GS(global shutter) 카메라 및 RS(rolling shutter) 카메라로 구현될 수도 있다.According to one embodiment, the camera for shooting (280) may include a high-resolution camera, such as a high-resolution (HR) camera and/or a photo video (PV) camera. For example, the camera for shooting (280) may be utilized to obtain high-quality images, such as with an auto-focus function and optical image stabilization (OIS). In addition to a color camera, the camera for shooting (280) may also be implemented as a global shutter (GS) camera and a rolling shutter (RS) camera.

일 실시예에 따르면, 시선 추적 카메라(312-1, 312-2)는 사용자의 시선 방향(예: 눈동자 움직임)을 감지할 수 있다. 예를 들어, 시선 추적 카메라(312-1, 312-2)는 사용자의 눈동자를 검출하여, 시선 방향을 추적할 수 있다. 일 실시예에서, 추적된 시선 방향은 가상 객체를 포함하는 가상 영상의 중심이 시선 방향에 대응하여 이동하는데 활용될 수 있다. 예를 들어, 시선 추적 카메라(312-1, 312-2)는 눈동자(pupil)를 검출하고 빠른 눈동자 움직임을 화면 끌림 없이 추적할 수 있도록 GS(global shutter) 카메라가 활용될 수 있으며, 각 시선 추적 카메라(312-1, 312-2)의 성능 및 규격이 실질적으로 동일할 수 있다.According to one embodiment, the gaze tracking camera (312-1, 312-2) can detect the gaze direction (e.g., eye movement) of the user. For example, the gaze tracking camera (312-1, 312-2) can detect the user's pupil and track the gaze direction. In one embodiment, the tracked gaze direction can be utilized to move the center of a virtual image including a virtual object in response to the gaze direction. For example, the gaze tracking camera (312-1, 312-2) can utilize a GS (global shutter) camera to detect the pupil and track rapid eye movement without screen tearing, and the performance and specifications of each gaze tracking camera (312-1, 312-2) can be substantially the same.

일 실시예에 따르면, 인식용 카메라(311-1, 311-2)는 미리 설정된 거리 이내(예: 일정 공간)에서의 사용자 제스처 및/또는 일정 공간을 감지할 수 있다. 일 실시예에 따르면, 인식용 카메라(311-1, 311-2)는 3DoF, 6DoF의 헤드 추적(head tracking), 핸드 검출 및/또는 핸드 추적(hand tracking)을 위해 사용될 수 있다. 예를 들어, 인식용 카메라(311-1, 311-2)는 6DoF를 위한 공간 인식, 뎁스(eepth) 촬영을 통한 슬램(SLAM, simultaneous localization and mapping) 기능을 수행하는데 활용될 수 있다. 어떤 실시예에 따르면, 인식용 카메라(311-1, 311-2)는 사용자 제스처를 인식하기 위한 제스처 인식 기능을 위해 활용될 수 있다. 인식용 카메라(311-1, 311-2)는 GS를 포함하는 카메라를 포함할 수 있다. 예를 들어, 인식용 카메라(311-1, 311-2)는 빠른 손동작 및/또는 손가락의 미세한 움직임을 검출 및 추적하기 위해, RS(rolling shutter) 카메라와 같이 화면 끌림이 적은(또는 RS 현상이 감소될 수 있는) GS를 포함하는 카메라를 포함할 수 있다.According to one embodiment, the recognition camera (311-1, 311-2) can detect a user gesture and/or a certain space within a preset distance (e.g., a certain space). According to one embodiment, the recognition camera (311-1, 311-2) can be used for head tracking, hand detection and/or hand tracking of 3DoF, 6DoF. For example, the recognition camera (311-1, 311-2) can be utilized to perform a space recognition for 6DoF, a simultaneous localization and mapping (SLAM) function through depth shooting. According to some embodiments, the recognition camera (311-1, 311-2) can be utilized for a gesture recognition function for recognizing a user gesture. The recognition camera (311-1, 311-2) can include a camera including a GS. For example, the recognition camera (311-1, 311-2) may include a camera including a GS with less screen drag (or in which the RS phenomenon can be reduced), such as a RS (rolling shutter) camera, to detect and track rapid hand movements and/or fine movements of fingers.

일 실시예에 따르면, 웨어러블 전자 장치(201)는 적어도 하나의 카메라(311-1, 311-2, 312-1, 312-2, 280)를 사용하여, 사용자의 좌안 및/또는 우안 중에서 주시안 및/또는 보조시안에 대응되는 눈을 감지할 수 있다. 예를 들어, 웨어러블 전자 장치(201)는 외부 객체 또는 가상 객체에 대한 사용자의 시선 방향에 기반하여, 주시안 및/또는 보조시안에 대응되는 눈을 감지할 수 있다.According to one embodiment, the wearable electronic device (201) can detect an eye corresponding to the dominant eye and/or the auxiliary eye among the left eye and/or the right eye of the user using at least one camera (311-1, 311-2, 312-1, 312-2, 280). For example, the wearable electronic device (201) can detect an eye corresponding to the dominant eye and/or the auxiliary eye based on a direction of the user's gaze with respect to an external object or a virtual object.

도 3에 예시된 웨어러블 전자 장치(201)에 포함되는 적어도 하나의 카메라(예: 촬영용 카메라(280), 시선 추적 카메라(312-1, 312-2) 및/또는 인식용 카메라(311-1, 311-2))의 개수 및 위치는 한정되지 않을 수 있다. 예를 들어, 웨어러블 전자 장치(201)의 형태(예: 모양 또는 크기)에 기반하여 적어도 하나의 카메라(예: 촬영용 카메라(280), 시선 추적 카메라(312-1, 312-2) 및/또는 인식용 카메라(311-1, 311-2))의 개수 및 위치는 다양하게 변경될 수 있다.The number and position of at least one camera (e.g., a camera for shooting (280), a gaze tracking camera (312-1, 312-2), and/or a camera for recognition (311-1, 311-2)) included in the wearable electronic device (201) illustrated in FIG. 3 may not be limited. For example, the number and position of at least one camera (e.g., a camera for shooting (280), a gaze tracking camera (312-1, 312-2), and/or a camera for recognition (311-1, 311-2)) may be variously changed based on the form (e.g., shape or size) of the wearable electronic device (201).

일 실시예에 따르면, 웨어러블 전자 장치(201)는 적어도 하나의 카메라(예: 촬영용 카메라(280), 시선 추적 카메라(312-1, 312-2) 및/또는 인식용 카메라(311-1, 311-2))의 정확도를 높이기 위한 적어도 하나의 조명 부재(또는 발광 장치(illumination LED))(예: 제1 조명 부재(342-1), 제2 조명 부재(342-2))를 포함할 수 있다. 예를 들어, 제1 조명 부재(342-1)는 사용자의 좌안에 대응하는 부분에 배치될 수 있고, 제2 조명 부재(342-2)는 사용자의 우안에 대응하는 부분에 배치될 수 있다.According to one embodiment, the wearable electronic device (201) may include at least one lighting member (or illumination LED) (e.g., a first lighting member (342-1), a second lighting member (342-2)) to increase the accuracy of at least one camera (e.g., a shooting camera (280), an eye-tracking camera (312-1, 312-2), and/or a recognition camera (311-1, 311-2)). For example, the first lighting member (342-1) may be positioned at a portion corresponding to the user's left eye, and the second lighting member (342-2) may be positioned at a portion corresponding to the user's right eye.

일 실시예에 따라, 조명 부재(342-1, 342-2)는 웨어러블 전자 장치(201)에 부착되는 위치에 따라 각각 다른 용도로 활용될 수 있다. 일 실시예에서, 조명 부재(342-1, 342-2)는 시선 추적 카메라(312-1, 312-2)로 사용자의 눈동자를 촬영할 때 정확도(예: 시선 게이즈(eye gaze) 검출의 용이)를 높이기 위한 보조 수단으로 사용될 수 있고, 적외선 파장의 광을 발생시키는 IR LED를 포함할 수 있다. 일 실시예에서, 조명 부재(342-1, 342-2)는 인식용 카메라(311-1, 311-2)로 사용자의 제스처를 촬영할 때 어두운 환경이나 여러 광원의 혼입 및 반사 빛 때문에 촬영하고자 하는 피사체 검출이 용이하지 않을 때 주변 밝기를 보충하는 보조 수단으로 사용될 수 있다. According to one embodiment, the lighting elements (342-1, 342-2) may be utilized for different purposes depending on the location where they are attached to the wearable electronic device (201). In one embodiment, the lighting elements (342-1, 342-2) may be used as an auxiliary means to increase accuracy (e.g., ease of eye gaze detection) when capturing a user's pupil with an eye tracking camera (312-1, 312-2), and may include an IR LED that generates light of an infrared wavelength. In one embodiment, the lighting elements (342-1, 342-2) may be used as an auxiliary means to supplement ambient brightness when it is difficult to detect a subject to be captured due to a dark environment or mixing and reflection of multiple light sources when capturing a user's gesture with a recognition camera (311-1, 311-2).

일 실시예에 따르면, 웨어러블 전자 장치(201)는 사용자의 음성 및 주변 소리를 수신하기 위한 마이크(예: 제1 마이크(341-1), 제2 마이크(341-2) 및 제3 마이크(341-3))를 포함할 수 있다. According to one embodiment, the wearable electronic device (201) may include a microphone (e.g., a first microphone (341-1), a second microphone (341-2), and a third microphone (341-3)) for receiving a user's voice and ambient sounds.

일 실시예에 따르면, 제1 지지 프레임(260)(또는 제1 하우징) 및/또는 제2 지지 프레임(270)(제2 하우징)은 인쇄 회로 기판(PCB, printed circuit board)(예: 제1 인쇄 회로 기판(331-1), 제2 인쇄 회로 기판(331-2)), 오디오 신호를 출력하기 위한 스피커(speaker)(예: 제1 스피커(332-1), 제2 스피커(332-2)), 배터리(예: 제1 배터리(333-1), 제2 배터리(333-2)), 및/또는 힌지부(예: 제1 힌지부(340-1), 제2 힌지부(340-2))를 포함할 수 있다. According to one embodiment, the first support frame (260) (or the first housing) and/or the second support frame (270) (the second housing) may include a printed circuit board (PCB) (e.g., a first printed circuit board (331-1), a second printed circuit board (331-2)), a speaker for outputting an audio signal (e.g., a first speaker (332-1), a second speaker (332-2)), a battery (e.g., a first battery (333-1), a second battery (333-2)), and/or a hinge part (e.g., a first hinge part (340-1), a second hinge part (340-2)).

일 실시예에 따라, 인쇄 회로 기판(331-1, 331-2)은 플렉서블 기판(예: FPCB, flexible PCB)을 포함할 수 있다. 인쇄 회로 기판(331-1, 331-2)은 웨어러블 전자 장치(201)의 각 구성 요소(예: 카메라, 디스플레이 모듈, 마이크, 및/또는 스피커)에 전기 신호를 전달할 수 있다. According to one embodiment, the printed circuit board (331-1, 331-2) may include a flexible board (e.g., FPCB, flexible PCB). The printed circuit board (331-1, 331-2) may transmit electrical signals to each component (e.g., a camera, a display module, a microphone, and/or a speaker) of the wearable electronic device (201).

일 실시예에 따라, 스피커(332-1, 332-2)는 사용자의 좌측 귀에 오디오 신호를 전달하기 위한 제1 스피커(332-1) 및 사용자의 우측 귀에 오디오 신호를 전달하기 위한 제2 스피커(332-2)를 포함할 수 있다. According to one embodiment, the speakers (332-1, 332-2) may include a first speaker (332-1) for transmitting an audio signal to the user's left ear and a second speaker (332-2) for transmitting an audio signal to the user's right ear.

일 실시예에 따라, 배터리(333-1, 333-2)는 전력 관리 모듈(예: 도 1의 전력 관리 모듈(188))을 통해, 인쇄 회로 기판(331-1, 331-2)에 전력을 공급할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(201)는 제1 지지 프레임(260) 및 제2 지지 프레임(270)을 통해, 복수 개의 배터리(333-1, 333-2)를 구비할 수 있고, 전력 관리 모듈을 통해, 인쇄 회로 기판(331-1, 331-2)에 전력을 공급할 수 있다. 예를 들어, 복수 개의 배터리(333-1, 333-2)는 전력 관리 모듈과 전기적으로 연결될 수 있다.According to one embodiment, the batteries (333-1, 333-2) may supply power to the printed circuit board (331-1, 331-2) through a power management module (e.g., the power management module (188) of FIG. 1). According to one embodiment, the wearable electronic device (201) may have a plurality of batteries (333-1, 333-2) through the first support frame (260) and the second support frame (270), and may supply power to the printed circuit board (331-1, 331-2) through the power management module. For example, the plurality of batteries (333-1, 333-2) may be electrically connected to the power management module.

도시하지는 않았으나, 도 2 및 도 3의 예시와 같은 웨어러블 전자 장치(201)는 지정된 외부 장치(예: 케이스(case))(미도시)에 의해 수납될 수 있다. 일 실시예에 따라, 케이스는 웨어러블 전자 장치(201)를 단순히 보관하고 충전하는 기능을 포함할 수 있다. 어떤 실시예에 따르면, 케이스는 웨어러블 전자 장치(201)의 충전 및 보관 용도에 더하여, 카메라 및/또는 프로세서와 같은 구성 요소를 포함할 수 있고, 이러한 구성 요소를 이용하여 웨어러블 전자 장치(201)의 보조 연산 장치로 사용될 수도 있다. 예를 들어, 웨어러블 전자 장치(201)는 케이스에 수납 시에, 케이스와 통신(예: 유선 통신 및/또는 무선 통신)을 수행할 수 있고, 케이스는 호스트 디바이스(host device)(예: 스마트 폰)의 기능을 일부 수행할 수 있다.Although not illustrated, a wearable electronic device (201) such as the examples of FIGS. 2 and 3 may be stored by a designated external device (e.g., a case) (not illustrated). According to one embodiment, the case may include a function of simply storing and charging the wearable electronic device (201). According to some embodiments, in addition to the purpose of charging and storing the wearable electronic device (201), the case may include components such as a camera and/or a processor, and may be used as an auxiliary computing device of the wearable electronic device (201) by utilizing these components. For example, when the wearable electronic device (201) is stored in the case, the case may communicate with the case (e.g., wired communication and/or wireless communication), and the case may perform some functions of a host device (e.g., a smart phone).

일 실시예에 따르면, 웨어러블 전자 장치(201)는 단독 또는 적어도 하나의 다른 전자 장치(예: 호스트 디바이스(예: 전자 장치(101))와 연동하여, AR 서비스를 제공할 수 있다. 예를 들어, 웨어러블 전자 장치(201)는 호스트 디바이스(예: 도 4a의 다른 전자 장치(401))에 연결되고, 호스트 디바이스를 통해 네트워크(예: 클라우드)에 연결하는 테더드(tethered) AR 방식으로 동작하여 AR 서비스를 제공할 수 있다. 어떤 실시예에 따르면, 웨어러블 전자 장치(201)는 호스트 디바이스(예: 전자 장치(101))와 연결 없이 단독(standalone)으로 네트워크(예: 클라우드)에 연결하는 방식으로 동작하여 AR 서비스를 제공할 수도 있다.According to one embodiment, the wearable electronic device (201) may provide an AR service by itself or in conjunction with at least one other electronic device (e.g., a host device (e.g., the electronic device (101)). For example, the wearable electronic device (201) may be connected to a host device (e.g., another electronic device (401) of FIG. 4A) and may operate in a tethered AR manner to provide an AR service by connecting to a network (e.g., a cloud) through the host device. According to some embodiments, the wearable electronic device (201) may also operate in a standalone manner to provide an AR service by connecting to a network (e.g., a cloud) without being connected to a host device (e.g., the electronic device (101)).

도 4a는 일 실시예에 따른 전자 장치와 다른 전자 장치 간의 네트워크 환경을 도시한 도면이다.FIG. 4A is a diagram illustrating a network environment between an electronic device and another electronic device according to one embodiment.

도 4a를 참조하면, 일 실시예에 따른 전자 장치(101)(예: 도 2 또는 도 3의 웨어러블 전자 장치(201))는 다른 전자 장치(401)와 연결될 수 있다. 전자 장치(101)와 다른 전자 장치(401)는 유선으로 연결되거나 또는 무선으로 연결(예: 페어링)될 수 있다. 예를 들어, 전자 장치(101)는 블루투스, 저전력 블루투스, 와이파이(Wi-Fi), 와이파이 다이렉트(direct) 또는 UWB(ultra-wide band)와 같은 근거리 무선 통신(403)을 통해 다른 전자 장치(401)와 연결될 수 있다. 일 실시예에 따라, 다른 전자 장치(401)는 스마트 폰, 태블릿(tablet) PC(personal computer), 노트북(notebook), 및/또는 디스플레이 장치(예: 모니터 또는 TV)를 포함할 수 있다. 일 실시예에 따라, 전자 장치(101)는 AR 글래스(glasses), 스마트 글래스(smart glasses), 또는 헤드 마운트 장치(HMD, head mounted display)를 포함할 수 있다.Referring to FIG. 4A, an electronic device (101) according to one embodiment (e.g., the wearable electronic device (201) of FIG. 2 or FIG. 3) may be connected to another electronic device (401). The electronic device (101) and the other electronic device (401) may be connected by wire or connected wirelessly (e.g., paired). For example, the electronic device (101) may be connected to the other electronic device (401) via short-range wireless communication (403) such as Bluetooth, low-power Bluetooth, Wi-Fi, Wi-Fi direct, or ultra-wide band (UWB). According to one embodiment, the other electronic device (401) may include a smart phone, a tablet PC (personal computer), a notebook, and/or a display device (e.g., a monitor or a TV). According to one embodiment, the electronic device (101) may include AR glasses, smart glasses, or a head mounted display (HMD).

일 실시예에 따르면, 전자 장치(101)는 AR 서비스를 위해 관련 데이터(예: AR 영상)를 직접 생성하거나(예: 저장 또는 처리된 데이터에 기반하여 생성) 또는 외부(예: 다른 전자 장치(401) 또는 서버(예: 도 1의 서버(108))로부터 획득하여, 디스플레이(예: 도 1의 디스플레이 모듈(160))을 통해 표시할 수 있다. 예를 들면, 전자 장치(101)는 사용자의 신체(예: 얼굴)에 착용 가능하며, 현실 세계 위에 다양한 디지털 컨텐츠(예: AR 이미지)를 겹쳐서 디스플레이 모듈(160)을 통해 하나의 영상(예: AR 화면)으로 표시할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 다른 전자 장치(401)로부터 영상 데이터(예: AR 영상)를 수신하고, 수신된 영상 데이터를 디스플레이 모듈(160)을 통해 현실 세계의 다양한 객체와 함께 표시할 수 있다. According to one embodiment, the electronic device (101) may directly generate related data (e.g., AR images) for AR service (e.g., generate based on stored or processed data) or obtain the data from an external source (e.g., another electronic device (401) or a server (e.g., server (108) of FIG. 1)) and display the data through a display (e.g., display module (160) of FIG. 1). For example, the electronic device (101) may be worn on a user's body (e.g., face) and may display various digital contents (e.g., AR images) overlapping the real world as a single image (e.g., AR screen) through the display module (160). According to one embodiment, the electronic device (101) may receive image data (e.g., AR images) from another electronic device (401) and display the received image data together with various objects of the real world through the display module (160).

일 실시예에 따르면, 전자 장치(101)는 다른 전자 장치(401)와 통신 연결 시, 전자 장치(101)의 카메라 모듈(예: 도 1의 카메라 모듈(180))을 통해 촬영된 영상 정보, 사용자의 시선 정보(예: FOV 및/또는 AOV)를 다른 전자 장치(401)로 주기적으로 전송하거나, 및/또는 전자 장치(101)의 상태 변화(예: 위치 또는 방향의 변화)가 발생되는 경우 다른 전자 장치(101)로 전송할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 다른 전자 장치(401)와 연결 시에 다른 전자 장치(401)로 영상 정보, 시선 정보, 장치 정보, 센싱 정보, 기능 정보 및/또는 위치 정보와 같은 적어도 하나의 정보를 제공(예: 전송)할 수 있다. According to one embodiment, when the electronic device (101) is in communication connection with another electronic device (401), the electronic device (101) may periodically transmit image information captured by a camera module (e.g., the camera module (180) of FIG. 1) of the electronic device (101), and user's line of sight information (e.g., FOV and/or AOV) to the other electronic device (401), and/or when a change in the state of the electronic device (101) (e.g., a change in position or direction) occurs, the electronic device (101) may transmit the information to the other electronic device (101). According to one embodiment, when the electronic device (101) is connected to another electronic device (401), the electronic device (101) may provide (e.g., transmit) at least one piece of information, such as image information, line of sight information, device information, sensing information, function information, and/or location information, to the other electronic device (401).

도 4b는 일 실시예에 따른 전자 장치에서 가상 환경을 표시하는 예를 도시하는 도면이다.FIG. 4b is a diagram illustrating an example of displaying a virtual environment in an electronic device according to one embodiment.

일 실시예에서, 도 4b는 사용자가 전자 장치(101)를 착용하고, 전자 장치(101)의 디스플레이 모듈(160)을 통해 제공되는 AR 화면을 보고 있는 상태를 나타낼 수 있다. 예를 들면, 도 4b는 사용자가 전자 장치(101)의 AR 화면을 통해 현실 공간(400)(또는 가상 환경)의 적어도 일부에 겹쳐진 컨텐츠(410)(또는 가상 객체 또는 증강 현실 이미지)를 보고 있는 상태를 나타낼 수 있다. 일 실시예에 따라, 컨텐츠(410)는 사용자의 시야각(FOV)(430) 상에서 보여지는 가상 객체를 포함할 수 있다. 일 실시예에서, 컨텐츠(410)(또는 증강 현실 이미지)는 전자 장치(101)를 착용한 사용자가 위치한 실제 현실 공간(400)에 적어도 하나의 어플리케이션에 대응하는 그래픽 데이터가 가상 객체로서 제공되는 것일 수 있다.In one embodiment, FIG. 4B may represent a state in which a user wears an electronic device (101) and views an AR screen provided through a display module (160) of the electronic device (101). For example, FIG. 4B may represent a state in which a user views content (410) (or a virtual object or an augmented reality image) superimposed on at least a portion of a real space (400) (or a virtual environment) through the AR screen of the electronic device (101). According to one embodiment, the content (410) may include a virtual object shown on a field of view (FOV) (430) of the user. In one embodiment, the content (410) (or the augmented reality image) may be graphic data corresponding to at least one application provided as a virtual object in a real real space (400) in which a user wearing the electronic device (101) is located.

도 4b를 참조하면, 전자 장치(101)는 사용자에 의해 착용되고, 전자 장치(101)의 디스플레이 모듈(160)을 통해 현실 공간(400)의 적어도 일부에 하나 이상의 컨텐츠(410)(또는 컨텐츠에 관련된 가상 객체(또는 정보))를 표시하고 있는 상황일 수 있다. 예를 들어, 전자 장치(101)는 사용자의 시야각(430)에 대응하는 실제 현실 공간(400)에 적어도 하나의 가상 정보를 겹쳐서 사용자에게 제공할 수 있다. 일 실시예에서, 컨텐츠(410)를 표시하고 있는 상황은, 예를 들면, 실제 현실 공간(400)의 실제 객체에 대해 사용자가 제스처(gesture) 입력 및/또는 시선 게이즈(eye gaze)를 수행한 경우, 검색 기능을 수행할 수 있는 어플리케이션(예: 브라우저, 쇼핑 앱, 및/또는 SNS)의 실행 화면을 표시하는 상황, 미디어 컨텐츠를 재생하기 위한 어플리케이션(예: 플레이어)의 실행 화면(예: 동영상 재생 화면 또는 이미지 재생 화면)을 표시하는 상황, 및/또는 가상 공간 상에서 사용자에 의한 지정된 시뮬레이션 실행 상황(예: 협업 툴 사용 상황 또는 게임 플레이 상황)을 포함할 수 있다. 예를 들어, 컨텐츠(410)는 제1 어플리케이션에 대응하는 가상 정보(또는 가상 객체 또는 그래픽 이미지), 제2 어플리케이션에 대응하는 가상 정보, 및/또는 제3 어플리케이션에 대응하는 가상 정보와 같이, 각각 대응하는 어플리케이션에 의해 제공 가능한 정보를 포함할 수 있다.Referring to FIG. 4b, the electronic device (101) may be worn by a user and may display one or more contents (410) (or virtual objects (or information) related to the contents) on at least a part of a real space (400) through a display module (160) of the electronic device (101). For example, the electronic device (101) may provide at least one virtual information to the user by overlapping the real real space (400) corresponding to the user's field of view (430). In one embodiment, a situation in which content (410) is displayed may include, for example, a situation in which a user performs a gesture input and/or an eye gaze on a real object in a real space (400), a situation in which an execution screen of an application (e.g., a browser, a shopping app, and/or an SNS) capable of performing a search function is displayed, a situation in which an execution screen of an application (e.g., a player) for playing media content is displayed (e.g., a video playback screen or an image playback screen), and/or a situation in which a user executes a specified simulation in a virtual space (e.g., a collaboration tool usage situation or a game play situation). For example, the content (410) may include information that can be provided by each corresponding application, such as virtual information (or a virtual object or a graphic image) corresponding to a first application, virtual information corresponding to a second application, and/or virtual information corresponding to a third application.

일 실시예에 따르면, 전자 장치(101)는 컨텐츠(410)가 제공된 상태에서 사용자의 시선(430)을 추적하여 사용자의 시선(430)에 대응하는 적어도 하나의 현실 공간(400)의 실제 객체에 관련된 가상 정보 또는 사용자에 의해 실행 지정된 어플리케이션의 실행 화면을 디스플레이 모듈(160)을 통해 AR 화면(또는 가상 환경 또는 실행 화면)으로 제공할 수 있다. 예를 들면, 사용자는 전자 장치(101)를 이용하여 실제 현실 공간(400)에서 다양한 실제 객체에 대응하는 컨텐츠(410)를 사용자의 시선(430) 이동에 따라 AR 서비스를 이용할 수 있다.According to one embodiment, the electronic device (101) may track the user's gaze (430) while the content (410) is provided, and provide virtual information related to at least one real object in the real space (400) corresponding to the user's gaze (430) or an execution screen of an application executed by the user as an AR screen (or virtual environment or execution screen) through the display module (160). For example, the user may use the electronic device (101) to use an AR service by displaying content (410) corresponding to various real objects in the real space (400) according to the movement of the user's gaze (430).

도 5는 일 실시예에 따른 전자 장치의 구성을 개략적으로 도시하는 도면이다.FIG. 5 is a diagram schematically illustrating the configuration of an electronic device according to one embodiment.

일 실시예에 따라, 도 5에서는 전자 장치(101)가 안경 형태의 웨어러블 전자 장치(예: 도 2 또는 도 3의 웨어러블 전자 장치(201))인 예를 도시하고 있으나, 이에 제한하는 것은 아니다. 일 실시예에 따르면, 전자 장치(101)는 도 1 내지 도 3을 참조한 설명 부분에서 설명한 바와 같은 전자 장치(101) 및 웨어러블 전자 장치(201)의 구성 요소를 포함할 수 있다. 이하에서는, 웨어러블 전자 장치(101)라는 용어는 도 1의 전자 장치(101) 및 도 2 또는 도 3의 웨어러블 전자 장치(201)를 포함하는 용어로 사용될 수 있다.According to one embodiment, FIG. 5 illustrates an example in which the electronic device (101) is a wearable electronic device in the form of glasses (e.g., the wearable electronic device (201) of FIG. 2 or FIG. 3), but is not limited thereto. According to one embodiment, the electronic device (101) may include components of the electronic device (101) and the wearable electronic device (201) as described in the description with reference to FIGS. 1 to 3. Hereinafter, the term wearable electronic device (101) may be used as a term including the electronic device (101) of FIG. 1 and the wearable electronic device (201) of FIG. 2 or FIG. 3.

도 5를 참조하면, 웨어러블 전자 장치(101)는 프로세서(120), 메모리(130), 디스플레이 모듈(160), 오디오 모듈(170), 센서 모듈(176), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 안테나 모듈(197) 및/또는 충전 안테나 모듈(540)을 포함할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)는 연결 단자(530)(예: USB TYPE-C)를 통해, 외부 전자 장치(미도시)와 연결될 수 있다. 예를 들어, 웨어러블 전자 장치(101)의 전력 관리 모듈(188)은 연결 단자(530)를 통해 외부 전자 장치로부터 전력을 수신하여 배터리(189)를 충전할 수 있다. 예를 들어, 웨어러블 전자 장치(101)의 프로세서(120)는 연결 단자(530)를 통해 외부 전자 장치와 전력선 통신을 수행할 수 있다. 예를 들어, 웨어러블 전자 장치(101)의 전력 관리 모듈(188)은 충전 안테나 모듈(540)을 통해 외부 전자 장치로부터 무선으로 전력을 수신하여 배터리(189)를 충전할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)는 메인 프레임(또는 본체부)(예: 도 2 또는 도 3의 메인 프레임(240))과 지지 프레임(또는 다리 부재)(예: 도 2 또는 도 3의 제1 지지 프레임(260), 및/또는 제2 지지 프레임(270))으로 구성될 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)의 구성 요소들은 메인 프레임(240) 및/또는 지지 프레임(260, 270)에 배치될 수 있다. Referring to FIG. 5, the wearable electronic device (101) may include a processor (120), a memory (130), a display module (160), an audio module (170), a sensor module (176), a camera module (180), a power management module (188), a battery (189), a communication module (190), an antenna module (197), and/or a charging antenna module (540). According to one embodiment, the wearable electronic device (101) may be connected to an external electronic device (not shown) through a connection terminal (530) (e.g., USB TYPE-C). For example, the power management module (188) of the wearable electronic device (101) may receive power from an external electronic device through the connection terminal (530) and charge the battery (189). For example, the processor (120) of the wearable electronic device (101) may perform power line communication with an external electronic device through the connection terminal (530). For example, the power management module (188) of the wearable electronic device (101) may wirelessly receive power from an external electronic device through the charging antenna module (540) to charge the battery (189). According to one embodiment, the wearable electronic device (101) may be composed of a main frame (or body) (e.g., the main frame (240) of FIG. 2 or FIG. 3) and a support frame (or leg member) (e.g., the first support frame (260) and/or the second support frame (270) of FIG. 2 or FIG. 3). According to one embodiment, components of the wearable electronic device (101) may be arranged in the main frame (240) and/or the support frames (260, 270).

일 실시예에 따르면, 프로세서(120)는 메모리(130)에 저장된 프로그램을 실행하여, 적어도 하나의 다른 구성 요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 사용자에게 증강 현실 서비스를 제공할 수 있다. 프로세서(120)는 디스플레이 모듈(160)을 통해, 웨어러블 전자 장치(101)를 착용한 사용자의 시야각에 대응하는 실제 공간에, 적어도 하나의 가상 객체가 덧붙여 보여지도록 적어도 하나의 가상 객체를 출력할 수 있다. According to one embodiment, the processor (120) may execute a program stored in the memory (130) to control at least one other component (e.g., hardware or software component) and perform various data processing or calculations. According to one embodiment, the processor (120) may provide an augmented reality service to a user. The processor (120) may output at least one virtual object so that the at least one virtual object is superimposed and displayed in a real space corresponding to a field of view of a user wearing the wearable electronic device (101) through the display module (160).

일 실시예에 따르면, 메모리(130)는, 웨어러블 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서 모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 도 1의 프로그램(140)) 및, 이와 관련된 명령(command)에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(미도시) 또는 비휘발성 메모리(미도시)를 포함할 수 있다. 메모리(130)는, 실행 시에, 프로세서(120)가 동작하도록 하는 인스트럭션들(instructions)을 저장할 수 있다. 인스트럭션들은 메모리(130) 상에 소프트웨어(예: 도 1의 프로그램(140))로서 저장될 수 있고, 프로세서(120)에 의해 실행 가능할 수 있다.According to one embodiment, the memory (130) may store various data used by at least one component (e.g., the processor (120) or the sensor module (176)) of the wearable electronic device (101). The data may include, for example, software (e.g., the program (140) of FIG. 1) and input data or output data for commands related thereto. The memory (130) may include volatile memory (not shown) or non-volatile memory (not shown). The memory (130) may store instructions that cause the processor (120) to operate when executed. The instructions may be stored as software (e.g., the program (140) of FIG. 1) on the memory (130) and may be executable by the processor (120).

디스플레이 모듈(160)은 웨어러블 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 디스플레이 모듈(160)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)의 디스플레이 모듈(160)은 적어도 하나의 글래스(예: 도 2 또는 도 3의 제1 글래스(220)) 및/또는 제2 글래스(230))를 포함할 수 있다. 일 실시예에 따르면, 제1 글래스(220)는 제1 디스플레이 모듈(551)의 적어도 일부를 포함하고, 제2 글래스(230)는 제2 디스플레이 모듈(553)의 적어도 일부를 포함할 수 있다. 예를 들어, 제1 디스플레이 모듈(551) 및/또는 제2 디스플레이 모듈(553)은 각각 디스플레이 패널을 포함할 수 있다. 디스플레이 패널은 사용자가 디스플레이 모듈(160)을 통해 실제 공간을 인지할 수 있도록 투명 소자로 구성될 수 있다. 디스플레이 모듈(160)은 웨어러블 전자 장치(101)를 착용한 사용자가 실제 공간에 가상 객체가 덧붙여진 것으로 보여지도록 디스플레이 패널의 적어도 일부에 적어도 하나의 가상 객체를 표시할 수 있다. The display module (160) can visually provide information to an external (e.g., a user) portion of the wearable electronic device (101). The display module (160) can include, for example, a display, a holographic device, or a projector and a control circuit for controlling the device. According to one embodiment, the display module (160) of the wearable electronic device (101) can include at least one glass (e.g., the first glass (220) of FIG. 2 or FIG. 3) and/or the second glass (230)). According to one embodiment, the first glass (220) can include at least a portion of the first display module (551), and the second glass (230) can include at least a portion of the second display module (553). For example, the first display module (551) and/or the second display module (553) can each include a display panel. The display panel may be composed of a transparent element so that a user can perceive an actual space through the display module (160). The display module (160) may display at least one virtual object on at least a portion of the display panel so that a user wearing the wearable electronic device (101) sees the virtual object as being added to an actual space.

예를 들어, 사용자의 시야각은 사용자가 사물을 인식할 수 있는 각도 및/또는 범위를 포함할 수 있다. 일 실시예에 따르면, 디스플레이 모듈(160)은 사용자의 양안 중 좌안에 대응되는 제1 디스플레이 모듈(551) 및/또는 우안에 대응되는 제2 디스플레이 모듈(553)을 포함할 수 있다. 일 실시예에 따르면, 프로세서(120)는 디스플레이 모듈(160)의 성능과 관련된 설정 정보(예: 해상도(resolution), 프레임 레이트(frame rate), 표시 영역의 크기, 및/또는 선명도(sharpness))를 메모리(130)로부터 로딩할 수 있고, 상기 설정 정보를 기반으로 디스플레이 모듈(160)의 성능을 조정할 수 있다. For example, the user's field of view may include an angle and/or range at which the user can recognize an object. According to one embodiment, the display module (160) may include a first display module (551) corresponding to the left eye of the user and/or a second display module (553) corresponding to the right eye. According to one embodiment, the processor (120) may load setting information (e.g., resolution, frame rate, size of the display area, and/or sharpness) related to the performance of the display module (160) from the memory (130), and adjust the performance of the display module (160) based on the setting information.

일 실시예에 따르면, 디스플레이 모듈(160)에 포함된 각각의 디스플레이 패널은 개별적으로 설정 정보가 결정될 수 있다. 예를 들어, 좌안에 대응되는 제1 디스플레이 패널은 제1 설정 정보를 기반으로 설정될 수 있고, 우안에 대응되는 제2 디스플레이 패널은 제2 설정 정보를 기반으로 설정될 수 있다. 일 실시예에 따르면, 상기 설정 정보는 디스플레이 모듈(160)에 포함된 하나의 디스플레이 패널의 적어도 일부를 다르게 설정할 수 있다. 예를 들어, 웨어러블 전자 장치(101)는 디스플레이 모듈(160)에 대한 해상도(resolution), 프레임 레이트(frame rate), 및/또는 선명도(sharpness) 중 적어도 하나를 다르게 설정할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)는 디스플레이 모듈(160)의 설정을 적어도 부분적으로 변경함으로써, 소모 전력을 줄일 수 있다.According to one embodiment, each display panel included in the display module (160) may have individually determined setting information. For example, a first display panel corresponding to the left eye may be set based on the first setting information, and a second display panel corresponding to the right eye may be set based on the second setting information. According to one embodiment, the setting information may set at least a portion of one display panel included in the display module (160) differently. For example, the wearable electronic device (101) may set at least one of the resolution, the frame rate, and/or the sharpness of the display module (160) differently. According to one embodiment, the wearable electronic device (101) may reduce power consumption by at least partially changing the setting of the display module (160).

일 실시예에 따르면, 오디오 모듈(170)은 프로세서(120)의 제어에 기반하여, 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 예를 들어, 오디오 모듈(170)은 도 3의 스피커(332-1, 332-2) 및/또는 도 3의 마이크(예: 제1 마이크(341-1), 제2 마이크(341-2) 및 제3 마이크(341-3))를 포함할 수 있다.According to one embodiment, the audio module (170) may convert sound into an electric signal or, conversely, convert an electric signal into sound based on the control of the processor (120). For example, the audio module (170) may include a speaker (332-1, 332-2) of FIG. 3 and/or a microphone (e.g., a first microphone (341-1), a second microphone (341-2), and a third microphone (341-3)) of FIG. 3.

센서 모듈(176)은 웨어러블 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)의 센서 모듈(176)은 근접 센서(521), 조도 센서(522), 및/또는 자이로 센서(523)를 포함할 수 있다. The sensor module (176) can detect an operating state (e.g., power or temperature) of the wearable electronic device (101) or an external environmental state (e.g., user state) and generate an electrical signal or data value corresponding to the detected state. According to one embodiment, the sensor module (176) of the wearable electronic device (101) can include a proximity sensor (521), an illuminance sensor (522), and/or a gyro sensor (523).

일 실시예에 따르면, 근접 센서(521)는 웨어러블 전자 장치(101)에 인접하는 객체를 감지할 수 있다. According to one embodiment, the proximity sensor (521) can detect an object adjacent to the wearable electronic device (101).

일 실시예에 따르면, 조도 센서(522)는 웨어러블 전자 장치(101) 주변의 밝기 정도를 측정할 수 있다. 일 실시예에 따르면, 프로세서(120)는 조도 센서(522)를 사용하여 웨어러블 전자 장치(101) 주변의 밝기 정도를 확인하고, 상기 밝기 정도를 기반으로 디스플레이 모듈(160)의 밝기 관련 설정 정보를 변경할 수 있다. 예를 들어, 주변의 밝기가 기 설정된 밝기보다 더 밝으면, 프로세서(120)는 사용자의 시인성이 높아지도록 디스플레이 모듈(160)의 밝기 정도를 보다 높게 설정할 수 있다. According to one embodiment, the light sensor (522) can measure the brightness level around the wearable electronic device (101). According to one embodiment, the processor (120) can check the brightness level around the wearable electronic device (101) using the light sensor (522) and change brightness-related setting information of the display module (160) based on the brightness level. For example, if the brightness of the surroundings is brighter than a preset brightness, the processor (120) can set the brightness level of the display module (160) higher so as to increase the user's visibility.

일 실시예에 따르면, 자이로 센서(523)는 웨어러블 전자 장치(101)의 자세 및 위치를 감지할 수 있다. 예를 들어, 자이로 센서(523)는 웨어러블 전자 장치(101)가 사용자의 머리에 올바르게 착용되었는지 여부를 감지할 수 있다. 예를 들어, 자이로 센서(523)는 웨어러블 전자 장치(101) 또는 웨어러블 전자 장치(101)를 착용한 사용자의 움직임을 감지할 수 있다. 예를 들어, 자이로 센서(523)는 웨어러블 전자 장치(101)의 지지 프레임(예: 도 2 또는 도 3의 제1 지지 프레임(260), 및/또는 제2 지지 프레임(270))의 움직임을 감지할 수 있다. In one embodiment, the gyro sensor (523) can detect the posture and position of the wearable electronic device (101). For example, the gyro sensor (523) can detect whether the wearable electronic device (101) is properly worn on the user's head. For example, the gyro sensor (523) can detect movement of the wearable electronic device (101) or a user wearing the wearable electronic device (101). For example, the gyro sensor (523) can detect movement of a support frame (e.g., the first support frame (260) of FIG. 2 or FIG. 3, and/or the second support frame (270)) of the wearable electronic device (101).

일 실시예에 따르면, 웨어러블 전자 장치(101)의 센서 모듈(176)은 가속도 센서 및/또는 홀 센서를 포함할 수 있다. 일 실시예에 따르면, 가속도 센서는, 웨어러블 전자 장치(101)의 지지 프레임(예: 도 2 또는 도 3의 제1 지지 프레임(260), 및/또는 제2 지지 프레임(270))의 움직임을 감지할 수 있다. 일 실시예에 따르면, 홀 센서는 자기장의 변화를 감지하여, 웨어러블 전자 장치(101)의 지지 프레임(예: 도 2 또는 도 3의 제1 지지 프레임(260), 및/또는 제2 지지 프레임(270))의 움직임을 감지할 수 있다.According to one embodiment, the sensor module (176) of the wearable electronic device (101) may include an acceleration sensor and/or a Hall sensor. According to one embodiment, the acceleration sensor may detect a movement of a support frame (e.g., the first support frame (260) of FIG. 2 or FIG. 3 and/or the second support frame (270)) of the wearable electronic device (101). According to one embodiment, the Hall sensor may detect a movement of a support frame (e.g., the first support frame (260) of FIG. 2 or FIG. 3 and/or the second support frame (270)) of the wearable electronic device (101) by detecting a change in a magnetic field.

통신 모듈(190)은 웨어러블 전자 장치(101)와 외부 전자 장치(예: 다른 전자 장치, 서버 및/또는 충전 장치) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)는 통신 모듈(190)(예: 무선 통신 회로)을 통해, 다른 전자 장치(예: 스마트 폰 또는 웨어러블 전자 장치)와 무선 통신을 수행할 수 있다. 예를 들어, 웨어러블 전자 장치(101)는 다른 전자 장치와 무선 통신을 수행할 수 있고, 서로 명령어 및/또는 데이터를 교환할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)는 통신 모듈(190)을 통해 외부의 다른 전자 장치에 의해, 적어도 부분적으로 제어될 수 있다. 예를 들어, 웨어러블 전자 장치(101)는 외부의 다른 전자 장치의 제어 하에, 적어도 하나의 기능이 수행될 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)는 카메라 모듈(180)을 통해 실제 현실 공간에 위치한 객체 정보(예: 이미지), 객체와의 거리 정보, 사용자의 시선 정보, 및/또는 사용자의 제스처 정보를 통신 모듈(190)을 통해 외부 장치(예: 다른 전자 장치 및/또는 서버)로 전송할 수 있다.The communication module (190) can support establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the wearable electronic device (101) and an external electronic device (e.g., another electronic device, a server, and/or a charging device), and performance of communication through the established communication channel. The communication module (190) can operate independently from the processor (120) (e.g., an application processor) and can include one or more communication processors that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the wearable electronic device (101) can perform wireless communication with another electronic device (e.g., a smart phone or a wearable electronic device) through the communication module (190) (e.g., a wireless communication circuit). For example, the wearable electronic device (101) can perform wireless communication with another electronic device and exchange commands and/or data with each other. According to one embodiment, the wearable electronic device (101) can be controlled, at least in part, by another external electronic device through the communication module (190). For example, the wearable electronic device (101) can perform at least one function under the control of another external electronic device. According to one embodiment, the wearable electronic device (101) can transmit object information (e.g., an image) located in an actual real space, distance information to an object, user's gaze information, and/or user's gesture information to an external device (e.g., another electronic device and/or a server) through the communication module (190) through the camera module (180).

안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부의 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일 실시예에 따르면, 안테나 모듈(197)은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 안테나를 포함할 수 있다. 일 실시예에 따르면, 안테나 모듈(197)은 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부의 전자 장치 간에 송신되거나 수신될 수 있다. 일 실시예에 따르면, 방사체 이외에 다른 부품(예: RFIC(radio frequency integrated circuit))이 추가로 안테나 모듈(197)의 일부로 형성될 수 있다.The antenna module (197) can transmit or receive signals or power to or from the outside (e.g., an external electronic device). According to one embodiment, the antenna module (197) can include an antenna including a radiator made of a conductor or a conductive pattern formed on a substrate (e.g., a PCB). According to one embodiment, the antenna module (197) can include a plurality of antennas (e.g., an array antenna). A signal or power can be transmitted or received between the communication module (190) and the external electronic device through at least one selected antenna. According to one embodiment, in addition to the radiator, another component (e.g., a radio frequency integrated circuit (RFIC)) can be additionally formed as a part of the antenna module (197).

일 실시예에 따르면, 웨어러블 전자 장치(101)는 무선 및/또는 유선으로 연결된 다른 전자 장치의 제어에 기반하여, 디스플레이 패널의 설정의 적어도 일부를 변경할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)는 웨어러블 전자 장치(101)의 카메라(예: 카메라 모듈(180))를 통해 획득한 주시안/보조시안 관련 정보(예: 실제 공간에 위치한 객체와의 거리 정보, 사용자의 시선 추적 정보, 사용자의 제스처 정보)를 다른 전자 장치로 전송할 수 있다. According to one embodiment, the wearable electronic device (101) can change at least a part of the settings of the display panel based on the control of another electronic device connected wirelessly and/or wiredly. According to one embodiment, the wearable electronic device (101) can transmit dominant eye/auxiliary eye related information (e.g., distance information to an object located in a real space, gaze tracking information of a user, gesture information of a user) acquired through a camera (e.g., camera module (180)) of the wearable electronic device (101) to another electronic device.

일 실시예에 따르면, 다른 전자 장치는 웨어러블 전자 장치(101)로부터 수신한 주시안/보조시안 관련 정보에 기반하여, 검출한 주시안 또는 보조시안에 대응되는 글래스(예: 제1 글래스(220), 및/또는 제2 글래스(230))에 포함된 디스플레이 패널의 설정 정보를 웨어러블 전자 장치(101)로 전송할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)는 다른 전자 장치로부터 수신한 디스플레이 패널의 설정 정보를 기반으로, 디스플레이 패널의 설정의 적어도 일부를 변경할 수 있다. 예를 들어, 디스플레이 패널의 설정은 디스플레이 패널의 품질을 낮추도록 변경될 수 있고, 사용자가 체감하지 못할 정도로 설정의 적어도 일부가 변경될 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)는 디스플레이 패널의 해상도를 줄이거나, 프레임 레이트를 줄이거나, 또는 디스플레이 패널의 표시 영역의 크기 및 위치를 조정할 수 있다.According to one embodiment, the other electronic device may transmit setting information of a display panel included in a glass (e.g., the first glass (220) and/or the second glass (230)) corresponding to the detected dominant or auxiliary eye to the wearable electronic device (101) based on the dominant eye/auxiliary eye related information received from the wearable electronic device (101). According to one embodiment, the wearable electronic device (101) may change at least a part of the setting of the display panel based on the setting information of the display panel received from the other electronic device. For example, the setting of the display panel may be changed to lower the quality of the display panel, and at least a part of the setting may be changed to an extent that the user cannot perceive. According to one embodiment, the wearable electronic device (101) may reduce the resolution of the display panel, reduce the frame rate, or adjust the size and position of the display area of the display panel.

카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일 실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)의 카메라 모듈(180)은 제스처 카메라(gesture camera)(511), 시선 추적 카메라(eye tracking camera)(513), 거리 측정 카메라(depth camera)(515), 및/또는 RGB 카메라(517)를 포함할 수 있다. The camera module (180) can capture still images and videos. According to one embodiment, the camera module (180) can include one or more lenses, image sensors, image signal processors, or flashes. According to one embodiment, the camera module (180) of the wearable electronic device (101) can include a gesture camera (511), an eye tracking camera (513), a depth camera (515), and/or an RGB camera (517).

일 실시예에 따르면, 제스처 카메라(511)는 사용자의 움직임을 감지할 수 있다. 도 3의 인식용 카메라(311-1, 311-2)는 제스처 카메라(511)를 포함할 수 있다. 예를 들어, 제스처 카메라(511)는 웨어러블 전자 장치(101)에 적어도 하나 이상 배치될 수 있고, 기 설정된 거리 내에서 사용자의 손 움직임을 감지할 수 있다. 제스처 카메라(511)는 웨어러블 전자 장치(101)의 주변 공간과 관련된 정보(예: 위치 및/또는 방향)를 인식하기 위한 SLAM 카메라(simultaneous localization and mapping camera)를 포함할 수 있다. 제스처 카메라(511)의 제스처 인식 영역은 제스처 카메라(511)의 촬영 가능 범위에 기반하여 설정될 수 있다. According to one embodiment, the gesture camera (511) can detect the user's movement. The recognition cameras (311-1, 311-2) of FIG. 3 may include the gesture camera (511). For example, at least one gesture camera (511) may be placed on the wearable electronic device (101) and may detect the user's hand movement within a preset distance. The gesture camera (511) may include a SLAM camera (simultaneous localization and mapping camera) for recognizing information (e.g., location and/or direction) related to the surrounding space of the wearable electronic device (101). The gesture recognition area of the gesture camera (511) may be set based on the shooting range of the gesture camera (511).

일 실시예에 따르면, 시선 추적 카메라(513)(예: 도 3의 제1 시선 추적 카메라(312-1), 제2 시선 추적 카메라(312-2))는 사용자의 좌안 및 우안의 움직임을 추적할 수 있다. 일 실시예에 따르면, 프로세서(120)는 시선 추적 카메라(513)를 사용하여, 좌안의 시선 방향 및 우안의 시선 방향을 확인할 수 있다. 예를 들어, 시선 추적 카메라(513)는 좌안의 시선 방향을 확인하기 위한 제1 시선 추적 카메라(312-1) 및 우안의 시선 방향을 확인하기 위한 제2 시선 추적 카메라(312-2)를 포함할 수 있다. 일 실시예에 따르면, 프로세서(120)는 좌안의 시선 방향 및 우안의 시선 방향을 기반으로 주시안 및 보조시안을 결정할 수 있다. According to one embodiment, the gaze tracking camera (513) (e.g., the first gaze tracking camera (312-1) and the second gaze tracking camera (312-2) of FIG. 3) can track movements of the user's left and right eyes. According to one embodiment, the processor (120) can use the gaze tracking camera (513) to identify the gaze direction of the left eye and the gaze direction of the right eye. For example, the gaze tracking camera (513) can include a first gaze tracking camera (312-1) for identifying the gaze direction of the left eye and a second gaze tracking camera (312-2) for identifying the gaze direction of the right eye. According to one embodiment, the processor (120) can determine the dominant eye and the auxiliary eye based on the gaze direction of the left eye and the gaze direction of the right eye.

일 실시예에 따르면, 거리 측정 카메라(515)는 웨어러블 전자 장치(101)의 전면에 위치한 객체와의 거리를 측정할 수 있다. 도 2 또는 도 3의 촬영용 카메라(280)는 거리 측정 카메라(515)를 포함할 수 있다. 거리 측정 카메라(515)는 TOF(time of flight) 카메라 및/또는 depth 카메라를 포함할 수 있다. 일 실시예에 따르면, 거리 측정 카메라(515)는 웨어러블 전자 장치(101)의 전면 방향을 촬영할 수 있고, 시선 추적 카메라(513)는 거리 측정 카메라(515)의 촬영 방향과 반대되는 방향을 촬영할 수 있다. According to one embodiment, the distance measuring camera (515) can measure the distance to an object located in front of the wearable electronic device (101). The photographing camera (280) of FIG. 2 or FIG. 3 can include the distance measuring camera (515). The distance measuring camera (515) can include a TOF (time of flight) camera and/or a depth camera. According to one embodiment, the distance measuring camera (515) can capture a front direction of the wearable electronic device (101), and the gaze tracking camera (513) can capture a direction opposite to the shooting direction of the distance measuring camera (515).

일 실시예에 따르면, 웨어러블 전자 장치(101)는 거리 측정 카메라(515)를 사용하여 객체와의 거리를 측정할 수 있고, 상기 거리가 임계값 이상인 경우에 디스플레이 패널의 설정을 변경할 수 있다. 예를 들어, 웨어러블 전자 장치(101)는 객체와의 거리가 임계값 이하로 가까운 경우 디스플레이 패널의 표시 성능을 유지할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)는 시선 추적 카메라(513)로 사용자가 바라보고 있는 시선 방향(예: FOV)에 위치하는 객체 중 하나를 인지하고, 해당 객체와의 거리를 depth 카메라를 통해 depth를 계산하거나 또는 해당 객체와의 거리를 TOF 카메라를 통해 거리를 측정할 수 있다. According to one embodiment, the wearable electronic device (101) can measure a distance to an object using a distance measuring camera (515), and change a setting of the display panel when the distance is equal to or greater than a threshold value. For example, the wearable electronic device (101) can maintain the display performance of the display panel when the distance to the object is less than or equal to a threshold value. According to one embodiment, the wearable electronic device (101) can recognize one of the objects located in the direction of the user's gaze (e.g., FOV) using the gaze tracking camera (513), and calculate the depth of the distance to the object using a depth camera, or measure the distance to the object using a TOF camera.

일 실시예에 따르면, RGB(red green blue) 카메라(517)는 객체의 색상 관련 정보 및 객체와의 거리 정보를 감지할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)는 거리 측정 카메라(515)와 RGB 카메라(517)를 통합하여, 한 종류의 카메라를 포함할 수 있다. 예를 들어, 도 2 또는 도 3의 촬영용 카메라(280)는 거리 측정 카메라(515) 및/또는 RGB 카메라(517)를 포함할 수 있다. According to one embodiment, the RGB (red green blue) camera (517) can detect color-related information of an object and distance information to the object. According to one embodiment, the wearable electronic device (101) can include one type of camera by integrating the distance measuring camera (515) and the RGB camera (517). For example, the shooting camera (280) of FIG. 2 or FIG. 3 can include the distance measuring camera (515) and/or the RGB camera (517).

일 실시예에 따르면, 카메라 모듈(180)에 포함된 제스처 카메라(511), 시선 추적 카메라(513), 거리 측정 카메라(515), 및/또는 RGB 카메라(517)는 각각 웨어러블 전자 장치(101)에 포함되거나 또는 일부는 통합된 형태의 카메라로 구현될 수도 있다. 예를 들어, 거리 측정 카메라(515)와 RGB 카메라(517)는 하나의 통합된 카메라로 구현될 수 있다.According to one embodiment, the gesture camera (511), the gaze tracking camera (513), the distance measuring camera (515), and/or the RGB camera (517) included in the camera module (180) may each be included in the wearable electronic device (101) or some of them may be implemented as integrated cameras. For example, the distance measuring camera (515) and the RGB camera (517) may be implemented as a single integrated camera.

일 실시예에 따르면, 전력 관리 모듈(188) 은 웨어러블 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 전력 관리 모듈(188)은 복수 개의 전력 관리 모듈(예: 제1 전력 관리 모듈(531), 제2 전력 관리 모듈(532))을 포함할 수 있다. 제1 전력 관리 모듈(531) 또는 제2 전력 관리 모듈(532) 중 적어도 일부는 프로세서(120)에 직접적으로(directly) 연결되어 전력을 공급할 수 있다. 제1 전력 관리 모듈(531) 또는 제2 전력 관리 모듈(532) 중 적어도 일부는 연결 단자(530)(예: TYPE-C)를 통해 외부 전자 장치로부터 전력을 수신하여 배터리(189)를 충전하거나 웨어러블 전자 장치(101)의 다른 구성 요소들로 전력을 공급할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)는 무선 충전 방식을 통하여 외부 전자 장치로부터 전력을 수신하여 배터리(188)를 충전할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)는 충전 안테나 모듈(540)로부터 외부의 전력을 무선으로 수신할 수 있다. According to one embodiment, the power management module (188) can manage power supplied to the wearable electronic device (101). The power management module (188) can include a plurality of power management modules (e.g., a first power management module (531), a second power management module (532)). At least some of the first power management module (531) or the second power management module (532) can be directly connected to the processor (120) to supply power. At least some of the first power management module (531) or the second power management module (532) can receive power from an external electronic device through a connection terminal (530) (e.g., TYPE-C) to charge the battery (189) or supply power to other components of the wearable electronic device (101). According to one embodiment, the wearable electronic device (101) can receive power from an external electronic device through a wireless charging method to charge the battery (188). According to one embodiment, the wearable electronic device (101) can wirelessly receive external power from a charging antenna module (540).

일 실시예에 따르면, 전력 관리 모듈(188)은 웨어러블 전자 장치(101)의 구성 요소들(예: 메모리(130), 디스플레이 모듈(160), 오디오 모듈(170), 센서 모듈(176), 카메라 모듈(180), 및/또는 통신 모듈(190))과 전기적으로 연결될 수 있다. 예를 들어, 전력 관리 모듈(188)은 프로세서(120)의 제어에 기반하여 배터리(189)의 전력을 웨어러블 전자 장치(101)의 구성 요소들로 제공할 수 있다. 일 실시예에 따르면, 웨어러블 전자 장치(101)는 제1 전력 관리 모듈(531)을 통해, 제1 배터리(533)로부터 전력을 공급받을 수 있고, 제2 전력 관리 모듈(532)을 통해, 제2 배터리(534)로부터 전력을 공급받을 수 있다. 일 실시예에 따르면, 프로세서(120)는 카메라 모듈(180)에 포함된 상기 적어도 하나의 카메라(511, 513, 515, 517)를 사용하여 획득한 정보를 기반으로 디스플레이 모듈(160)의 설정을 적어도 부분적으로 변경함으로써, 소모되는 전력을 관리할 수 있다.According to one embodiment, the power management module (188) may be electrically connected to components of the wearable electronic device (101) (e.g., memory (130), display module (160), audio module (170), sensor module (176), camera module (180), and/or communication module (190)). For example, the power management module (188) may provide power of the battery (189) to the components of the wearable electronic device (101) based on the control of the processor (120). According to one embodiment, the wearable electronic device (101) may receive power from a first battery (533) through the first power management module (531) and may receive power from a second battery (534) through the second power management module (532). According to one embodiment, the processor (120) can manage power consumption by at least partially changing the settings of the display module (160) based on information acquired using at least one camera (511, 513, 515, 517) included in the camera module (180).

배터리(189)는 웨어러블 전자 장치(101)의 적어도 하나의 구성요소에 전력을 공급할 수 있다. 일 실시예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다. 일 실시예에 따르면, 배터리(189)는 전력 관리 모듈(188)의 제어 하에, 전력을 공급받아 충전되거나 전력을 제공하여 방전될 수 있다. 일 실시예에 따르면, 배터리(189)는 복수 개의 배터리(예: 제1 배터리(533), 제2 배터리(534))를 포함할 수 있다. 예를 들어, 복수 개의 배터리(예: 제1 배터리(533), 제2 배터리(534))는 메인 프레임(예: 도 2 또는 도 3의 메인 프레임(240))과 지지 프레임(예: 도 2 또는 도 3의 제1 지지 프레임(260), 및/또는 제2 지지 프레임(270))에 배치될 수 있다. 일 실시예에 따르면 제1 배터리(533)는 제1 지지 프레임(260)에 배치될 수 있고, 제2 배터리(534)는 제2 지지 프레임(270)에 배치될 수 있다.The battery (189) can supply power to at least one component of the wearable electronic device (101). In one embodiment, the battery (189) can include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell. In one embodiment, the battery (189) can be supplied with power and charged or provided with power and discharged under the control of the power management module (188). In one embodiment, the battery (189) can include a plurality of batteries (e.g., a first battery (533), a second battery (534)). For example, the plurality of batteries (e.g., the first battery (533), the second battery (534)) can be arranged in a main frame (e.g., a main frame (240) of FIG. 2 or 3) and a support frame (e.g., a first support frame (260) and/or a second support frame (270) of FIG. 2 or 3). According to one embodiment, the first battery (533) may be placed in the first support frame (260), and the second battery (534) may be placed in the second support frame (270).

충전 안테나 모듈(540)은 웨어러블 전자 장치(101)의 외부로부터 전력을 수신할 수 있다. 일 실시예에 따르면, 충전 안테나 모듈(540)은 안테나 모듈(197)의 구성 및/또는 기능 가운데 적어도 일부를 포함할 수 있다. 일 실시예에 따르면, 충전 안테나 모듈(540)은 루프형 안테나 및/또는 코일형 안테나를 포함할 수 있다. 일 실시예에 따르면, 충전 안테나 모듈(540)은 복수개의 안테나(예: 제1 안테나(541), 제2 안테나(542))를 포함할 수 있다. 예를 들어, 복수개의 안테나(예: 제1 안테나(541), 제2 안테나(542))는 외부로부터 자기장 및/또는 전자기장을 수신할 수 있고, 외부 자기장 및/또는 전자기장으로 인한 자기 유도 및/또는 자기 공명을 통해 생성된 전류를 전력 관리 모듈(188) 및/또는 배터리(189)로 전달할 수 있다. 일 실시예에 따르면, 복수개의 안테나(예: 제1 안테나(541), 제2 안테나(542))는 메인 프레임(예: 도 2 또는 도 3의 메인 프레임(240))과 지지 프레임(예: 도 2 또는 도 3의 제1 지지 프레임(260), 및/또는 제2 지지 프레임(270))에 배치될 수 있다. 일 실시예에 따르면 제1 안테나(541)는 제1 지지 프레임(260)에 배치될 수 있고, 제2 안테나(542)는 제2 지지 프레임(270)에 배치될 수 있다.The charging antenna module (540) can receive power from the outside of the wearable electronic device (101). According to one embodiment, the charging antenna module (540) can include at least some of the configurations and/or functions of the antenna module (197). According to one embodiment, the charging antenna module (540) can include a loop-type antenna and/or a coil-type antenna. According to one embodiment, the charging antenna module (540) can include a plurality of antennas (e.g., a first antenna (541), a second antenna (542)). For example, the plurality of antennas (e.g., the first antenna (541), the second antenna (542)) can receive a magnetic field and/or an electromagnetic field from the outside, and can transmit a current generated through magnetic induction and/or magnetic resonance due to the external magnetic field and/or electromagnetic field to the power management module (188) and/or the battery (189). According to one embodiment, a plurality of antennas (e.g., a first antenna (541), a second antenna (542)) may be disposed on a main frame (e.g., a main frame (240) of FIG. 2 or FIG. 3) and a support frame (e.g., a first support frame (260) of FIG. 2 or FIG. 3, and/or a second support frame (270)). According to one embodiment, the first antenna (541) may be disposed on the first support frame (260), and the second antenna (542) may be disposed on the second support frame (270).

본 개시의 일 실시예에 따르면, 프로세서(120)는 웨어러블 전자 장치(101)의 사용자에 의해 요구되는 응용 계층 처리 기능을 할 수 있다. 일 실시예에 따르면, 프로세서(120)는 웨어러블 전자 장치(101)의 다양한 블록들을 위한 기능의 제어 및 명령을 제공할 수 있다. 일 실시예에 따르면, 프로세서(120)는 웨어러블 전자 장치(101)의 각 구성 요소들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 수행할 수 있다. 예를 들어, 프로세서(120)는 도 1의 프로세서(120)의 구성 및/또는 기능 중 적어도 일부를 포함할 수 있다. 일 실시예에 따르면, 프로세서(120)는 웨어러블 전자 장치(101)의 구성 요소들과 작동적으로 연결될 수 있다. 일 실시예에 따르면, 프로세서(120)는 웨어러블 전자 장치(101)의 다른 구성 요소로부터 수신된 명령 또는 데이터를 메모리(130)에 로드(load)하고, 메모리(130)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 저장할 수 있다.According to one embodiment of the present disclosure, the processor (120) can perform an application layer processing function requested by a user of the wearable electronic device (101). According to one embodiment, the processor (120) can provide control and commands of functions for various blocks of the wearable electronic device (101). According to one embodiment, the processor (120) can perform operations or data processing related to control and/or communication of each component of the wearable electronic device (101). For example, the processor (120) can include at least some of the configurations and/or functions of the processor (120) of FIG. 1. According to one embodiment, the processor (120) can be operatively connected with the components of the wearable electronic device (101). According to one embodiment, the processor (120) may load a command or data received from another component of the wearable electronic device (101) into the memory (130), process the command or data stored in the memory (130), and store result data.

일 실시예에 따르면, 프로세서(120)는 처리 회로(processing circuitry) 및/또는 실행 가능한 프로그램 요소(executable program elements)를 포함할 수 있다. 일 실시예에 따르면, 프로세서(120)는 처리 회로 및/또는 실행 가능한 프로그램 요소에 기반하여, 전자 장치(101)에서 영상 촬영을 지원하는 것과 관련된 전반적인 동작을 제어(또는 처리)할 수 있다. According to one embodiment, the processor (120) may include processing circuitry and/or executable program elements. According to one embodiment, the processor (120) may control (or process) the overall operations related to supporting image capturing in the electronic device (101) based on the processing circuitry and/or executable program elements.

일 실시예에 따르면, 프로세서(120)는 가상 환경에서 입력 장치를 인식하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치의 속성에 기반하여 대상 가상 객체를 결정하기 위한 가상 공간을 결정하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 가상 공간에 기반하여 대상 가상 객체를 판단하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 대상 가상 객체에 각각 대응하는 어포던스를 생성하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 어포던스를 지정된 배치 방식에 따라 표시하는 동작을 수행할 수 있다.According to one embodiment, the processor (120) may perform an operation of recognizing an input device in a virtual environment. According to one embodiment, the processor (120) may perform an operation of determining a virtual space for determining a target virtual object based on a property of the input device. According to one embodiment, the processor (120) may perform an operation of determining a target virtual object based on the virtual space. According to one embodiment, the processor (120) may perform an operation of generating an affordance corresponding to each target virtual object. According to one embodiment, the processor (120) may perform an operation of displaying the affordance according to a specified arrangement method.

일 실시예에 따르면, 프로세서(120)는 디스플레이를 통해 복수의 가상 객체들을 포함하는 가상 환경에 대한 실행 화면을 표시하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 실행 화면을 표시하는 동안 입력 장치를 인식하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치를 인식하는 것에 기반하여 입력 장치에 대응하는 인디케이터를 인식하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 인디케이터를 인식하는 것에 기반하여 입력 장치의 속성을 판단하는 동작을 수행할 수 있다. According to one embodiment, the processor (120) may perform an operation of displaying an execution screen for a virtual environment including a plurality of virtual objects through a display. According to one embodiment, the processor (120) may perform an operation of recognizing an input device while displaying the execution screen. According to one embodiment, the processor (120) may perform an operation of recognizing an indicator corresponding to the input device based on recognizing the input device. According to one embodiment, the processor (120) may perform an operation of determining an attribute of the input device based on recognizing the indicator.

일 실시예에 따르면, 프로세서(120)는 인디케이터를 기준으로 입력 장치의 속성에 대응하는 가상 공간을 산출하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 가상 공간에 기반하여 실행 화면의 복수의 가상 객체들 중 가상 공간에 포함되는 대상 가상 객체를 판단하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 가상 공간에 포함되는 대상 가상 객체에 기반하여 어포던스를 생성하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 어포던스를 상기 대상 가상 객체와 연관지어 표시하는 동작을 수행할 수 있다.According to one embodiment, the processor (120) may perform an operation of calculating a virtual space corresponding to a property of an input device based on an indicator. According to one embodiment, the processor (120) may perform an operation of determining a target virtual object included in the virtual space among a plurality of virtual objects of an execution screen based on the virtual space. According to one embodiment, the processor (120) may perform an operation of generating an affordance based on the target virtual object included in the virtual space. According to one embodiment, the processor (120) may perform an operation of displaying the affordance in association with the target virtual object.

일 실시예에 따라, 전자 장치(101)의 프로세서(120)의 상세 동작에 관하여 후술하는 도면들을 참조하여 설명된다.According to one embodiment, the detailed operation of the processor (120) of the electronic device (101) is described with reference to the drawings below.

일 실시예에 따르면, 프로세서(120)에서 수행하는 동작들은, 기록 매체(또는 컴퓨터 프로그램 프로덕트(computer program product))로 구현될 수 있다. 예를 들어, 기록 매체는 프로세서(120)에서 수행하는 다양한 동작을 실행시키기 위한 프로그램을 기록한 비 일시적(non-transitory) 컴퓨터(computer)로 판독 가능한 기록 매체를 포함할 수 있다.According to one embodiment, the operations performed by the processor (120) may be implemented as a recording medium (or a computer program product). For example, the recording medium may include a non-transitory computer-readable recording medium having recorded thereon a program for executing various operations performed by the processor (120).

본 개시에서 설명되는 실시예들은 소프트웨어(software), 하드웨어(hardware) 또는 이들의 조합된 것을 이용하여 컴퓨터 또는 이와 유사한 장치로 읽을 수 있는 기록 매체 내에서 구현될 수 있다. 하드웨어적인 구현에 의하면, 일 실시예에서 설명되는 동작들은 ASICs(application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서(processors), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로프로세서(microprocessors), 및/또는 기타 기능 수행을 위한 전기적인 유닛(unit) 중 적어도 하나를 이용하여 구현될 수 있다. The embodiments described in the present disclosure can be implemented in a computer-readable recording medium using software, hardware, or a combination thereof. In a hardware implementation, the operations described in one embodiment can be implemented using at least one of application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, and/or other electrical units for performing functions.

일 실시예에서, 기록 매체(또는 컴퓨터 프로그램 프로덕트)는, 가상 환경에서 입력 장치를 인식하는 동작, 입력 장치의 속성에 기반하여 대상 가상 객체를 결정하기 위한 가상 공간을 결정하는 동작, 가상 공간에 기반하여 대상 가상 객체를 판단하는 동작, 대상 가상 객체에 각각 대응하는 어포던스를 생성하는 동작 및 어포던스를 지정된 배치 방식에 따라 표시하는 동작을 실행시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체를 포함할 수 있다.In one embodiment, the recording medium (or the computer program product) may include a computer-readable recording medium having recorded thereon a program that executes operations for recognizing an input device in a virtual environment, determining a virtual space for determining a target virtual object based on a property of the input device, judging the target virtual object based on the virtual space, generating an affordance corresponding to each of the target virtual objects, and displaying the affordance according to a specified arrangement method.

일 실시예에서, 기록 매체(또는 컴퓨터 프로그램 프로덕트)는, 디스플레이를 통해 복수의 가상 객체들을 포함하는 가상 환경에 대한 실행 화면을 표시하는 동작, 실행 화면을 표시하는 동안 입력 장치를 인식하는 동작, 입력 장치를 인식하는 것에 기반하여 입력 장치에 대응하는 인디케이터를 인식하는 동작, 인디케이터를 인식하는 것에 기반하여 입력 장치의 속성을 판단하는 동작, 인디케이터를 기준으로 입력 장치의 속성에 대응하는 가상 공간을 산출하는 동작, 가상 공간에 기반하여 실행 화면의 복수의 가상 객체들 중 가상 공간에 포함되는 대상 가상 객체를 판단하는 동작, 가상 공간에 포함되는 상기 대상 가상 객체에 기반하여 어포던스를 생성하는 동작, 및 어포던스를 대상 가상 객체와 연관지어 표시하는 동작을 실행시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체를 포함할 수 있다.In one embodiment, the recording medium (or the computer program product) may include a computer-readable recording medium storing a program for executing the following operations: displaying an execution screen for a virtual environment including a plurality of virtual objects through a display; recognizing an input device while displaying the execution screen; recognizing an indicator corresponding to the input device based on the recognition of the input device; determining a property of the input device based on the recognition of the indicator; calculating a virtual space corresponding to the property of the input device based on the indicator; determining a target virtual object included in the virtual space among the plurality of virtual objects of the execution screen based on the virtual space; generating an affordance based on the target virtual object included in the virtual space; and displaying the affordance in association with the target virtual object.

본 개시의 일 실시예에 따른 전자 장치(101, 201)는, 디스플레이(160), 카메라(180), 및 상기 디스플레이(160) 및 상기 카메라(180)와 작동적으로(operatively) 연결된 프로세서(120)를 포함할 수 있다.An electronic device (101, 201) according to one embodiment of the present disclosure may include a display (160), a camera (180), and a processor (120) operatively connected to the display (160) and the camera (180).

일 실시예에 따르면, 상기 프로세서(120)는 가상 환경(400, 700)에서 입력 장치(720)를 인식하도록 동작할 수 있다. 일 실시예에 따르면, 상기 프로세서(120)는 상기 입력 장치(720)의 속성에 기반하여 대상 가상 객체(750)를 결정하기 위한 가상 공간(740)을 결정하도록 동작할 수 있다. 일 실시예에 따르면, 상기 프로세서(120)는 상기 가상 공간(740)에 기반하여 상기 대상 가상 객체(750)를 판단하도록 동작할 수 있다. 일 실시예에 따르면, 상기 프로세서(120)는 상기 대상 가상 객체(750)에 각각 대응하는 어포던스(760)를 생성하도록 동작할 수 있다. 일 실시예에 따르면, 상기 프로세서(120)는 상기 어포던스(760)를 지정된 배치 방식에 따라 표시하도록 동작할 수 있다.According to one embodiment, the processor (120) may be operable to recognize an input device (720) in a virtual environment (400, 700). According to one embodiment, the processor (120) may be operable to determine a virtual space (740) for determining a target virtual object (750) based on an attribute of the input device (720). According to one embodiment, the processor (120) may be operable to determine the target virtual object (750) based on the virtual space (740). According to one embodiment, the processor (120) may be operable to generate an affordance (760) corresponding to each of the target virtual objects (750). According to one embodiment, the processor (120) may be operable to display the affordance (760) according to a specified arrangement method.

일 실시예에 따르면, 상기 프로세서(120)는 상기 디스플레이를 통해 복수의 가상 객체들을 포함하는 상기 가상 환경에 대한 실행 화면을 표시하도록 동작할 수 있다. 일 실시예에 따르면, 상기 프로세서(120)는 상기 실행 화면을 표시하는 동안 상기 입력 장치를 인식하도록 동작할 수 있다. 일 실시예에 따르면, 상기 프로세서(120)는 상기 입력 장치를 인식하는 것에 기반하여 상기 입력 장치에 대응하는 인디케이터(900)를 인식하도록 동작할 수 있다. According to one embodiment, the processor (120) may be operable to display an execution screen for the virtual environment including a plurality of virtual objects through the display. According to one embodiment, the processor (120) may be operable to recognize the input device while displaying the execution screen. According to one embodiment, the processor (120) may be operable to recognize an indicator (900) corresponding to the input device based on recognizing the input device.

일 실시예에 따르면, 상기 입력 장치는 상기 가상 환경에서 가상 객체를 조작하기 위한 사용자 입력을 지원하는 장치를 포함할 수 있다.According to one embodiment, the input device may include a device that supports user input for manipulating a virtual object in the virtual environment.

일 실시예에 따르면, 상기 어포던스는, 상기 복수의 가상 객체들 중 상기 대상 가상 객체에 대한 다이렉트 선택이 가능하도록 지원하는 지정된 객체를 포함할 수 있다.In one embodiment, the affordance may include a designated object that supports direct selection of the target virtual object among the plurality of virtual objects.

일 실시예에 따르면, 상기 프로세서(120)는 상기 입력 장치의 속성을 판단하고, 상기 인디케이터를 기준으로 상기 입력 장치의 속성에 대응하는 가상 공간을 산출하도록 동작할 수 있다.According to one embodiment, the processor (120) may be operable to determine a property of the input device and to calculate a virtual space corresponding to the property of the input device based on the indicator.

일 실시예에 따르면, 상기 가상 공간은, 상기 인디케이터를 중심으로 상기 입력 장치의 속성에 기반한 분해능 값을 지름으로 형성되는 가상의 구를 포함할 수 있다.According to one embodiment, the virtual space may include a virtual sphere formed with a diameter having a resolution value based on a property of the input device centered on the indicator.

일 실시예에 따르면, 상기 분해능 값은, 상기 입력 장치에 미리 정의되는 제1 분해능 값을 포함할 수 있다. 일 실시예에 따르면, 상기 분해능 값은, 상기 입력 장치를 이용하는 사용자에 의해 발생하는 사용자 노이즈(user noise)에 관련된 제2 분해능 값을 포함할 수 있다.According to one embodiment, the resolution value may include a first resolution value predefined for the input device. According to one embodiment, the resolution value may include a second resolution value related to user noise generated by a user using the input device.

일 실시예에 따르면, 상기 프로세서(120)는 상기 제1 분해능 값과 상기 제2 분해능 값에 기반하여 상기 분해능 값을 산출하도록 동작할 수 있다.According to one embodiment, the processor (120) may be operable to calculate the resolution value based on the first resolution value and the second resolution value.

일 실시예에 따르면, 상기 프로세서(120)는 상기 인디케이터를 기준으로 상기 가상 공간의 무게중심을 매핑하고, 상기 무게중심을 기준으로 상기 지름을 갖는 상기 가상 공간을 형성하도록 동작할 수 있다.According to one embodiment, the processor (120) may operate to map the center of gravity of the virtual space based on the indicator and form the virtual space having the diameter based on the center of gravity.

일 실시예에 따르면, 상기 프로세서(120)는 상기 분해능 값에 기반하여 상기 어포던스의 크기 및/또는 간격을 결정하도록 동작할 수 있다.According to one embodiment, the processor (120) may be operable to determine the size and/or spacing of the affordance based on the resolution value.

일 실시예에 따르면, 상기 프로세서(120)는 상기 가상 공간에 기반하여, 상기 실행 화면의 상기 복수의 가상 객체들 중 상기 가상 공간에 포함되는 상기 대상 가상 객체를 판단하도록 동작할 수 있다.According to one embodiment, the processor (120) may operate to determine, based on the virtual space, the target virtual object included in the virtual space among the plurality of virtual objects of the execution screen.

일 실시예에 따르면, 상기 프로세서(120)는 상기 가상 공간에 포함되는 상기 대상 가상 객체가 지정된 조건을 만족하는지 판단하도록 동작할 수 있다. 일 실시예에 따르면, 상기 프로세서(120)는 상기 대상 가상 객체가 상기 지정된 조건을 만족하는 경우, 상기 어포던스를 제공하기 위한 가이드 생성 모드로 진입하도록 동작할 수 있다.According to one embodiment, the processor (120) may operate to determine whether the target virtual object included in the virtual space satisfies a specified condition. According to one embodiment, the processor (120) may operate to enter a guide generation mode for providing the affordance when the target virtual object satisfies the specified condition.

일 실시예에 따르면, 상기 지정된 조건은, 상기 대상 가상 객체가 적어도 2개인 복수의 대상 가상 객체이고, 상기 복수의 대상 가상 객체 각각의 무게중심 간 거리가 지정된 근접거리 이하인 조건을 포함할 수 있다.According to one embodiment, the specified condition may include a condition in which the target virtual object is a plurality of target virtual objects, at least two in number, and a distance between centers of gravity of each of the plurality of target virtual objects is less than or equal to a specified proximity distance.

일 실시예에 따르면, 상기 프로세서(120)는 상기 가상 공간에 복수의 대상 가상 객체가 포함되는지 판단하도록 동작할 수 있다. 일 실시예에 따르면, 상기 프로세서(120)는 상기 복수의 대상 가상 객체가 포함된 경우, 상기 복수의 대상 가상 객체에 각각 대응하는 무게중심을 판단하도록 동작할 수 있다. 일 실시예에 따르면, 상기 프로세서(120)는 상기 복수의 대상 가상 객체 각각의 무게중심들 사이의 거리를 판단하도록 동작할 수 있다. 일 실시예에 따르면, 상기 프로세서(120)는 무게중심들 사이의 거리와 지정된 근접거리를 비교하도록 동작할 수 있다. 일 실시예에 따르면, 상기 프로세서(120)는 상기 무게중심들 사이의 거리 중 적어도 하나의 거리가 상기 지정된 근접거리 이하인 경우 상기 가이드 생성 모드로 진입하도록 동작할 수 있다.According to one embodiment, the processor (120) may be operable to determine whether a plurality of target virtual objects are included in the virtual space. According to one embodiment, when the plurality of target virtual objects are included, the processor (120) may be operable to determine a center of gravity corresponding to each of the plurality of target virtual objects. According to one embodiment, the processor (120) may be operable to determine a distance between centers of gravity of each of the plurality of target virtual objects. According to one embodiment, the processor (120) may be operable to compare the distance between the centers of gravity with a specified proximity distance. According to one embodiment, when at least one of the distances between the centers of gravity is less than or equal to the specified proximity distance, the processor (120) may be operable to enter the guide generation mode.

일 실시예에 따르면, 상기 지정된 배치 방식은, 상기 대상 가상 객체와 상기 가상 공간의 표면에 접촉되는 공간에 어포던스를 배치하여 제공하는 제1 방식을 포함할 수 있다. 일 실시예에 따르면, 상기 지정된 배치 방식은, 상기 가상 공간의 외부에서 상기 대상 가상 객체에 각각 대응하는 목록으로 어포던스를 배치하여 제공하는 제2 방식을 포함할 수 있다.According to one embodiment, the specified arrangement method may include a first method of providing an affordance by arranging it in a space in contact with the target virtual object and the surface of the virtual space. According to one embodiment, the specified arrangement method may include a second method of providing an affordance by arranging it in a list corresponding to each of the target virtual objects outside the virtual space.

일 실시예에 따르면, 상기 프로세서(120)는 상기 대상 가상 객체가 상기 가상 공간에 걸쳐있는 경우, 상기 대상 가상 객체가 상기 가상 공간의 표면과 접촉하는 공간에 기반하여, 객체 기반 어포던스를 제공하도록 동작할 수 있다. 일 실시예에 따르면, 상기 프로세서(120)는 상기 대상 가상 객체가 상기 가상 공간의 내부에 있는 경우, 상기 대상 가상 객체로부터 상기 가상 공간의 표면으로의 연장선상의 공간에 기반하여, 객체 기반 어포던스를 제공하도록 동작할 수 있다. 일 실시예에 따르면, 상기 프로세서(120)는 상기 대상 가상 객체 사이의 간격이 상기 가상 공간의 반지름보다 작은 경우, 상기 가상 공간의 외곽 공간에 목록 기반 어포던스를 제공하도록 동작할 수 있다.According to one embodiment, the processor (120) may be operable to provide an object-based affordance based on a space where the target virtual object contacts a surface of the virtual space when the target virtual object spans the virtual space. According to one embodiment, the processor (120) may be operable to provide an object-based affordance based on a space along an extension line from the target virtual object to the surface of the virtual space when the target virtual object is inside the virtual space. According to one embodiment, the processor (120) may be operable to provide a list-based affordance to an outer space of the virtual space when a distance between the target virtual objects is smaller than a radius of the virtual space.

이하에서는 다양한 실시예들의 전자 장치(101)의 동작 방법에 대해서 상세하게 설명한다. 다양한 실시예들에 따른 전자 장치(101)에서 수행하는 동작들은, 전자 장치(101)의 다양한 프로세싱 회로(various processing circuitry) 및/또는 실행 가능한 프로그램 요소(executable program elements)를 포함하는 프로세서(120)에 의해 실행될 수 있다. 일 실시예에 따라, 전자 장치(101)에서 수행하는 동작들은, 메모리(130)에 저장되고, 실행 시에, 프로세서(120)가 동작하도록 하는 인스트럭션들(instructions)에 의해 실행될 수 있다.Hereinafter, the operation method of the electronic device (101) according to various embodiments will be described in detail. The operations performed in the electronic device (101) according to various embodiments may be executed by the processor (120) including various processing circuitry and/or executable program elements of the electronic device (101). According to one embodiment, the operations performed in the electronic device (101) may be stored in the memory (130) and executed by instructions that cause the processor (120) to operate when executed.

도 6은 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.FIG. 6 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.

일 실시예에 따라, 도 6은 일 실시예에 따른 전자 장치(101)가 가상 환경에서 가상 객체의 재배치나 확대 표시 없이, 사용자 경험의 몰입도가 방해받지 않도록 가상 객체의 선택을 지원할 수 있는 동작의 예를 나타낼 수 있다. According to one embodiment, FIG. 6 may illustrate an example of an operation in which an electronic device (101) according to one embodiment may support selection of a virtual object in a virtual environment without repositioning or enlarging the virtual object, so that the immersion of the user experience is not disturbed.

본 개시의 일 실시예에 따른 전자 장치(101)에서 지원하는 동작 방법은, 예를 들어, 도 6에 도시된 흐름도에 따라 수행될 수 있다. 도 6에 도시된 흐름도는 전자 장치(101)의 동작의 일 실시예에 따른 흐름도에 불과하며, 적어도 일부 동작의 순서는 변경되거나 병렬적으로 수행되거나, 독립적인 동작으로 수행되거나, 또는 적어도 일부 다른 동작이 적어도 일부 동작에 보완적으로 수행될 수 있다. 본 개시의 일 실시예에 따르면, 동작 601 내지 동작 609는 전자 장치(101)의 적어도 하나의 프로세서(120)(예: 도 1 또는 도 5의 프로세서(120))에서 수행될 수 있다.The operation method supported by the electronic device (101) according to one embodiment of the present disclosure may be performed according to, for example, the flowchart illustrated in FIG. 6. The flowchart illustrated in FIG. 6 is merely a flowchart according to one embodiment of the operation of the electronic device (101), and the order of at least some operations may be changed or performed in parallel, performed as independent operations, or at least some other operations may be performed complementarily to at least some operations. According to one embodiment of the present disclosure, operations 601 to 609 may be performed by at least one processor (120) of the electronic device (101) (e.g., the processor (120) of FIG. 1 or FIG. 5 ).

도 6에 도시한 바와 같이, 일 실시예에 따른 전자 장치(101)가 수행하는 동작 방법은, 가상 환경에서 입력 장치를 인식하는 동작(601), 입력 장치의 속성에 기반하여 대상 가상 객체를 결정하기 위한 가상 공간을 결정하는 동작(603), 가상 공간에 기반하여 대상 가상 객체를 판단하는 동작(605), 대상 가상 객체에 각각 대응하는 어포던스를 생성하는 동작(607), 및 어포던스를 지정된 배치 방식에 따라 표시하는 동작(609)을 포함할 수 있다. As illustrated in FIG. 6, an operation method performed by an electronic device (101) according to one embodiment may include an operation (601) of recognizing an input device in a virtual environment, an operation (603) of determining a virtual space for determining a target virtual object based on a property of the input device, an operation (605) of determining a target virtual object based on the virtual space, an operation (607) of generating an affordance corresponding to each target virtual object, and an operation (609) of displaying the affordance according to a specified arrangement method.

도 6을 참조하면, 동작 601에서, 전자 장치(101)의 프로세서(120)는 가상 환경에서 입력 장치를 인식하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 사용자의 디스플레이(예: 도 1 또는 도 5의 디스플레이 모듈(160))를 통해 가상 환경에 대응하는 실행 화면(예: AR 화면 또는 VR 화면)을 표시할 수 있다. 일 실시예에 따르면, 프로세서(120)는 실행 화면을 통해 현실 세계(또는 실세계) 또는 가상 세계의 적어도 일부에 겹쳐진 컨텐츠를 제공할 수 있다. 일 실시예에 따르면, 컨텐츠는 사용자의 시야각 상에서 보여지는 복수의 가상 객체를 포함할 수 있다. 일 실시예에서, 컨텐츠는 전자 장치(101)의 디스플레이를 통해 실행된 어플리케이션에 대응하는 그래픽 데이터가 가상 객체로 제공되는 것일 수 있다.Referring to FIG. 6, in operation 601, the processor (120) of the electronic device (101) may perform an operation of recognizing an input device in a virtual environment. According to one embodiment, the processor (120) may display an execution screen (e.g., an AR screen or a VR screen) corresponding to the virtual environment through a user's display (e.g., the display module (160) of FIG. 1 or FIG. 5). According to one embodiment, the processor (120) may provide content overlapping at least a part of the real world (or the real world) or the virtual world through the execution screen. According to one embodiment, the content may include a plurality of virtual objects shown on the user's field of view. In one embodiment, the content may be graphic data corresponding to an application executed through the display of the electronic device (101) provided as a virtual object.

일 실시예에 따르면, 프로세서(120)는 가상 환경에 대응하는 실행 화면을 표시하는 동안 입력 장치를 인식할 수 있다. 일 실시예에서, 입력 장치는 가상 환경에서 컨텐츠(예: 가상 객체)를 조작하기 위한 사용자 입력을 지원하기 위한 다양한 장치(또는 수단)을 포함할 수 있다. 일 실시예에 따라, 입력 장치는 직접(예: 유선) 통신 채널 또는 무선 통신을 통해 전자 장치(101)와 연결되고, 프로세서(120)에 의해 연결된 입력 장치가 인식될 수 있다. 일 실시예에 따라, 입력 장치는 디스플레이를 통해 표시되는 실행 화면 상으로 진입되고, 프로세서(120)에 의해 인식(예: 비전 기반 인식)될 수 있다. According to one embodiment, the processor (120) may recognize an input device while displaying an execution screen corresponding to a virtual environment. In one embodiment, the input device may include various devices (or means) for supporting a user input for manipulating content (e.g., a virtual object) in a virtual environment. According to one embodiment, the input device is connected to the electronic device (101) through a direct (e.g., wired) communication channel or wireless communication, and the connected input device may be recognized by the processor (120). According to one embodiment, the input device may enter an execution screen displayed through a display, and may be recognized (e.g., vision-based recognition) by the processor (120).

일 실시예에 따라, 입력 장치는 전자 장치(101)와 지정된 통신 방식으로 연결되는 마우스, 스마트 펜(또는 전자펜), 컨트롤러, 웨어러블 장치(예: 링(ring)(예: 스마트 링(smart ring)) 및/또는 와치(watch))와 같은 하드웨어 장치를 포함할 수 있다. 일 실시예에 따라, 입력 장치는 가상 환경에서 실행 화면을 통해 인식되는 사용자 손(또는 손가락), 스타일러스 펜, 웨어러블 장치(예: 스마트 링 및/또는 와치), 및/또는 글러브와 같은 사물(또는 사물 장치)을 포함할 수 있다. 일 실시예에 따라, 입력 장치는 복수의 카메라들(예: 도 3의 시선 추적 카메라(312-1, 312-2))을 포함할 수 있다. 예를 들어, 전자 장치(101)는 복수의 카메라들을 이용하여 사용자의 시선을 추적(eye tracking)할 수 있고, 사용자의 시선의 위치 및/또는 움직임을 입력 장치에 대응하는 인디케이터로 인식하도록 할 수 있다. According to one embodiment, the input device may include a hardware device such as a mouse, a smart pen (or an electronic pen), a controller, a wearable device (e.g., a ring (e.g., a smart ring) and/or a watch) that is connected to the electronic device (101) in a designated communication manner. According to one embodiment, the input device may include an object (or object device) such as a user's hand (or finger), a stylus pen, a wearable device (e.g., a smart ring and/or a watch), and/or a glove that is recognized through an execution screen in a virtual environment. According to one embodiment, the input device may include a plurality of cameras (e.g., the eye tracking cameras 312-1 and 312-2 of FIG. 3). For example, the electronic device (101) may track the user's eye using the plurality of cameras, and may recognize the position and/or movement of the user's eye as an indicator corresponding to the input device.

동작 603에서, 프로세서(120)는 입력 장치의 속성에 기반하여 대상 가상 객체를 결정하기 위한 가상 공간을 결정하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치를 인식하는 것에 기반하여 입력 장치에 대응하는 속성(또는 유형)을 판단할 수 있다. 일 실시예에 따르면, 프로세서(120)는 인식된 입력 장치가 사용자 손, 웨어러블 장치, 컨트롤러, 글러브, 스마트 펜, 스타일러스 펜, 마우스, 및/또는 시선 추적을 위한 카메라에 대응하는지 판단할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치의 속성을 판단하고, 입력 장치의 속성에 기반하여 가상 공간(또는 가상의 구 또는 분해능 구)의 크기(또는 범위)를 결정할 수 있다. 일 실시예에 따르면, 가상 공간은 입력 장치(예: 입력 장치의 인디케이터)를 중심으로 입력 장치의 속성에 기반한 분해능 값을 지름으로 형성되는 가상의 구(또는 분해능 구)를 포함할 수 있다. 일 실시예에 따르면, 가상 공간은 실행 화면 상의 복수의 가상 객체들 중 입력 장치의 위치에 기반하여 사용자 선택의 대상이 되는 대상 가상 객체를 결정하기 위해 가상적으로(또는 내부적으로) 생성하는 공간일 수 있다. 예를 들어, 가상 공간은 실행 화면 상에 표시되지 않을 수 있다.In operation 603, the processor (120) may perform an operation of determining a virtual space for determining a target virtual object based on the properties of the input device. According to one embodiment, the processor (120) may determine a property (or type) corresponding to the input device based on recognizing the input device. According to one embodiment, the processor (120) may determine whether the recognized input device corresponds to a user's hand, a wearable device, a controller, a glove, a smart pen, a stylus pen, a mouse, and/or a camera for eye tracking. According to one embodiment, the processor (120) may determine a property of the input device, and determine a size (or range) of a virtual space (or a virtual sphere or a resolution sphere) based on the properties of the input device. According to one embodiment, the virtual space may include a virtual sphere (or a resolution sphere) formed with a diameter of a resolution value based on the properties of the input device centered on the input device (e.g., an indicator of the input device). According to one embodiment, the virtual space may be a space virtually (or internally) created to determine a target virtual object to be selected by the user based on the location of the input device among a plurality of virtual objects on the execution screen. For example, the virtual space may not be displayed on the execution screen.

동작 605에서, 프로세서(120)는 가상 공간에 기반하여 대상 가상 객체를 판단하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 실행 화면 상의 복수의 가상 객체들 중 입력 장치를 기반으로 형성된 가상 공간에 포함된 가상 객체를 대상 가상 객체로 추출(또는 추론)할 수 있다. 일 실시예에 따라, 대상 가상 객체는 복수의 가상 객체들(예: 적어도 2개의 가상 객체들)을 포함할 수 있다.In operation 605, the processor (120) may perform an operation of determining a target virtual object based on a virtual space. According to one embodiment, the processor (120) may extract (or infer) a virtual object included in a virtual space formed based on an input device among a plurality of virtual objects on an execution screen as a target virtual object. According to one embodiment, the target virtual object may include a plurality of virtual objects (e.g., at least two virtual objects).

동작 607에서, 프로세서(120)는 대상 가상 객체에 각각 대응하는 어포던스를 생성하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 가상 공간에 기반하여 대상 가상 객체를 판단하는 것에 기반하여, 대상 가상 객체에 각각 대응하는 어포던스를 생성할 수 있다. 일 실시예에 따라, 어포던스는, 실행 화면 상의 복수의 가상 객체들 중 대상 가상 객체에 대한 다이렉트 선택이 가능하도록 지원하는 지정된 객체(예: 핸들, 아이콘, 이미지, 또는 목록)를 포함할 수 있다. 일 실시예에 따라, 어포던스는 그래픽 데이터로 제공될 수 있다.In operation 607, the processor (120) may perform an operation of generating an affordance corresponding to each target virtual object. According to one embodiment, the processor (120) may generate an affordance corresponding to each target virtual object based on determining the target virtual object based on the virtual space. According to one embodiment, the affordance may include a designated object (e.g., a handle, an icon, an image, or a list) that supports direct selection of a target virtual object among a plurality of virtual objects on an execution screen. According to one embodiment, the affordance may be provided as graphic data.

동작 609에서, 프로세서(120)는 어포던스를 지정된 배치 방식에 따라 표시하는 동작을 수행할 수 있다. 일 실시예에 따라, 지정된 배치 방식은, 대상 가상 객체와 가상 공간의 표면에 접촉되는 공간에 어포던스를 배치하여 제공하는 객체 기반 배치 방식(예: 제1 방식)과, 가상 공간의 외부에서 대상 가상 객체에 각각 대응하는 목록으로 어포던스를 배치하여 제공하는 목록 기반 배치 방식(예: 제2 방식)을 포함할 수 있다. 일 실시예에 따라, 어포던스를 지정된 배치 방식에 따라 제공하는 동작 예와 관하여 후술하는 도면들을 참조하여 설명된다.In operation 609, the processor (120) may perform an operation of displaying the affordance according to a specified arrangement method. According to one embodiment, the specified arrangement method may include an object-based arrangement method (e.g., a first method) that provides an affordance by arranging it in a space in contact with a surface of a virtual space and a target virtual object, and a list-based arrangement method (e.g., a second method) that provides an affordance by arranging it in a list corresponding to each target virtual object outside the virtual space. According to one embodiment, an operation example of providing an affordance according to a specified arrangement method will be described with reference to the drawings below.

도 7a, 도 7b, 도 7c, 및 도 7d는 본 개시의 일 실시예에 따른 전자 장치에서 가상 객체와 연관지어 어포던스를 제공하는 동작 예를 도시하는 도면들이다.FIGS. 7A, 7B, 7C, and 7D are diagrams illustrating examples of operations of providing affordance in association with a virtual object in an electronic device according to one embodiment of the present disclosure.

일 실시예에 따라, 도 7a, 도 7b, 도 7c, 및 도 7d는 일 실시예에 따른 전자 장치(101)에서 가상 환경의 가상 객체와 연관지어 가상 객체의 선택을 지원하는 어포던스를 제공하는 동작의 예를 나타낼 수 있다. According to one embodiment, FIGS. 7A, 7B, 7C, and 7D may illustrate examples of operations for providing an affordance that supports selection of a virtual object in association with a virtual object in a virtual environment in an electronic device (101) according to one embodiment.

도 7a 내지 도 7d를 참조하면, 예시 화면 <701>는, 전자 장치(101)가 디스플레이(예: 도 1 또는 도 5의 디스플레이 모듈(160))을 통해 가상 환경(700)(또는 가상 환경의 실행 화면(700))을 표시하는 상태를 나타낼 수 있다. 예시 화면 <701>에 예시한 바와 같이, 전자 장치(101)는 가상 환경(700)을 통해 복수의 가상 객체들(710)을 표시할 수 있다. Referring to FIGS. 7A to 7D, the example screen <701> may represent a state in which the electronic device (101) displays a virtual environment (700) (or an execution screen (700) of the virtual environment) through a display (e.g., a display module (160) of FIG. 1 or FIG. 5). As exemplified in the example screen <701>, the electronic device (101) may display a plurality of virtual objects (710) through the virtual environment (700).

예시 화면 <703>과 예시 화면 <705>는, 가상 환경(700)을 표시하는 동안 입력 장치(720)가 인식되는 상황의 예를 나타낼 수 있다. 일 실시예에 따라, 도 7b 내지 도 7d에서 입력 장치(720)가 사용자 손(예: 손가락)인 것을 예로 하며, 전자 장치(101)는 가상 환경(700)에 진입되는 사용자 손(720)을 인식할 수 있다.Example screens <703> and <705> can illustrate examples of situations in which an input device (720) is recognized while displaying a virtual environment (700). According to one embodiment, in FIGS. 7B to 7D , the input device (720) is an example of a user's hand (e.g., a finger), and the electronic device (101) can recognize the user's hand (720) entering the virtual environment (700).

예시 화면 <705>는, 가상 환경(700)에서 인식된 입력 장치(720)가 가상 환경(700) 상에서 어느 일 위치에서 지정된 일정 시간(730)동안 정지하고 있는 상태를 나타낼 수 있다. 예를 들어, 사용자는 가상 환경(700)의 복수의 가상 객체들(710) 중 선택하고자 하는 가상 객체가 존재하는 공간(또는 위치) 상에 입력 장치(720)를 이동하여 지정된 일정 시간(예: 약 N초, 약 N초는 입력 장치(720)의 홀딩을 인지 가능한 정도의 시간)동안 정지(또는 홀딩)할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 가상 환경(700)에서 입력 장치(720)가 지정된 일정 시간 정지된 경우, 입력 장치(720)에 기반한 가상 객체를 선택하기 위한 동작을 개시하는 트리거로 감지할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 입력 장치(720)에 기반한 인디케이터(indicator)(예: 포인팅 지점)를 결정하는 동작을 더 수행할 수 있다.Example screen <705> may represent a state in which an input device (720) recognized in a virtual environment (700) is stopped at a certain location in the virtual environment (700) for a specified period of time (730). For example, a user may move the input device (720) to a space (or location) where a virtual object to be selected from among a plurality of virtual objects (710) in the virtual environment (700) exists and stop (or hold) the input device (720) for a specified period of time (e.g., about N seconds, where about N seconds is a time period in which holding of the input device (720) is recognizable). According to one embodiment, the electronic device (101) may detect a trigger for initiating an operation to select a virtual object based on the input device (720) when the input device (720) is stopped for a specified period of time in the virtual environment (700). According to one embodiment, the electronic device (101) may further perform an operation of determining an indicator (e.g., a pointing point) based on the input device (720).

예시 화면 <707>은, 입력 장치(720)를 기준으로 가상 공간(740)을 형성하는 예를 나타낼 수 있다. 일 실시예에 따라, 가상 공간(740)은 입력 장치(720)(예: 입력 장치(720)의 인디케이터)를 중심으로 입력 장치(720)의 속성에 기반한 분해능 값을 지름으로 형성되는 가상의 구(또는 분해능 구)를 포함할 수 있다. 일 실시예에 따르면, 가상 공간(740)은 가상 환경(700) 상의 복수의 가상 객체들(710) 중 입력 장치(720)의 위치에 기반하여 사용자 선택의 대상이 되는 대상 가상 객체(예: 가상 객체(750))를 결정하기 위해 가상적으로(또는 내부적으로) 생성하는 공간일 수 있다. 예를 들어, 가상 공간(740)은 디스플레이(또는 가상 환경(700)) 상에 표시되지 않을 수 있다. 일 실시예에 따르면, 전자 장치(101)는 복수의 가상 객체들(710) 중 입력 장치(720)(예: 입력 장치(720)의 인디케이터) 주변에 가상 공간(740)에 포함되는 가상 객체(750)를 탐색할 수 있다.Example screen <707> may represent an example of forming a virtual space (740) based on an input device (720). According to one embodiment, the virtual space (740) may include a virtual sphere (or resolution sphere) formed with a diameter of a resolution value based on an attribute of the input device (720) centered on the input device (720) (e.g., an indicator of the input device (720)). According to one embodiment, the virtual space (740) may be a space virtually (or internally) created to determine a target virtual object (e.g., a virtual object (750)) to be selected by the user based on the location of the input device (720) among a plurality of virtual objects (710) on a virtual environment (700). For example, the virtual space (740) may not be displayed on a display (or virtual environment (700)). According to one embodiment, the electronic device (101) can search for a virtual object (750) included in a virtual space (740) around an input device (720) (e.g., an indicator of the input device (720)) among a plurality of virtual objects (710).

예시 화면 <709>는, 탐색된 가상 객체(750)에 대한 예를 나타낼 수 있다. 예를 들어, 전자 장치(101)는 가상 공간(740)에 기반하여 복수의 가상 객체들(710) 중 입력 장치(720)(예: 입력 장치(720)의 인디케이터)를 기준으로 어포던스(760)(예: 핸들)를 생성할 대상 가상 객체(예: 가상 공간(740)에 포함되는 가상 객체(750))를 판단할 수 있다. 일 실시예에서, 예시 화면 <709>에서는, 설명의 편의를 위해 4개의 가상 객체(750)가 대상 가상 객체로 추출(또는 추론)되는 예를 나타낼 수 있다. 예를 들어, 예시 화면 <709>에서는 4개의 가상 객체(750)를 다른 가상 객체들과 구별되게 강조(예: 하이라이팅)하여 나타내었으나, 이는 설명의 편의를 위한 것일 수 있다. 예를 들어, 대상 가상 객체(750)는 사용자의 직관성을 고려하여 그래픽적인 효과로 구별되게 제공할 수도 있고, 그래픽적인 효과 없이 어떠한 변화도 없는 상태로 제공할 수도 있다.The example screen <709> may show an example of a searched virtual object (750). For example, the electronic device (101) may determine a target virtual object (e.g., a virtual object (750) included in the virtual space (740)) for generating an affordance (760) (e.g., a handle) based on an input device (720) (e.g., an indicator of the input device (720)) among a plurality of virtual objects (710) based on the virtual space (740). In one embodiment, the example screen <709> may show an example in which four virtual objects (750) are extracted (or inferred) as target virtual objects for convenience of explanation. For example, in the example screen <709>, the four virtual objects (750) are shown with emphasis (e.g., highlighted) to be distinguished from other virtual objects, but this may be for convenience of explanation. For example, the target virtual object (750) may be provided with a graphical effect to distinguish it from the user's intuitiveness, or may be provided without any change and without a graphical effect.

예시 화면 <711>은, 대상 가상 객체(750)에 연관지어 어포던스(760)를 제공하는 예를 나타낼 수 있다. 일 실시예에 따르면, 전자 장치(101)는 대상 가상 객체(750)에 각각 대응하는 어포던스(760)를 입력 장치(720) 주변(예: 가상 공간(740))을 통해 배치하여 제공할 수 있다. 예를 들어, 전자 장치(101)는 제1 가상 객체, 제2 가상 객체, 제3 가상 객체, 및 제4 가상 객체와 같은 4개의 가상 객체(750)에 각각 대응하여, 제1 어포던스(또는 제1 핸들), 제2 어포던스(또는 제2 핸들), 제3 어포던스(또는 제3 핸들), 및 제4 어포던스(또는 제4 핸들)과 같은 4개의 어포던스(760)를 생성하여 제공할 수 있다.Example screen <711> may represent an example of providing an affordance (760) in association with a target virtual object (750). According to one embodiment, the electronic device (101) may provide an affordance (760) corresponding to each target virtual object (750) by arranging it around the input device (720) (e.g., virtual space (740)). For example, the electronic device (101) may generate and provide four affordances (760), such as a first affordance (or first handle), a second affordance (or second handle), a third affordance (or third handle), and a fourth affordance (or fourth handle), corresponding to four virtual objects (750), such as a first virtual object, a second virtual object, a third virtual object, and a fourth virtual object, respectively.

예시 화면 <713>은, 입력 장치(720)(예: 입력 장치(720)의 인디케이터)가 이동(예: 위치 변화)하는 예를 나타낼 수 있다. 예를 들어, 사용자는 어포던스(760)의 제공되는 영역 밖(예: 가상 공간(740) 밖)으로 입력 장치(720)를 이동할 수 있다. 예를 들어, 사용자는 복수의 가상 객체들(710) 중 다른 가상 개체를 선택하거나, 입력 장치(720)를 이용한 다른 동작을 수행하거나, 또는 어포던스(760)를 해제하기 위하여 입력 장치(720)의 위치를 이동(또는 변화)시킬 수 있다. Example screen <713> may illustrate an example in which an input device (720) (e.g., an indicator of the input device (720)) moves (e.g., changes position). For example, a user may move the input device (720) outside the provided area of the affordance (760) (e.g., outside the virtual space (740)). For example, the user may move (or change) the position of the input device (720) to select another virtual object among multiple virtual objects (710), perform another operation using the input device (720), or release the affordance (760).

예시 화면 <715>는, 입력 장치(720)의 이동에 따라 가상 환경(700) 상에서 어포던스(760)를 제거하여 표시하지 않는 상태의 예를 나타낼 수 있다. 일 실시예에 따르면, 전자 장치(710)는 입력 장치(720)의 이동을 감지할 시, 어포던스(760)를 바로 제거하거나, 또는 지정된 일정 시간 동안 어포던스(760)를 표시하는 상태를 유지할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 다른 대상 가상 객체가 결정되기 이전까지 어포던스(760)를 가상 환경(700) 상에 표시하고, 다른 대상 가상 객체가 결정될 시 기존 어포던스(760)는 사라지고, 다른 대상 가상 객체에 연관지어 다른 어포던스를 생성하여 제공할 수도 있다.Example screen <715> may represent an example of a state in which an affordance (760) is removed and not displayed on a virtual environment (700) according to movement of an input device (720). According to one embodiment, when the electronic device (710) detects movement of the input device (720), it may immediately remove the affordance (760) or maintain a state of displaying the affordance (760) for a specified period of time. According to one embodiment, the electronic device (101) may display the affordance (760) on the virtual environment (700) until another target virtual object is determined, and when another target virtual object is determined, the existing affordance (760) may disappear and another affordance may be generated and provided in association with another target virtual object.

도 8은 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.FIG. 8 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.

도 9는 본 개시의 일 실시예에 따른 전자 장치에서 다양한 입력 장치 별 인디케이터의 예를 도시하는 도면이다.FIG. 9 is a diagram illustrating examples of indicators for various input devices in an electronic device according to one embodiment of the present disclosure.

도 10은 본 개시의 일 실시예에 따른 전자 장치에서 생성하는 가상 공간 및 입력 장치에 대응하는 인디케이터의 예를 도시하는 도면이다.FIG. 10 is a diagram illustrating an example of a virtual space generated by an electronic device and an indicator corresponding to an input device according to one embodiment of the present disclosure.

일 실시예에 따라, 도 8은 일 실시예에 따른 전자 장치(101)에서 가상 환경의 가상 객체와 연관지어 가상 객체의 선택을 지원하는 어포던스를 제공하는 동작의 예를 나타낼 수 있다. According to one embodiment, FIG. 8 may illustrate an example of an operation of providing an affordance that supports selection of a virtual object in association with a virtual object in a virtual environment in an electronic device (101) according to one embodiment.

본 개시의 일 실시예에 따른 전자 장치(101)에서 지원하는 동작 방법은, 예를 들어, 도 8에 도시된 흐름도에 따라 수행될 수 있다. 도 8에 도시된 흐름도는 전자 장치(101)의 동작의 일 실시예에 따른 흐름도에 불과하며, 적어도 일부 동작의 순서는 변경되거나 병렬적으로 수행되거나, 독립적인 동작으로 수행되거나, 또는 적어도 일부 다른 동작이 적어도 일부 동작에 보완적으로 수행될 수 있다. 본 개시의 일 실시예에 따르면, 동작 801 내지 동작 815는 전자 장치(101)의 적어도 하나의 프로세서(120)(예: 도 1 또는 도 5의 프로세서(120))에서 수행될 수 있다.The operation method supported by the electronic device (101) according to one embodiment of the present disclosure may be performed according to, for example, the flowchart illustrated in FIG. 8. The flowchart illustrated in FIG. 8 is merely a flowchart according to one embodiment of the operation of the electronic device (101), and the order of at least some operations may be changed or performed in parallel, performed as independent operations, or at least some other operations may be performed complementarily to at least some operations. According to one embodiment of the present disclosure, operations 801 to 815 may be performed by at least one processor (120) of the electronic device (101) (e.g., the processor (120) of FIG. 1 or FIG. 5 ).

일 실시예에 따르면, 도 8에서 설명되는 동작은, 예를 들어, 도 6 내지 도 7d에서 설명된 동작들에 결합하여 휴리스틱(heuristic)하게 수행되거나, 설명된 동작의 적어도 일부 동작을 대체하고 적어도 일부 다른 동작에 결합하여 휴리스틱하게 수행되거나, 설명된 동작들의 적어 일부 동작의 상세 동작으로 휴리스틱하게 수행될 수 있다.According to one embodiment, the operations described in FIG. 8 may be performed heuristically, for example, in combination with the operations described in FIGS. 6 to 7d , or heuristically performed as a replacement for at least some of the operations described and combined with at least some other operations, or heuristically performed as a detailed operation of at least some of the operations described.

도 8에 도시한 바와 같이, 일 실시예에 따른 전자 장치(101)가 수행하는 동작 방법은, 디스플레이를 통해 복수의 가상 객체들을 포함하는 가상 환경에 대한 실행 화면을 표시하는 동작(801), 실행 화면을 표시하는 동안 입력 장치를 인식하는 동작(803), 입력 장치에 대응하는 인디케이터를 인식하는 동작(805), 입력 장치의 속성을 판단하는 동작(807), 인디케이터를 기준으로 입력 장치의 속성에 대응하는 가상 공간을 산출하는 동작(809), 가상 공간에 기반하여 실행 화면의 복수의 가상 객체들 중 가상 공간에 포함되는 대상 가상 객체를 판단하는 동작(811), 가상 공간에 포함되는 대상 가상 객체에 기반하여 어포던스를 생성하는 동작(813), 및 어포던스를 대상 가상 객체와 연관지어 표시하는 동작(815)을 포함할 수 있다.As illustrated in FIG. 8, an operation method performed by an electronic device (101) according to an embodiment may include an operation (801) of displaying an execution screen for a virtual environment including a plurality of virtual objects through a display, an operation (803) of recognizing an input device while displaying the execution screen, an operation (805) of recognizing an indicator corresponding to the input device, an operation (807) of determining a property of the input device, an operation (809) of calculating a virtual space corresponding to the property of the input device based on the indicator, an operation (811) of determining a target virtual object included in the virtual space among the plurality of virtual objects of the execution screen based on the virtual space, an operation (813) of generating an affordance based on the target virtual object included in the virtual space, and an operation (815) of displaying the affordance in association with the target virtual object.

도 8을 참조하면, 동작 801에서, 전자 장치(101)의 프로세서(120)는 디스플레이를 통해 복수의 가상 객체들을 포함하는 가상 환경에 대한 실행 화면을 표시하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 사용자의 디스플레이(예: 도 1 또는 도 5의 디스플레이 모듈(160))를 통해 가상 환경에 대응하는 실행 화면(예: AR 화면 또는 VR 화면)을 표시할 수 있다. 일 실시예에 따르면, 프로세서(120)는 실행 화면을 통해 현실 세계(또는 실세계) 또는 가상 세계의 적어도 일부에 겹쳐진 컨텐츠(예: 복수의 가상 객체들)를 제공할 수 있다. 예를 들어, 프로세서(120)는 도 7a의 예시 화면 <701>과 같이 복수의 가상 객체들(710)을 포함하는 실행 화면을 디스플레이를 통해 표시할 수 있다.Referring to FIG. 8, in operation 801, the processor (120) of the electronic device (101) may perform an operation of displaying an execution screen for a virtual environment including a plurality of virtual objects through a display. According to one embodiment, the processor (120) may display an execution screen (e.g., an AR screen or a VR screen) corresponding to the virtual environment through a user's display (e.g., the display module (160) of FIG. 1 or FIG. 5). According to one embodiment, the processor (120) may provide content (e.g., a plurality of virtual objects) overlapping at least a part of the real world (or the real world) or the virtual world through the execution screen. For example, the processor (120) may display an execution screen including a plurality of virtual objects (710) through the display, such as the example screen <701> of FIG. 7a.

동작 803에서, 프로세서(120)는 실행 화면을 표시하는 동안 입력 장치를 인식하는 동작을 수행할 수 있다. 일 실시예에서, 입력 장치는 가상 환경에서 컨텐츠(예: 가상 객체)의 동작을 제어하기 위한 사용자 입력을 지원하기 위한 다양한 장치(또는 수단)을 포함할 수 있다. 일 실시예에 따라, 프로세서(120)는 전자 장치(101)와 연결된 입력 장치에 의해 가상 환경에서 동작(예: 포인터 이동)을 감지하는 경우, 전자 장치(101)와 연결된 입력 장치를 인식할 수 있다. 일 실시예에 따라, 프로세서(120)는 디스플레이를 통해 표시되는 실행 화면 상으로 입력 장치의 진입을 감지하는 경우, 실행 화면 상으로 진입된 입력 장치를 인식할 수 있다. 이의 예가 도 7a의 예시 화면 <703> 및 도 7b의 예시 화면 <705>에 도시된다.In operation 803, the processor (120) may perform an operation of recognizing an input device while displaying an execution screen. In one embodiment, the input device may include various devices (or means) for supporting a user input for controlling an operation of content (e.g., a virtual object) in a virtual environment. According to one embodiment, when the processor (120) detects an operation (e.g., a pointer movement) in a virtual environment by an input device connected to the electronic device (101), the processor (120) may recognize the input device connected to the electronic device (101). According to one embodiment, when the processor (120) detects the entry of the input device onto an execution screen displayed through the display, the processor (120) may recognize the input device that has entered the execution screen. Examples of this are illustrated in example screen <703> of FIG. 7A and example screen <705> of FIG. 7B.

동작 805에서, 프로세서(120)는 입력 장치를 인식하는 것에 기반하여 입력 장치에 대응하는 인디케이터를 인식하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치(720)의 입력 형태 및/또는 입력 장치(720)의 입력 좌표에 기반하여 인디케이터(900)를 인식(또는 결정)할 수 있다. 예를 들어, 프로세서(120)는 비전 기반 입력 장치(예: 사용자 손, 글로브)는 입력 형태에 기반하여 인지적으로 인디케이터(900)를 추론하고, 센서 기반 좌표를 갖는 입력 장치(예: 컨트롤러, 스마트 펜, 마우스)는 입력 장치(720)의 좌표를 인디케이터(900)로 인식하고, 시선 추적 기반 입력 장치(예: 도 3의 시선 추천 카메라(312-1, 312-2))는 사용자의 시선의 위치 및/또는 움직임을 인디케이터(900)로 인식할 수 있다. 일 실시예에 따라, 시선 추적 기반 입력 장치의 경우, 예를 들어, 사용자의 시선의 위치 및/또는 움직임으로 마우스 커서와 같은 기능을 하고, 사용자의 시선이 머무르는 위치를 인디케이터(900)로 인식하도록 할 수 있다. In operation 805, the processor (120) may perform an operation of recognizing an indicator corresponding to the input device based on recognizing the input device. According to one embodiment, the processor (120) may recognize (or determine) the indicator (900) based on the input shape of the input device (720) and/or the input coordinates of the input device (720). For example, the processor (120) may cognitively infer the indicator (900) based on the input shape for a vision-based input device (e.g., a user's hand, a glove), may recognize the coordinates of the input device (720) as the indicator (900) for an input device having sensor-based coordinates (e.g., a controller, a smart pen, a mouse), and may recognize the position and/or movement of the user's gaze as the indicator (900) for an eye-tracking-based input device (e.g., the eye-tracking recommendation cameras (312-1, 312-2) of FIG. 3). According to one embodiment, for an input device based on eye tracking, for example, a function such as a mouse cursor may be performed based on the position and/or movement of the user's gaze, and the position where the user's gaze remains may be recognized as an indicator (900).

도 9를 참조하면, 예시 901, 예시 903 및 예시 905는 입력 장치(720)가 사용자 손인 경우를 나타내고, 예시 907은 입력 장치(720)가 컨트롤러인 경우를 나타내고, 예시 909는 입력 장치(720)가 스마트 펜인 경우를 나타내고, 예시 911은 입력 장치(720)가 마우스인 경우를 나타내고, 예시 913은 입력 장치(720)가 스마트 링인 경우를 나타낼 수 있다. 일 실시예에 따라, 예시 913에서는 사용자의 손가락에 착용되는 링 타입 웨어러블 장치(예: 스마트 링)에 대하여 도시하고 이에 대하여 기술하고 있으나, 이에 제한되지 않는다. 예를 들어, 본 개시의 예시적인 입력 장치(720)는 팔찌 타입 웨어러블 장치 또는 와치 타입 웨어러블 장치를 포함할 수 있다.Referring to FIG. 9, examples 901, 903, and 905 illustrate a case where the input device (720) is a user's hand, example 907 illustrates a case where the input device (720) is a controller, example 909 illustrates a case where the input device (720) is a smart pen, example 911 illustrates a case where the input device (720) is a mouse, and example 913 illustrates a case where the input device (720) is a smart ring. In one embodiment, example 913 illustrates and describes a ring-type wearable device (e.g., a smart ring) worn on a user's finger, but is not limited thereto. For example, an exemplary input device (720) of the present disclosure may include a bracelet-type wearable device or a watch-type wearable device.

예시 901에서, 프로세서(120)는 입력 장치(720)로서 집게 손가락을 비전 인식하고, 집게 손가락의 팁(예: fingertip)(또는 팁의 위치)을 인디케이터(900)로 인식할 수 있다. 예시 903에서, 프로세서(120)는 입력 장치(720)로서 엄지 손가락과 집게 손가락을 비전 인식하고, 엄지 손가락의 제1 팁과 집게 손가락의 제2 팁 사이의 중간 위치를 인디케이터(900)의 위치로 인식할 수 있다. 예시 905에서, 프로세서(120)는 입력 장치(720)로서 손가락 전체를 비전 인식하고, 5개의 손가락의 각 팁들 사이의 중간 위치를 인디케이터(900)의 위치로 인식할 수 있다.In example 901, the processor (120) may vision-recognize an index finger as an input device (720), and recognize a tip (e.g., fingertip) (or a position of the tip) of the index finger as an indicator (900). In example 903, the processor (120) may vision-recognize a thumb and an index finger as input devices (720), and recognize an intermediate position between a first tip of the thumb and a second tip of the index finger as a position of the indicator (900). In example 905, the processor (120) may vision-recognize an entire finger as an input device (720), and recognize an intermediate position between the respective tips of five fingers as a position of the indicator (900).

예시 907에서, 프로세서(120)는 입력 장치(720)로서 전자 장치(101)와 연결된 컨트롤러를 인식하고, 컨트롤러가 가리키는 포인팅 지점의 좌표를 인디케이터(900)의 위치로 인식할 수 있다. 예시 909에서, 프로세서(120)는 입력 장치(720)로서 전자 장치(101)와 연결된 스마트 펜을 인식하고, 스마트 펜이 가리키는 포인팅 지점의 좌표(또는 스마트 펜의 팁 좌표)를 인디케이터(900)의 위치로 인식할 수 있다. 예시 911에서, 프로세서(120)는 입력 장치(720)로서 전자 장치(101)와 연결된 마우스를 인식하고, 마우스의 포인터 좌표를 인디케이터(900)의 위치로 인식할 수 있다. In example 907, the processor (120) may recognize a controller connected to the electronic device (101) as an input device (720), and recognize coordinates of a pointing point indicated by the controller as the location of the indicator (900). In example 909, the processor (120) may recognize a smart pen connected to the electronic device (101) as an input device (720), and recognize coordinates of a pointing point indicated by the smart pen (or tip coordinates of the smart pen) as the location of the indicator (900). In example 911, the processor (120) may recognize a mouse connected to the electronic device (101) as an input device (720), and recognize pointer coordinates of the mouse as the location of the indicator (900).

예시 913에서, 프로세서(120)는 입력 장치(720)로서 전자 장치(101)와 연결된 스마트 링을 인식하고, 스마트 링의 위치를 인디케이터(900)의 위치로 인식할 수 있다. 예를 들어, 스마트 링에는 스마트 링의 움직임을 감지하는 모션 센서, 전자 장치(101)와 연결하기 위한 통신 회로, 및 사용자의 바이오 정보를 검출할 수 있는 생체 센서(예: PPG 센서)와 같은 다양한 구성 요소가 포함될 수 있다. 일 실시예에 따르면, 입력 장치(720)가 스마트 링(또는 스마트 팔찌 또는 스마트 와치)인 경우, 전자 장치(101)는 스마트 링과 지정된 무선 통신(예: UWB 통신 또는 블루투스 통신과 같은 근거리 통신)으로 연결될 수 있다. 일 실시예에 따르면, 프로세서(120)는 지정된 무선 통신을 통해 스마트 링의 정확한 위치를 인식(또는 탐색)할 수 있고, 스마트 링의 위치를 인디케이터(900)의 위치로 지정할 수 있다. In example 913, the processor (120) may recognize a smart ring connected to the electronic device (101) as an input device (720), and recognize the location of the smart ring as the location of the indicator (900). For example, the smart ring may include various components such as a motion sensor that detects movement of the smart ring, a communication circuit for connecting with the electronic device (101), and a biometric sensor (e.g., a PPG sensor) that may detect biometric information of the user. According to one embodiment, when the input device (720) is a smart ring (or a smart bracelet or a smart watch), the electronic device (101) may be connected to the smart ring through a designated wireless communication (e.g., a short-range communication such as UWB communication or Bluetooth communication). According to one embodiment, the processor (120) may recognize (or search for) the exact location of the smart ring through the designated wireless communication, and designate the location of the smart ring as the location of the indicator (900).

일 실시예에 따르면, 프로세서(120)는 비전 인식을 통해 스마트 링의 위치를 파악하거나, 또는 무선 통신을 통해 스마트 링으로부터 획득한 모션 센싱 정보와 비전 인식을 함께 이용하여 스마트 링의 위치를 결정할 수도 있다. 예를 들어, 스마트 링에는, 전자 장치(101)에서 스마트 링의 비전 인식이 용이하도록, LED와 같은 발광 소자를 포함할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 스마트 링에서의 발광 점을 비전 인식하여 스마트 링의 초기 위치로 결정할 수 있고, 이후에는 스마트 링으로부터 모션 센싱 정보를 수신하여 초기 위치로부터 움직임을 추정할 수 있다.According to one embodiment, the processor (120) may determine the position of the smart ring by using vision recognition, or may determine the position of the smart ring by using vision recognition and motion sensing information obtained from the smart ring via wireless communication together. For example, the smart ring may include a light-emitting element, such as an LED, so that the electronic device (101) can easily recognize the vision of the smart ring. According to one embodiment, the electronic device (101) may determine the initial position of the smart ring by vision recognition of a light-emitting point on the smart ring, and thereafter, may receive motion sensing information from the smart ring to estimate movement from the initial position.

일 실시예에 따르면, 프로세서(120)는 스마트 링의 위치 또는 그 변화를 인디케이터(900)의 기능으로 이용할 수 있다. 예를 들어, 프로세서(120)는 스마트 링과 컨텐츠(예: 가상 객체)를 조작하기 위한 인터랙션을 수행할 수 있다. 예를 들어, 프로세서(120)는 스마트 링에 기반하여 대상 가상 객체를 판단하고, 대상 가상 객체에 각각 대응하는 어포던스를 지정된 배치 방식에 따라 제공할 수 있다.According to one embodiment, the processor (120) can use the position of the smart ring or its change as a function of the indicator (900). For example, the processor (120) can perform an interaction for manipulating the smart ring and content (e.g., a virtual object). For example, the processor (120) can determine a target virtual object based on the smart ring and provide an affordance corresponding to each target virtual object according to a specified arrangement method.

일 실시예에 따르면, 프로세서(120)는 지정된 무선 통신 및/또는 비전 인식에 기반하여 스마트 링의 위치 또는 스마트 링의 위치 변화(예: 이동)를 실시간 모니터링할 수 있고, 스마트 링이 가상 객체 상에서 일정 시간 멈추어 있거나, 또는 가상 객체 상에서 스마트 링으로부터 선택 신호(예: 스마트 링을 이용한 사용자 입력(예: 지정된 터치 입력, 지정된 제스처 입력, 또는 근육 긴장도 변화 입력)를 수신하는 것에 기반하여, 스마트 링의 위치에 있는 가상 객체를 선택할 수 있다. 일 실시예에 따르면, 프로세서(120)는 가상 객체가 선택된 상태에서 스마트 링의 변화(예: 이동에 기반한 움직임 정보 또는 지정된 제스처)를 감지하고, 스마트 링의 변화에 대응하여 가상 객체를 이동할 수 있다. 예를 들어, 프로세서(120)는, 스마트 링과 연동하여, 스마트 링의 위치를 인디케이터(900)로 인식하여 가상 객체를 조작하도록 동작할 수 있다.According to one embodiment, the processor (120) can monitor in real time the location of the smart ring or the change in the location of the smart ring (e.g., movement) based on the designated wireless communication and/or vision recognition, and select the virtual object at the location of the smart ring based on the smart ring being stopped on the virtual object for a certain period of time or receiving a selection signal (e.g., a user input using the smart ring (e.g., a designated touch input, a designated gesture input, or a muscle tension change input)) from the smart ring on the virtual object. According to one embodiment, the processor (120) can detect a change of the smart ring (e.g., movement information based on movement or a designated gesture) while the virtual object is selected, and move the virtual object in response to the change of the smart ring. For example, the processor (120) can operate to recognize the location of the smart ring as an indicator (900) in conjunction with the smart ring and manipulate the virtual object.

일 실시예에 따르면, 프로세서(120)는 사용자의 시선의 위치 또는 그 변화를 인디케이터(900)의 기능으로 이용할 수 있다. 예를 들어, 프로세서(120)는 사용자의 시선에 기반하여 컨텐츠(예: 가상 객체)를 조작하기 위한 인터랙션을 수행할 수 있다. 예를 들어, 프로세서(120)는 시선 추적을 통해 사용자의 시선에 위치의 적어도 하나의 가상 객체를 기반으로 대상 가상 객체를 판단하고, 대상 가상 객체에 각각 대응하는 어포던스를 지정된 배치 방식에 따라 제공할 수 있다.According to one embodiment, the processor (120) may utilize the position of the user's gaze or a change thereof as a function of the indicator (900). For example, the processor (120) may perform an interaction for manipulating content (e.g., a virtual object) based on the user's gaze. For example, the processor (120) may determine a target virtual object based on at least one virtual object at the position of the user's gaze through gaze tracking, and provide affordances corresponding to each target virtual object according to a specified arrangement method.

일 실시예에 따르면, 프로세서(120)는 시선 추적에 기반하여 사용자의 시선의 위치 또는 위치 변화(예: 움직임)를 실시간 모니터링할 수 있고, 사용자의 시선이 가상 객체 상에서 일정 시간 멈추어 있거나, 또는 가상 객체 상에서 시선 추적으로부터 선택 신호(예: 사용자의 눈의 깜박임 감지 또는 사용자의 시선에 위치된 가상 객체 상에 사용자 입력(예: 선택 제스처 입력))를 수신(또는 감지)하는 것에 기반하여, 사용자 시선의 위치에 있는 가상 객체를 선택할 수 있다. 일 실시예에 따르면, 프로세서(120)는 가상 객체가 선택된 상태에서 사용자 시선의 변화(예: 이동에 기반한 움직임 정보 또는 지정된 제스처)를 감지하고, 사용자 시선의 변화에 대응하여 가상 객체를 이동할 수 있다. 예를 들어, 프로세서(120)는, 사용자의 시선과 연동하여, 사용자 시선의 위치를 인디케이터(900)로 인식하여 가상 객체를 조작하도록 동작할 수 있다.According to one embodiment, the processor (120) can monitor in real time the position or position change (e.g., movement) of the user's gaze based on gaze tracking, and select the virtual object at the position of the user's gaze based on whether the user's gaze stops on the virtual object for a certain period of time or whether the virtual object receives (or detects) a selection signal (e.g., detection of the user's eye blink or user input (e.g., selection gesture input)) from gaze tracking. According to one embodiment, the processor (120) can detect a change in the user's gaze (e.g., movement information based on movement or a designated gesture) while the virtual object is selected, and move the virtual object in response to the change in the user's gaze. For example, the processor (120) can operate to recognize the position of the user's gaze as an indicator (900) in conjunction with the user's gaze and manipulate the virtual object.

동작 807에서, 프로세서(120)는 입력 장치의 속성을 판단하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치의 크기(또는 종류)에 따른 분해능(예: 입력 장치에 대해 미리 정의된 속성(또는 능력))을 판단할 수 있다. 일 실시예에서, 분해능은 입력 장치를 이용하여 특정 가상 객체를 구분하여 선택할 수 있는 능력을 나타낼 수 있다. 일 실시예에 따르면, 분해능은 입력 장치 별로 다를 수 있으며, 입력 장치 별 분해능(예: 분해능 값)이 전자 장치(101)의 메모리(130)에 미리 저장될 수 있다. 일 실시예에 따라, 입력 장치 별 분해능과 관련하여 후술하는 도면들을 참조하여 설명된다.In operation 807, the processor (120) may perform an operation of determining an attribute of the input device. According to one embodiment, the processor (120) may determine a resolution (e.g., a predefined attribute (or capability) for the input device) according to a size (or type) of the input device. In one embodiment, the resolution may represent an ability to distinguish and select a specific virtual object using the input device. According to one embodiment, the resolution may vary depending on the input device, and the resolution (e.g., resolution value) for each input device may be stored in advance in the memory (130) of the electronic device (101). According to one embodiment, the resolution for each input device will be described with reference to the drawings described below.

동작 809에서, 프로세서(120)는 인디케이터를 기준으로 입력 장치의 속성에 대응하는 가상 공간을 산출하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치의 속성(예: 분해능)에 기반하여 가상 공간(또는 가상의 구 또는 분해능 구)의 크기(또는 범위)를 결정할 수 있다. 일 실시예에 따르면, 가상 공간은 입력 장치(예: 입력 장치의 인디케이터)를 중심으로 입력 장치의 분해능 값을 지름으로 형성되는 가상의 구(또는 분해능 구)를 포함할 수 있다. 이의 예가 도 10에 도시된다.In operation 809, the processor (120) may perform an operation of calculating a virtual space corresponding to a property of the input device based on the indicator. According to one embodiment, the processor (120) may determine a size (or range) of the virtual space (or virtual sphere or resolution sphere) based on a property (e.g., resolution) of the input device. According to one embodiment, the virtual space may include a virtual sphere (or resolution sphere) formed with a diameter of a resolution value of the input device centered on the input device (e.g., an indicator of the input device). An example of this is illustrated in FIG. 10.

도 10을 참조하면, 가상 공간(740)은 실행 화면 상의 복수의 가상 객체들 중 입력 장치의 위치(예: 인디케이터(900))에 기반하여 사용자 선택의 대상이 되는 대상 가상 객체를 결정하기 위해 가상적으로(또는 내부적으로) 생성하는 공간일 수 있다. 예를 들어, 가상 공간(740)은 실행 화면 상에 표시되지 않을 수 있다. 이의 예가 도 7b의 예시 화면 <707>에 도시된다. Referring to FIG. 10, the virtual space (740) may be a space virtually (or internally) created to determine a target virtual object to be selected by the user based on the location of the input device (e.g., indicator (900)) among a plurality of virtual objects on the execution screen. For example, the virtual space (740) may not be displayed on the execution screen. An example of this is illustrated in the example screen <707> of FIG. 7b.

일 실시예에 따르면, 가상 공간(740)은 입력 장치(720)를 이용하여 가상 환경의 복수의 가상 객체들 중 어느 하나의 가상 객체를 정확히 선택하기 위해 확보가 필요한 공간을 나타낼 수 있다. 일 실시예에 따르면, 가상 공간(740)은 입력 장치(720)의 인디케이터(900)로부터 지정된 거리(또는 길이)(예: 분해능 값의 약 1/2을 반지름으로 하는 길이)를 갖는 가상의 구 형태로 표현할 수 있다. 일 실시예에 따라, 입력 장치 별 분해능 값에 따라 다르게 표현되는 가상 공간(740)과 관련하여 후술하는 도면들을 참조하여 설명된다.According to one embodiment, the virtual space (740) may represent a space that needs to be secured in order to accurately select one of a plurality of virtual objects of a virtual environment using the input device (720). According to one embodiment, the virtual space (740) may be expressed in the form of a virtual sphere having a specified distance (or length) (e.g., a length having a radius of about 1/2 of the resolution value) from the indicator (900) of the input device (720). According to one embodiment, the virtual space (740) expressed differently depending on the resolution value of each input device will be described with reference to the drawings described below.

동작 811에서, 프로세서(120)는 가상 공간에 기반하여 실행 화면의 복수의 가상 객체들 중 가상 공간에 포함되는 대상 가상 객체를 판단하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 실행 화면 상의 복수의 가상 객체들 중 입력 장치를 기반으로 형성된 가상 공간에 포함된 가상 객체를 대상 가상 객체로 추출(또는 추론)할 수 있다. 일 실시예에 따라, 대상 가상 객체는 복수의 가상 객체들(예: 적어도 2개의 가상 객체들)을 포함할 수 있다. 이의 예가 도 7c의 예시 화면 <709>에 도시된다.In operation 811, the processor (120) may perform an operation of determining a target virtual object included in a virtual space among a plurality of virtual objects of an execution screen based on a virtual space. According to one embodiment, the processor (120) may extract (or infer) a virtual object included in a virtual space formed based on an input device among a plurality of virtual objects on the execution screen as a target virtual object. According to one embodiment, the target virtual object may include a plurality of virtual objects (e.g., at least two virtual objects). An example of this is illustrated in example screen <709> of FIG. 7c.

동작 813에서, 프로세서(120)는 가상 공간에 포함되는 대상 가상 객체에 기반하여 어포던스를 생성하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 가상 공간에 기반하여 대상 가상 객체를 판단하는 것에 기반하여, 대상 가상 객체에 각각 대응하는 어포던스를 생성할 수 있다. 일 실시예에 따라, 어포던스는, 실행 화면 상의 복수의 가상 객체들 중 대상 가상 객체에 대한 다이렉트 선택이 가능하도록 지원하는 지정된 객체(예: 핸들, 아이콘, 이미지, 또는 목록)를 포함할 수 있다. 일 실시예에 따라, 어포던스는 그래픽 데이터로 제공될 수 있다.In operation 813, the processor (120) may perform an operation of generating an affordance based on a target virtual object included in the virtual space. According to one embodiment, the processor (120) may generate an affordance corresponding to each target virtual object based on determining the target virtual object based on the virtual space. According to one embodiment, the affordance may include a designated object (e.g., a handle, an icon, an image, or a list) that supports direct selection of a target virtual object among a plurality of virtual objects on an execution screen. According to one embodiment, the affordance may be provided as graphic data.

동작 815에서, 프로세서(120)는 어포던스를 대상 가상 객체와 연관지어 표시하는 동작을 수행할 수 있다. 일 실시예에 따라, 프로세서(120)는 대상 가상 객체의 쉬운 선택을 지원하도록, 확보된 공간에 대응하는 가상 공간에 기반하여 어포던스를 구분하여 제공할 수 있다. 이의 예가 도 7c의 예시 화면 <711>에 도시된다. 일 실시예에 따라, 지정된 배치 방식은, 대상 가상 객체와 가상 공간의 표면에 접촉되는 공간에 어포던스를 배치하여 제공하는 객체 기반 배치 방식(예: 제1 방식)과, 가상 공간의 외부에서 대상 가상 객체에 각각 대응하는 목록으로 어포던스를 배치하여 제공하는 목록 기반 배치 방식(예: 제2 방식)을 포함할 수 있다. 일 실시예에 따라, 어포던스를 지정된 배치 방식에 따라 제공하는 동작 예와 관련하여 후술하는 도면들을 참조하여 설명된다.In operation 815, the processor (120) may perform an operation of displaying an affordance by associating it with a target virtual object. According to one embodiment, the processor (120) may provide an affordance by distinguishing it based on a virtual space corresponding to the secured space so as to support easy selection of the target virtual object. An example of this is illustrated in the example screen <711> of FIG. 7C. According to one embodiment, the specified arrangement method may include an object-based arrangement method (e.g., a first method) that provides an affordance by arranging it in a space in contact with a surface of a virtual space and a target virtual object, and a list-based arrangement method (e.g., a second method) that provides an affordance by arranging it in a list corresponding to each target virtual object outside the virtual space. According to one embodiment, an operation example of providing an affordance according to a specified arrangement method will be described with reference to the drawings described below.

도 11은 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.FIG. 11 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.

도 12는 본 개시의 일 실시예에 따른 전자 장치에서 입력 장치에 대응하는 가상 공간을 제공하는 예를 도시하는 도면이다.FIG. 12 is a diagram illustrating an example of providing a virtual space corresponding to an input device in an electronic device according to one embodiment of the present disclosure.

도 13은 본 개시의 일 실시예에 따른 전자 장치에서 제공하는 입력 장치 별 분해능에 대한 예를 도시하는 도면이다.FIG. 13 is a diagram illustrating an example of resolution for each input device provided by an electronic device according to one embodiment of the present disclosure.

일 실시예에 따라, 도 11은 일 실시예에 따른 전자 장치(101)에서 입력 장치의 속성에 기반하여 가상 공간을 제공하는 동작의 예를 나타낼 수 있다. According to one embodiment, FIG. 11 may illustrate an example of an operation of providing a virtual space based on properties of an input device in an electronic device (101) according to one embodiment.

본 개시의 일 실시예에 따른 전자 장치(101)에서 지원하는 동작 방법은, 예를 들어, 도 11에 도시된 흐름도에 따라 수행될 수 있다. 도 11에 도시된 흐름도는 전자 장치(101)의 동작의 일 실시예에 따른 흐름도에 불과하며, 적어도 일부 동작의 순서는 변경되거나 병렬적으로 수행되거나, 독립적인 동작으로 수행되거나, 또는 적어도 일부 다른 동작이 적어도 일부 동작에 보완적으로 수행될 수 있다. 본 개시의 일 실시예에 따르면, 동작 1101 내지 동작 1109는 전자 장치(101)의 적어도 하나의 프로세서(120)(예: 도 1 또는 도 5의 프로세서(120))에서 수행될 수 있다.An operation method supported by an electronic device (101) according to one embodiment of the present disclosure may be performed, for example, according to a flowchart illustrated in FIG. 11. The flowchart illustrated in FIG. 11 is merely a flowchart according to one embodiment of an operation of the electronic device (101), and the order of at least some operations may be changed, performed in parallel, performed as independent operations, or at least some other operations may be performed complementarily to at least some operations. According to one embodiment of the present disclosure, operations 1101 to 1109 may be performed by at least one processor (120) of the electronic device (101) (e.g., the processor 120 of FIG. 1 or FIG. 5 ).

일 실시예에 따르면, 도 11에서 설명되는 동작은, 예를 들어, 도 6 내지 도 10에서 설명된 동작들에 결합하여 휴리스틱하게 수행되거나, 설명된 동작의 적어도 일부 동작을 대체하고 적어도 일부 다른 동작에 결합하여 휴리스틱하게 수행되거나, 설명된 동작들의 적어 일부 동작의 상세 동작으로 휴리스틱하게 수행될 수 있다.According to one embodiment, the operations described in FIG. 11 may be performed heuristically, for example, in combination with the operations described in FIGS. 6 to 10 , or heuristically performed as a replacement for at least some of the operations described and combined with at least some other operations, or heuristically performed as a detailed operation of at least some of the operations described.

도 11에 도시한 바와 같이, 일 실시예에 따른 전자 장치(101)가 수행하는 동작 방법은, 입력 장치의 속성을 판단하는 동작(1101), 입력 장치의 속성에 대응하는 분해능 값을 획득하는 동작(1103), 분해능 값을 지름으로 갖는 가상의 구를 생성하는 동작(1105), 가상의 구의 무게중심(예: 구의 중심점)을 인디케이터에 매핑하는 동작(1107), 및 가상 공간을 형성하는 동작(1109)을 포함할 수 있다.As illustrated in FIG. 11, an operation method performed by an electronic device (101) according to one embodiment may include an operation of determining a property of an input device (1101), an operation of obtaining a resolution value corresponding to the property of the input device (1103), an operation of generating a virtual sphere having the resolution value as a diameter (1105), an operation of mapping a center of gravity of the virtual sphere (e.g., the center point of the sphere) to an indicator (1107), and an operation of forming a virtual space (1109).

도 11을 참조하면, 동작 1101에서, 전자 장치(101)의 프로세서(120)는 입력 장치의 속성을 판단하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 가상 환경을 제공하는 상태에서 입력 장치를 인식하는 것에 기반하여, 입력 장치의 속성(예: 종류)을 판단할 수 있다. 일 실시예에 따라, 입력 장치는 전자 장치(101)와 지정된 통신 방식으로 연결되는 마우스, 스마트 펜(또는 전자펜), 컨트롤러, 웨어러블 장치(예: 링 및/또는 와치)와 같은 하드웨어 장치를 포함할 수 있다. 일 실시예에 따라, 입력 장치는 가상 환경에서 실행 화면을 통해 인식되는 사용자 손(또는 손가락), 스타일러스 펜, 웨어러블 장치, 및/또는 글러브와 같은 사물(또는 사물 장치)을 포함할 수 있다.Referring to FIG. 11, in operation 1101, the processor (120) of the electronic device (101) may perform an operation of determining an attribute of an input device. According to one embodiment, the processor (120) may determine an attribute (e.g., a type) of the input device based on recognizing the input device in a state of providing a virtual environment. According to one embodiment, the input device may include a hardware device such as a mouse, a smart pen (or an electronic pen), a controller, a wearable device (e.g., a ring and/or a watch) that is connected to the electronic device (101) via a specified communication method. According to one embodiment, the input device may include an object (or object device) such as a user's hand (or finger), a stylus pen, a wearable device, and/or a glove that is recognized through an execution screen in a virtual environment.

동작 1103에서, 프로세서(120)는 입력 장치의 속성에 대응하는 분해능 값을 획득하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치의 크기(또는 종류)에 따른 분해능(예: 입력 장치에 대해 미리 정의된 속성(또는 능력))을 판단할 수 있다. 일 실시예에서, 분해능은 입력 장치를 이용하여 특정 가상 객체를 구분하여 선택할 수 있는 능력을 나타낼 수 있다. 일 실시예에 따르면, 전자 장치(101)는 입력 장치 별 분해능(예: 분해능 값)을 메모리(130)에 미리 저장할 수 있다. 이의 예가 도 12 및 도 13에 도시된다.In operation 1103, the processor (120) may perform an operation of obtaining a resolution value corresponding to a property of the input device. According to one embodiment, the processor (120) may determine a resolution (e.g., a predefined property (or capability) for the input device) according to a size (or type) of the input device. In one embodiment, the resolution may represent an ability to distinguish and select a specific virtual object using the input device. According to one embodiment, the electronic device (101) may store a resolution (e.g., a resolution value) for each input device in advance in the memory (130). Examples thereof are illustrated in FIGS. 12 and 13 .

도 12 및 도 13에 도시한 바와 같이, 입력 장치(720) 별로 분해능은 다를 수 있다. 일 실시예에 따르면, 입력 장치 별 분해능 값은 전자 장치(101)의 메모리(130)에 미리 저장될 수 있다. 일 실시예에 따르면, 입력 장치 별 분해능 값은 전자 장치(101)의 외부(예: 클라우드 서버)에 저장될 수 있고, 전자 장치(101)는 필요 시에 외부로부터 인식된 입력 장치에 대응하는 분해능 값을 획득(예: 요청 및 수신)하여 사용할 수도 있다.As illustrated in FIGS. 12 and 13, the resolution may vary for each input device (720). According to one embodiment, the resolution value for each input device may be stored in advance in the memory (130) of the electronic device (101). According to one embodiment, the resolution value for each input device may be stored externally (e.g., in a cloud server) of the electronic device (101), and the electronic device (101) may obtain (e.g., request and receive) the resolution value corresponding to the input device recognized from the external source and use it when necessary.

도 12를 참조하면, 예시 <1201>, 예시 <1203> 및 예시 <1205>는, 입력 장치(720)가 사용자 손(예: 엄지 손가락과 집게 손가락), 컨트롤러 및 마우스인 경우의 예를 나타낼 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치(720)의 크기(또는 종류)에 대응하여 미리 정의된 분해능 값에 기반하여 가상 공간(740)의 크기(또는 범위)를 결정할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치(720)(예: 입력 장치의 인디케이터(900))를 중심으로 입력 장치(720)의 분해능 값을 지름으로 가상 공간(740)(예: 가상의 구 또는 분해능 구)을 형성할 수 있다. 예를 들어, 프로세서(120)는 입력 장치(720)의 인디케이터(900)로부터 지정된 거리(또는 길이)(예: 분해능 값을 반지름으로 하는 길이)를 갖는 가상의 구 형태로 가상 공간(740)을 표현할 수 있다.Referring to FIG. 12, examples <1201>, <1203>, and <1205> may represent examples in which the input device (720) is a user's hand (e.g., a thumb and an index finger), a controller, and a mouse. According to one embodiment, the processor (120) may determine a size (or range) of a virtual space (740) based on a predefined resolution value corresponding to a size (or type) of the input device (720). According to one embodiment, the processor (120) may form a virtual space (740) (e.g., a virtual sphere or a resolution sphere) with the resolution value of the input device (720) as the diameter centered on the input device (720) (e.g., an indicator (900) of the input device). For example, the processor (120) can express a virtual space (740) in the form of a virtual sphere having a specified distance (or length) (e.g., a length with a resolution value as a radius) from an indicator (900) of an input device (720).

일 실시예에 따라, 예시 <1201>은, 입력 장치(720)(예: 사용자 손)에 대해 제1 분해능 값(예: 약 40mm)이 설정되고, 프로세서(120)에 의해 제1 분해능 값을 지름으로 갖는 가상 공간(740)을 형성하고, 가상 공간(740)의 무게중심을 인디케이터(900)에 매핑하여 제공하는 예를 나타낼 수 있다. 일 실시예에 따라, 예시 <1203>은, 입력 장치(720)(예: 컨트롤러)에 대해 제2 분해능 값(예: 약 25mm)이 설정되고, 프로세서(120)에 의해 제2 분해능 값을 지름으로 갖는 가상 공간(740)을 형성하고, 가상 공간(740)의 무게중심을 인디케이터(900)에 매핑하여 제공하는 예를 나타낼 수 있다. 일 실시예에 따라, 예시 <1205>는, 입력 장치(720)(예: 마우스)에 대해 제3 분해능 값(예: 약 10mm)이 설정되고, 프로세서(120)에 의해 제3 분해능 값을 지름으로 갖는 가상 공간(740)을 형성하고, 가상 공간(740)의 무게중심을 인디케이터(900)에 매핑하여 제공하는 예를 나타낼 수 있다.According to one embodiment, example <1201> may represent an example in which a first resolution value (e.g., about 40 mm) is set for an input device (720) (e.g., a user's hand), a virtual space (740) having a diameter of the first resolution value is formed by the processor (120), and a center of gravity of the virtual space (740) is mapped and provided to an indicator (900). According to one embodiment, example <1203> may represent an example in which a second resolution value (e.g., about 25 mm) is set for an input device (720) (e.g., a controller), a virtual space (740) having a diameter of the second resolution value is formed by the processor (120), and a center of gravity of the virtual space (740) is mapped and provided to an indicator (900). According to one embodiment, example <1205> may represent an example in which a third resolution value (e.g., about 10 mm) is set for an input device (720) (e.g., a mouse), a virtual space (740) having a diameter of the third resolution value is formed by a processor (120), and a center of gravity of the virtual space (740) is mapped to an indicator (900) and provided.

일 실시예에 따르면, 분해능 값은 입력 장치(720)를 이용한 객체 선택의 조작 정밀도에 기반하여 정의 및/또는 학습될 수 있다. 예를 들어, 객체 선택에 대한 정확도가 낮은 입력 장치(예: 사용자 손)에 대해 상대적으로 큰(또는 높은) 분해능 값이 설정되고, 객체 선택에 대한 정확도가 높은 입력 장치(예: 마우스)에 대해 상대적으로 작은(또는 낮은) 분해능 값이 설정될 수 있다. 예를 들어, 분해능 값이 작다는 것은, 가상 공간(740)의 지름이 작은 구를 형성하는 것을 의미할 수 있다. 일 실시예에 따라, 작은 분해능 값이 설정되는 입력 장치(720)는 객체 선택에 따른 노이즈(예: 입력 장치(720) 인식을 위한 노이즈(예: 카메라 노이즈와 같은 하드웨어 노이즈) 및/또는 손 떨림과 같은 사용자 노이즈(user noise))가 적어 객체 선택의 정확도가 높은 장치를 의미할 수 있다. 일 실시예에 따라, 입력 장치(720)에서 발생 가능한 노이즈에 기반하여 입력 장치(720) 별로 설정될 수 있는 분해능 값의 예가 도 13에 도시된다.According to one embodiment, the resolution value may be defined and/or learned based on the manipulation precision of object selection using the input device (720). For example, a relatively large (or high) resolution value may be set for an input device (e.g., a user's hand) with low accuracy for object selection, and a relatively small (or low) resolution value may be set for an input device (e.g., a mouse) with high accuracy for object selection. For example, a small resolution value may mean that the virtual space (740) forms a sphere with a small diameter. According to one embodiment, an input device (720) with a small resolution value may mean a device with high accuracy for object selection due to less noise (e.g., hardware noise for recognizing the input device (720) (e.g., camera noise) and/or user noise (e.g., hand tremors). According to one embodiment, an example of a resolution value that may be set for each input device (720) based on noise that may occur in the input device (720) is illustrated in FIG. 13.

도 13을 참조하면, 도 13은 입력 장치(720)의 종류 별로 미리 정의되는 분해능 값의 다양한 예를 나타낼 수 있다. 예를 들어, 객체 선택에 대한 정확도가 낮은 입력 장치(예: 사용자 손)에 대해 상대적으로 큰(또는 높은) 분해능 값이 설정되고, 객체 선택에 대한 정확도가 높은 입력 장치(예: 마우스)에 대해 상대적으로 작은(또는 낮은) 분해능 값이 설정될 수 있다. 예를 들어, 입력 장치(720)를 이용한 객체 선택의 정확도가 높을수록 낮은 분해능 값이 할당될 수 있다. 예를 들어, 도 13에 예시한 바와 같이, 일 실시예에 따른 제1 입력 장치(1301)(예: 사용자 손)의 경우 실험치에 기반한 제1 분해능 값(예: 약 40mm)이 설정될 수 있다. 일 실시예에 따른 제2 입력 장치(1302)(예: 와치)의 경우 실험치에 기반한 제2 분해능 값(예: 약 35mm)이 설정될 수 있다. 일 실시예에 따른 제3 입력 장치(1303)(예: 링)의 경우 실험치에 기반한 제3 분해능 값(예: 약 30mm)이 설정될 수 있다. 일 실시예에 따른 제4 입력 장치(1304)(예: 컨트롤러)의 경우 실험치에 기반한 제4 분해능 값(예: 약 25mm)이 설정될 수 있다. 일 실시예에 따른 제5 입력 장치(1305)(예: 글로브)의 경우 실험치에 기반하여 제5 분해능 값(예: 약 20mm)이 설정될 수 있다. 일 실시예에 따른 제6 입력 장치(1306)(예: 스마트 펜)의 경우 실험치에 기반한 제6 분해능 값(예: 약 15mm)이 설정될 수 있다. 일 실시예에 따른 제7 입력 장치(1307)(예: 마우스)의 경우 실험치에 기반한 제7 분해능 값(예: 약 10mm)이 설정될 수 있다.Referring to FIG. 13, FIG. 13 may illustrate various examples of resolution values that are predefined for each type of input device (720). For example, a relatively large (or high) resolution value may be set for an input device (e.g., a user's hand) having low accuracy for object selection, and a relatively small (or low) resolution value may be set for an input device (e.g., a mouse) having high accuracy for object selection. For example, a lower resolution value may be assigned as the accuracy of object selection using the input device (720) increases. For example, as illustrated in FIG. 13, for a first input device (1301) (e.g., a user's hand) according to one embodiment, a first resolution value (e.g., approximately 40 mm) based on an experimental value may be set. For a second input device (1302) (e.g., a watch) according to one embodiment, a second resolution value (e.g., approximately 35 mm) based on an experimental value may be set. For a third input device (1303) (e.g., a ring) according to one embodiment, a third resolution value (e.g., about 30 mm) based on experimental values may be set. For a fourth input device (1304) (e.g., a controller) according to one embodiment, a fourth resolution value (e.g., about 25 mm) based on experimental values may be set. For a fifth input device (1305) (e.g., a glove) according to one embodiment, a fifth resolution value (e.g., about 20 mm) based on experimental values may be set. For a sixth input device (1306) (e.g., a smart pen) according to one embodiment, a sixth resolution value (e.g., about 15 mm) based on experimental values may be set. For a seventh input device (1307) (e.g., a mouse) according to one embodiment, a seventh resolution value (e.g., about 10 mm) based on experimental values may be set.

동작 1105에서, 프로세서(120)는 분해능 값을 지름으로 갖는 가상의 구를 생성하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치의 분해능 값에 기반하여 가상 공간(또는 가상의 구 또는 분해능 구)의 크기(또는 범위)를 결정할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치의 분해능 값을 지름(또는 입력 장치의 인디케이터로부터 분해능 값의 약 1/2을 반지름)으로 형성되는 가상의 구(또는 분해능 구)를 생성할 수 있다. In operation 1105, the processor (120) may perform an operation of generating a virtual sphere having a resolution value as a diameter. According to one embodiment, the processor (120) may determine a size (or range) of the virtual space (or the virtual sphere or the resolution sphere) based on the resolution value of the input device. According to one embodiment, the processor (120) may generate a virtual sphere (or the resolution sphere) formed with a diameter of the resolution value of the input device (or a radius of about 1/2 of the resolution value from an indicator of the input device).

동작 1107에서, 프로세서(120)는 가상의 구의 무게중심을 인디케이터에 매핑하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치에 대해 지정된 분해능 값을 지름으로 갖는 가상 공간의 무게중심을 인디케이터에 매핑할 수 있다. 이의 예가 도 12의 도시된다.In operation 1107, the processor (120) may perform an operation of mapping a center of gravity of a virtual sphere to an indicator. In one embodiment, the processor (120) may map a center of gravity of a virtual space having a diameter of a resolution value specified for an input device to the indicator. An example of this is illustrated in FIG. 12.

동작 1109에서, 프로세서(120)는 가상 공간을 형성하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치의 인디케이터를 기준으로 가상 공간의 무게중심을 매핑하고, 무게중심을 기준으로 지정된 분해능 값을 지름으로 갖는 가상 공간을 형성할 수 있다.In operation 1109, the processor (120) may perform an operation of forming a virtual space. According to one embodiment, the processor (120) may map a center of gravity of the virtual space based on an indicator of an input device, and form a virtual space having a diameter with a resolution value specified based on the center of gravity.

도 14는 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.FIG. 14 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.

일 실시예에 따라, 도 14는 일 실시예에 따른 전자 장치(101)에서 입력 장치에 대한 분해능 값을 결정하는 동작의 예를 나타낼 수 있다. According to one embodiment, FIG. 14 may illustrate an example of an operation for determining a resolution value for an input device in an electronic device (101) according to one embodiment.

본 개시의 일 실시예에 따른 전자 장치(101)에서 지원하는 동작 방법은, 예를 들어, 도 14에 도시된 흐름도에 따라 수행될 수 있다. 도 14에 도시된 흐름도는 전자 장치(101)의 동작의 일 실시예에 따른 흐름도에 불과하며, 적어도 일부 동작의 순서는 변경되거나 병렬적으로 수행되거나, 독립적인 동작으로 수행되거나, 또는 적어도 일부 다른 동작이 적어도 일부 동작에 보완적으로 수행될 수 있다. 본 개시의 일 실시예에 따르면, 동작 1401 내지 동작 1405는 전자 장치(101)의 적어도 하나의 프로세서(120)(예: 도 1 또는 도 5의 프로세서(120))에서 수행될 수 있다.An operation method supported by an electronic device (101) according to one embodiment of the present disclosure may be performed, for example, according to a flowchart illustrated in FIG. 14. The flowchart illustrated in FIG. 14 is merely a flowchart according to one embodiment of an operation of the electronic device (101), and the order of at least some operations may be changed or performed in parallel, performed as independent operations, or at least some other operations may be performed complementarily to at least some operations. According to one embodiment of the present disclosure, operations 1401 to 1405 may be performed by at least one processor (120) of the electronic device (101) (e.g., the processor (120) of FIG. 1 or FIG. 5 ).

일 실시예에 따르면, 도 14에서 설명되는 동작은, 예를 들어, 도 6 내지 도 13에서 설명된 동작들에 결합하여 휴리스틱하게 수행되거나, 설명된 동작의 적어도 일부 동작을 대체하고 적어도 일부 다른 동작에 결합하여 휴리스틱하게 수행되거나, 설명된 동작들의 적어 일부 동작의 상세 동작으로 휴리스틱하게 수행될 수 있다.According to one embodiment, the operations described in FIG. 14 may be performed heuristically, for example, in combination with the operations described in FIGS. 6 to 13 , or heuristically performed as a replacement for at least some of the operations described and combined with at least some other operations, or heuristically performed as a detailed operation of at least some of the operations described.

도 14에 도시한 바와 같이, 일 실시예에 따른 전자 장치(101)가 수행하는 동작 방법은, 입력 장치에 관련된 제1 분해능 값을 획득하는 동작(1401), 입력 장치에 대한 사용자 노이즈에 관련된 제2 분해능 값을 획득하는 동작(1403), 및 제1 분해능 값과 제2 분해능 값에 기반하여 입력 장치에 대한 분해능 값을 결정하는 동작(1405)을 포함할 수 있다.As illustrated in FIG. 14, an operation method performed by an electronic device (101) according to one embodiment may include an operation (1401) of obtaining a first resolution value related to an input device, an operation (1403) of obtaining a second resolution value related to user noise for the input device, and an operation (1405) of determining a resolution value for the input device based on the first resolution value and the second resolution value.

도 14를 참조하면, 동작 1401에서, 전자 장치(101)의 프로세서(120)는 입력 장치에 관련된 제1 분해능 값을 획득하는 동작을 수행할 수 있다. 일 실시예에서, 제1 분해능 값은 입력 장치에 미리 정의되는 기본 분해능 값을 포함할 수 있다.Referring to FIG. 14, at operation 1401, the processor (120) of the electronic device (101) may perform an operation of obtaining a first resolution value related to the input device. In one embodiment, the first resolution value may include a default resolution value predefined for the input device.

동작 1403에서, 프로세서(120)는 입력 장치에 대한 사용자 노이즈에 관련된 제2 분해능 값을 획득하는 동작을 수행할 수 있다. 일 실시예에서, 제2 분해능 값은 입력 장치를 이용하는 사용자에 의해 발생하는 사용자 노이즈(user nose)에 관련 보정 분해능 값을 포함할 수 있다. 예를 들어, 제2 보정 값은, 사용자가 입력 장치를 사용할 때, 사용자의 손 떨림과 같은 휴먼 에러에 대해 학습하고, 학습하는 결과에 기반하여 해당 입력 장치에 대한 보정 값으로 업데이트될 수 있다. 예를 들어, 제2 보정 값은 입력 장치에 대한 제1 분해능 값에 해당 입력 장치를 이용한 사용자 노이즈를 고려하여 보정되는 분해능 값을 포함할 수 있다. 일 실시예에 따르면, 분해능 값은 입력 장치 별로 전자 장치(101)에 미리 저장되는 제1 분해능 값과, 사용자의 학습에 따라 업데이트되는 사용자의 노이즈(user’s noise)를 보정하는 제2 분해능 값(예: 손 떨림 보정 값)을 포함할 수 있다.In operation 1403, the processor (120) may perform an operation of acquiring a second resolution value related to user noise for the input device. In one embodiment, the second resolution value may include a correction resolution value related to user noise (user nose) generated by a user using the input device. For example, the second correction value may learn about human errors, such as hand tremors, of a user when the user uses the input device, and may be updated as a correction value for the corresponding input device based on the learning result. For example, the second correction value may include a resolution value that is corrected by considering user noise using the corresponding input device for the first resolution value for the input device. According to one embodiment, the resolution value may include a first resolution value that is stored in advance in the electronic device (101) for each input device, and a second resolution value (e.g., a hand tremors correction value) that corrects user noise that is updated according to user learning.

동작 1405에서, 프로세서(120)는 제1 분해능 값과 제2 분해능 값에 기반하여 입력 장치에 대한 분해능 값을 결정하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치가 갖는 제1 분해능 값과 해당 입력 장치를 사용하는 사용자의 휴먼 에러(예: 사용자 노이즈)를 보상하는 제2 분해능 값을 고려하여, 입력 장치에 대한 최종 분해능 값을 산출할 수 있다.In operation 1405, the processor (120) may perform an operation of determining a resolution value for the input device based on the first resolution value and the second resolution value. According to one embodiment, the processor (120) may calculate a final resolution value for the input device by considering the first resolution value of the input device and the second resolution value that compensates for human error (e.g., user noise) of a user using the input device.

도 15는 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.FIG. 15 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.

도 16a 및 도 16b는 본 개시의 일 실시예에 따른 전자 장치에서 대상 가상 객체를 결정하는 예를 도시하는 도면들이다. FIGS. 16A and 16B are diagrams illustrating examples of determining a target virtual object in an electronic device according to one embodiment of the present disclosure.

일 실시예에 따라, 도 15는 일 실시예에 따른 전자 장치(101)에서 어포던스를 제공하기 위한 가이드 생성 모드로의 진입을 결정하는 동작의 예를 나타낼 수 있다. According to one embodiment, FIG. 15 may illustrate an example of an operation for determining entry into a guide generation mode for providing affordance in an electronic device (101) according to one embodiment.

본 개시의 일 실시예에 따른 전자 장치(101)에서 지원하는 동작 방법은, 예를 들어, 도 15에 도시된 흐름도에 따라 수행될 수 있다. 도 15에 도시된 흐름도는 전자 장치(101)의 동작의 일 실시예에 따른 흐름도에 불과하며, 적어도 일부 동작의 순서는 변경되거나 병렬적으로 수행되거나, 독립적인 동작으로 수행되거나, 또는 적어도 일부 다른 동작이 적어도 일부 동작에 보완적으로 수행될 수 있다. 본 개시의 일 실시예에 따르면, 동작 1501 내지 동작 1509는 전자 장치(101)의 적어도 하나의 프로세서(120)(예: 도 1 또는 도 5의 프로세서(120))에서 수행될 수 있다.An operation method supported by an electronic device (101) according to one embodiment of the present disclosure may be performed, for example, according to a flowchart illustrated in FIG. 15. The flowchart illustrated in FIG. 15 is merely a flowchart according to one embodiment of an operation of the electronic device (101), and the order of at least some operations may be changed or performed in parallel, performed as independent operations, or at least some other operations may be performed complementarily to at least some operations. According to one embodiment of the present disclosure, operations 1501 to 1509 may be performed by at least one processor (120) of the electronic device (101) (e.g., the processor (120) of FIG. 1 or FIG. 5 ).

일 실시예에 따르면, 도 15에서 설명되는 동작은, 예를 들어, 도 6 내지 도 14에서 설명된 동작들에 결합하여 휴리스틱하게 수행되거나, 설명된 동작의 적어도 일부 동작을 대체하고 적어도 일부 다른 동작에 결합하여 휴리스틱하게 수행되거나, 설명된 동작들의 적어 일부 동작의 상세 동작으로 휴리스틱하게 수행될 수 있다.According to one embodiment, the operations described in FIG. 15 may be performed heuristically, for example, in combination with the operations described in FIGS. 6 to 14 , or heuristically performed as a replacement for at least some of the operations described and combined with at least some other operations, or heuristically performed as a detailed operation of at least some of the operations described.

도 15에 도시한 바와 같이, 일 실시예에 따른 전자 장치(101)가 수행하는 동작 방법은, 가상 공간에 포함되는 대상 가상 객체를 식별하는 동작(1501), 대상 가상 객체가 지정된 조건을 만족하는지 판단하는 동작(1503), 대상 가상 객체가 지정된 조건을 만족하는 것에 기반하여 가이드 생성 모드 진입을 결정하는 동작(1505), 어포던스 생성에 관련된 동작을 수행하는 동작(1507), 및 대상 가장 객체가 지정된 조건을 만족하지 않는 것에 기반하여 해당 동작 수행을 처리하는 동작(1509)을 포함할 수 있다.As illustrated in FIG. 15, an operation method performed by an electronic device (101) according to an embodiment may include an operation (1501) of identifying a target virtual object included in a virtual space, an operation (1503) of determining whether the target virtual object satisfies a specified condition, an operation (1505) of determining entry into a guide generation mode based on the target virtual object satisfying the specified condition, an operation (1507) of performing an operation related to affordance generation, and an operation (1509) of processing the performance of the corresponding operation based on the target virtual object not satisfying the specified condition.

도 15를 참조하면, 동작 1501에서, 전자 장치(101)의 프로세서(120)는 가상 공간에 포함되는 대상 가상 객체를 식별하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 실행 화면 상의 복수의 가상 객체들 중 입력 장치를 기반으로 형성된 가상 공간에 포함된 가상 객체를 대상 가상 객체로 추출(또는 추론)할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치의 인디케이터를 중심으로 한 가상 공간에 가상 객체의 일부 또는 전체가 포함되는 경우 대상 가상 객체로 식별할 수 있다.Referring to FIG. 15, in operation 1501, the processor (120) of the electronic device (101) may perform an operation of identifying a target virtual object included in a virtual space. According to one embodiment, the processor (120) may extract (or infer) a virtual object included in a virtual space formed based on an input device among a plurality of virtual objects on an execution screen as a target virtual object. According to one embodiment, the processor (120) may identify a virtual object as a target virtual object when part or all of the virtual object is included in a virtual space centered on an indicator of the input device.

동작 1503에서, 프로세서(120)는 대상 가상 객체가 지정된 조건을 만족하는지 판단하는 동작을 수행할 수 있다. 일 실시예에서 따라, 지정된 조건은, 대상 가상 객체가 적어도 2개인 복수의 가상 객체이고, 복수의 가상 객체 각각의 무게중심 간 거리가 지정된 근접거리 이하인 조건을 포함할 수 있다. 이의 예가 도 16a 및 도 16b에 도시된다.In operation 1503, the processor (120) may perform an operation of determining whether the target virtual object satisfies a specified condition. According to one embodiment, the specified condition may include a condition in which the target virtual object is a plurality of virtual objects, at least two of which are virtual objects, and a distance between centers of gravity of each of the plurality of virtual objects is less than or equal to a specified proximity distance. Examples of this are illustrated in FIGS. 16A and 16B.

도 16a를 참조하면, 도 16a는 가상 공간(740) 내에 제1 가상 객체(1610)와 제2 가상 객체(1620)이 모두 포함되는 경우의 예를 나타낼 수 있다. 예를 들어, 가상 공간(740) 내에 적어도 2개의 가상 객체(예: 제1 가상 객체(1610) 및 제2 가상 객체(1620))와 같이 복수의 가상 객체들이 포함되는 경우, 사용자가 가상 객체의 구분 선택이 어려울 수 있다. 일 실시예에 따르면, 프로세서(120)는 가상 공간(740) 내에 적어도 2개의 가상 객체(1610, 1620)가 포함되는 경우, 사용자가 손쉽게 가상 객체를 선택하여 조작할 수 있도록, 적어도 2개의 가상 객체(1610, 1620)에 대한 어포던스를 제공하도록 동작할 수 있다.Referring to FIG. 16A, FIG. 16A may illustrate an example in which both a first virtual object (1610) and a second virtual object (1620) are included in a virtual space (740). For example, in a case in which a plurality of virtual objects, such as at least two virtual objects (e.g., the first virtual object (1610) and the second virtual object (1620)), are included in a virtual space (740), it may be difficult for a user to distinguish and select the virtual objects. According to one embodiment, in a case in which at least two virtual objects (1610, 1620) are included in a virtual space (740), the processor (120) may operate to provide affordances for at least two virtual objects (1610, 1620) so that a user can easily select and manipulate the virtual objects.

도 16b를 참조하면, 도 16b는 가상 공간(740) 내에 제3 가상 객체(1630)의 일부와 제4 가상 객체(1640)의 일부가 포함되는 경우의 예를 나타낼 수 있다. 예를 들어, 가상 공간(740) 내에 적어도 2개의 가상 객체(예: 예: 제3 가상 객체(1630) 및 제4 가상 객체(1640))와 같이 복수의 가상 객체들의 일부가 포함되는 경우, 복수의 가상 객체들(1630, 1640) 각각의 무게중심 간 거리에 따라, 사용자가 가상 객체의 구분 선택이 쉽거나 어려울 수 있다. 일 실시예에 따라, 도 16b에 예시한 바와 같이, 제3 가상 객체(1630)의 제1 무게중심(1635)과 제4 가상 객체(1640)의 제2 무게중심(1645) 간 거리(L)가 지정된 근접거리보다 큰 경우, 사용자는 가상 객체의 구분 선택이 용이할 수 있다. 예를 들어, 적어도 하나의 가상 객체의 무게중심이 가상 공간(740) 밖에 존재하고, 가상 객체들(1630, 1640) 간 중첩이 없는 경우, 사용자의 가상 객체에 대한 구분 선택은 쉬울 수 있다. Referring to FIG. 16B, FIG. 16B may illustrate an example in which a part of a third virtual object (1630) and a part of a fourth virtual object (1640) are included in a virtual space (740). For example, in a case in which a part of a plurality of virtual objects, such as at least two virtual objects (e.g., the third virtual object (1630) and the fourth virtual object (1640)), are included in a virtual space (740), it may be easy or difficult for a user to select a distinction between the virtual objects depending on the distance between the centers of gravity of each of the plurality of virtual objects (1630, 1640). According to one embodiment, as illustrated in FIG. 16B, when the distance (L) between the first center of gravity (1635) of the third virtual object (1630) and the second center of gravity (1645) of the fourth virtual object (1640) is greater than a specified proximity distance, it may be easy for a user to select a distinction between the virtual objects. For example, if the center of gravity of at least one virtual object exists outside the virtual space (740) and there is no overlap between the virtual objects (1630, 1640), the user's selection of a distinction for the virtual object can be easy.

일 실시예에 따라, 도 16b에서 제3 가상 객체(1630)의 제1 무게중심(1635)과 제4 가상 객체(1640)의 제2 무게중심(1645) 간 거리(L)가 지정된 근접거리 이하인 경우, 사용자는 가상 객체의 구분 선택이 용이하지 않을 수 있다. 예를 들어, 복수의 가상 객체들(1630, 1640)의 무게중심(1635, 1645)이 가상 공간(740) 내에 존재하거나, 또는 가상 객체들(1630, 1640) 간 중첩이 잇는 경우, 사용자의 가상 객체에 대한 구분 선택이 어려울 수 있다. 일 실시예에 따르면, 프로세서(120)는 복수의 가상 객체들(1630, 1640)의 무게중심(1635, 1645) 간 거리(L)가 지정된 근접거리 이하인 경우, 사용자가 손쉽게 가상 객체를 선택하여 조작할 수 있도록, 적어도 2개의 가상 객체(1630, 1640)에 대한 어포던스를 제공하도록 동작할 수 있다.In one embodiment, if the distance (L) between the first center of gravity (1635) of the third virtual object (1630) and the second center of gravity (1645) of the fourth virtual object (1640) in FIG. 16b is less than or equal to a specified proximity distance, the user may not easily select a distinct virtual object. For example, if the centers of gravity (1635, 1645) of a plurality of virtual objects (1630, 1640) exist within the virtual space (740) or there is overlap between the virtual objects (1630, 1640), the user may have difficulty selecting a distinct virtual object. According to one embodiment, the processor (120) may be operable to provide affordances for at least two virtual objects (1630, 1640) so that a user can easily select and manipulate the virtual objects when the distance (L) between centers of gravity (1635, 1645) of the plurality of virtual objects (1630, 1640) is less than or equal to a specified proximity distance.

동작 1503에서, 프로세서(120)는 대상 가상 객체가 지정된 조건을 만족하는 것으로 판단하는 경우(예: 동작 1503의 ‘예’), 동작 1505에서, 가이드 생성 모드 진입을 결정하는 동작을 수행할 수 있다. 일 실시예에서 따르면, 프로세서(120)는 가상 공간 내의 대상 가상 객체가 적어도 2개인 복수의 가상 객체이고, 복수의 가상 객체 각각의 무게중심 간 거리가 지정된 근접거리 이하인 경우, 지정된 조건을 만족하는 것으로 판단할 수 있다. 일 실시예에 따르면, 프로세서(120)는 지정된 조건을 만족하는 것을 판단하는 것에 기반하여 어포던스를 생성하기 위한 가이드 생성 모드 진입을 결정할 수 있다. 이의 예가 도 16a에 도시된다.In operation 1503, if the processor (120) determines that the target virtual object satisfies the specified condition (e.g., ‘Yes’ in operation 1503), in operation 1505, the processor (120) may perform an operation of determining whether to enter a guide generation mode. According to one embodiment, if the target virtual object in the virtual space is a plurality of virtual objects, which are at least two, and the distance between the centers of gravity of each of the plurality of virtual objects is less than or equal to a specified proximity distance, the processor (120) may determine that the specified condition is satisfied. According to one embodiment, the processor (120) may determine to enter a guide generation mode for generating an affordance based on determining that the specified condition is satisfied. An example of this is illustrated in FIG. 16A.

동작 1507에서, 프로세서(120)는 어포던스 생성에 관련된 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 가이드 생성 모드로 진입하고, 가상 공간에 포함되는 복수의 가상 객체들에 연관된 어포던스를 생성하는 동작을 수행할 수 있다. 일 실시예에 따라, 어포던스를 생성하여 제공하는 동작 예와 관련하여 후술하는 도면들을 참조하여 설명된다.In operation 1507, the processor (120) may perform an operation related to affordance generation. According to one embodiment, the processor (120) may enter a guide generation mode and perform an operation of generating affordances associated with a plurality of virtual objects included in a virtual space. According to one embodiment, an operation example of generating and providing affordances is described with reference to the drawings described below.

동작 1503에서, 프로세서(120)는 대상 가장 객체가 지정된 조건을 만족하지 않는 것으로 판단하는 경우(예: 동작 1503의 ‘아니오’), 동작 1509에서, 해당 동작 수행을 처리하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치를 이용한 사용자 입력을 인식할 수 있다. 일 실시예에 따르면, 프로세서(120)는 사용자 입력에 기반하여 가상 객체를 선택하여 관련 기능(예: 객체 이동, 객체 편집)을 실행하는 동작을 처리할 수 있다.In operation 1503, if the processor (120) determines that the target virtual object does not satisfy the specified condition (e.g., ‘No’ in operation 1503), in operation 1509, the processor (120) may perform an operation for processing the execution of the corresponding operation. According to one embodiment, the processor (120) may recognize a user input using an input device. According to one embodiment, the processor (120) may process an operation for selecting a virtual object based on the user input and executing a related function (e.g., object movement, object editing).

도 17은 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.FIG. 17 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.

일 실시예에 따라, 도 17은 일 실시예에 따른 전자 장치(101)에서 어포던스를 제공하기 위한 가이드 생성 모드로의 진입을 결정하는 동작의 예를 나타낼 수 있다. According to one embodiment, FIG. 17 may illustrate an example of an operation for determining entry into a guide generation mode for providing affordance in an electronic device (101) according to one embodiment.

본 개시의 일 실시예에 따른 전자 장치(101)에서 지원하는 동작 방법은, 예를 들어, 도 17에 도시된 흐름도에 따라 수행될 수 있다. 도 17에 도시된 흐름도는 전자 장치(101)의 동작의 일 실시예에 따른 흐름도에 불과하며, 적어도 일부 동작의 순서는 변경되거나 병렬적으로 수행되거나, 독립적인 동작으로 수행되거나, 또는 적어도 일부 다른 동작이 적어도 일부 동작에 보완적으로 수행될 수 있다. 본 개시의 일 실시예에 따르면, 동작 1701 내지 동작 1715는 전자 장치(101)의 적어도 하나의 프로세서(120)(예: 도 1 또는 도 5의 프로세서(120))에서 수행될 수 있다.An operation method supported by an electronic device (101) according to one embodiment of the present disclosure may be performed, for example, according to a flowchart illustrated in FIG. 17. The flowchart illustrated in FIG. 17 is merely a flowchart according to one embodiment of an operation of the electronic device (101), and the order of at least some operations may be changed or performed in parallel, performed as independent operations, or at least some other operations may be performed complementarily to at least some operations. According to one embodiment of the present disclosure, operations 1701 to 1715 may be performed by at least one processor (120) of the electronic device (101) (e.g., the processor (120) of FIG. 1 or FIG. 5 ).

일 실시예에 따르면, 도 17에서 설명되는 동작은, 예를 들어, 도 6 내지 도 16b에서 설명된 동작들에 결합하여 휴리스틱하게 수행되거나, 설명된 동작의 적어도 일부 동작을 대체하고 적어도 일부 다른 동작에 결합하여 휴리스틱하게 수행되거나, 설명된 동작들의 적어 일부 동작의 상세 동작으로 휴리스틱하게 수행될 수 있다.According to one embodiment, the operations described in FIG. 17 may be performed heuristically, for example, in combination with the operations described in FIGS. 6 to 16b , or heuristically performed as a replacement for at least some of the operations described and combined with at least some other operations, or heuristically performed as a detailed operation of at least some of the operations described.

도 17에 도시한 바와 같이, 일 실시예에 따른 전자 장치(101)가 수행하는 동작 방법은, 가상 공간에 포함되는 대상 가상 객체를 식별하는 동작(1701), 가상 공간이 복수의 대상 가상 객체를 포함하는지 판단하는 동작(1703), 가상 공간에 복수의 대상 가상 객체를 포함되는 것에 기반하여 복수의 대상 가상 객체에 각각 대응하는 무게중심을 판단하는 동작(1705), 복수의 대상 가상 객체 각각의 무게중심들 사이의 거리를 판단하는 동작(1707), 무게중심들 사이의 거리와 지정된 근접거리를 비교하는 동작(1709), 무게중심들 사이의 거리 중 지정된 근접거리 이하인 거리가 존재하는지 판단하는 동작(1711), 지정된 근접거리 이하인 거리가 존재하는 것에 기반하여 가이드 생성 모드 진입을 결정하는 동작(1713), 및 가상 공간에 복수의 대상 가상 객체가 포함되지 않거나, 또는 지정된 근접거리 이하인 거리가 존재하지 않는 경우 해당 동작 수행을 처리하는 동작(1715)을 포함할 수 있다.As illustrated in FIG. 17, an operation method performed by an electronic device (101) according to an embodiment may include an operation of identifying a target virtual object included in a virtual space (1701), an operation of determining whether the virtual space includes a plurality of target virtual objects (1703), an operation of determining a center of gravity corresponding to each of the plurality of target virtual objects based on the inclusion of the plurality of target virtual objects in the virtual space (1705), an operation of determining a distance between the centers of gravity of each of the plurality of target virtual objects (1707), an operation of comparing the distance between the centers of gravity with a specified proximity distance (1709), an operation of determining whether there is a distance between the centers of gravity that is less than or equal to the specified proximity distance (1711), an operation of determining entry into a guide generation mode based on the existence of a distance less than or equal to the specified proximity distance (1713), and an operation of processing the execution of the corresponding operation when the virtual space does not include a plurality of target virtual objects or does not include a distance less than or equal to the specified proximity distance (1715).

도 17을 참조하면, 동작 1701에서, 전자 장치(101)의 프로세서(120)는 가상 공간에 포함되는 대상 가상 객체를 식별하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 실행 화면 상의 복수의 가상 객체들 중 입력 장치를 기반으로 형성된 가상 공간에 포함된 가상 객체를 대상 가상 객체로 추출(또는 추론)할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치의 인디케이터를 중심으로 한 가상 공간에 가상 객체의 일부 또는 전체가 포함되는 경우 대상 가상 객체로 식별할 수 있다.Referring to FIG. 17, in operation 1701, the processor (120) of the electronic device (101) may perform an operation of identifying a target virtual object included in a virtual space. According to one embodiment, the processor (120) may extract (or infer) a virtual object included in a virtual space formed based on an input device among a plurality of virtual objects on an execution screen as a target virtual object. According to one embodiment, the processor (120) may identify a virtual object as a target virtual object when part or all of the virtual object is included in a virtual space centered on an indicator of the input device.

동작 1703에서, 프로세서(120)는 가상 공간이 복수의 대상 가상 객체를 포함하는지 판단하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 도 16a 및/또는 도 16b의 예시와 같이, 가상 공간에 적어도 2개의 복수의 대상 가상 객체가 포함되는지 여부를 판단할 수 있다.In operation 1703, the processor (120) may perform an operation of determining whether the virtual space includes a plurality of target virtual objects. According to one embodiment, the processor (120) may determine whether the virtual space includes at least two plurality of target virtual objects, as in the examples of FIG. 16A and/or FIG. 16B.

동작 1703에서, 프로세서(120)는 가상 공간에 복수의 대상 가상 객체가 포함되지 않는 것을 판단하는 경우(예: 동작 1703의 ‘아니오’), 동작 1715에서, 해당 동작 수행을 처리할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치를 이용한 사용자 입력을 인식할 수 있다. 일 실시예에 따르면, 프로세서(120)는 사용자 입력에 기반하여 가상 객체를 선택하여 관련 기능(예: 객체 이동, 객체 편집)을 실행하는 동작을 처리할 수 있다.In operation 1703, if the processor (120) determines that the virtual space does not include multiple target virtual objects (e.g., ‘No’ in operation 1703), in operation 1715, the processor (120) may process the execution of the corresponding operation. According to one embodiment, the processor (120) may recognize a user input using an input device. According to one embodiment, the processor (120) may process an operation of selecting a virtual object based on the user input and executing a related function (e.g., object movement, object editing).

동작 1703에서, 프로세서(120)는 가상 공간에 복수의 대상 가상 객체를 포함되는 것을 판단하는 경우(예: 동작 1703의 ‘예’), 동작 1705에서, 복수의 대상 가상 객체에 각각 대응하는 무게중심을 판단하는 동작을 수행할 수 있다.In operation 1703, if the processor (120) determines that the virtual space includes multiple target virtual objects (e.g., ‘Yes’ in operation 1703), in operation 1705, the processor may perform an operation of determining a center of gravity corresponding to each of the multiple target virtual objects.

동작 1707에서, 프로세서(120)는 복수의 대상 가상 객체 각각의 무게중심들 사이의 거리를 판단하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 가상 공간 내에 적어도 2개의 가상 객체와 같이 복수의 가상 객체들의 일부 또는 전부가 포함되는 경우, 복수의 가상 객체들 각각의 무게중심 간 거리를 판단할 수 있다. 예를 들어, 프로세서(120)는, 도 16b에 예시한 바와 같이, 제3 가상 객체(1630)의 제1 무게중심(1635)과 제4 가상 객체(1640)의 제2 무게중심(1645) 간 거리(L)를 판단할 수 있다. In operation 1707, the processor (120) may perform an operation of determining a distance between centers of gravity of each of the plurality of target virtual objects. According to one embodiment, when some or all of the plurality of virtual objects, such as at least two virtual objects, are included in a virtual space, the processor (120) may determine the distance between the centers of gravity of each of the plurality of virtual objects. For example, the processor (120) may determine a distance (L) between a first center of gravity (1635) of a third virtual object (1630) and a second center of gravity (1645) of a fourth virtual object (1640), as illustrated in FIG. 16B .

동작 1709에서, 프로세서(120)는 무게중심들 사이의 거리와 지정된 근접거리를 비교하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 가상 공간 내의 복수의 대상 가상 객체들에 각각 대응하는 무게중심들 간의 거리(예: 제1 거리 및 제2 거리와 같은 복수의 거리)와 지정된 근접거리를 각각 비교할 수 있다. 예를 들어, 가상 공간에 제1 가상 객체, 제2 가상 객체 및 제3 가상 객체가 포함되는 것을 가정할 수 있다. 일 실시예에 따르면, 프로세서(120)는 제1 가상 객체와 제2 가상 객체의 무게중심들 간 제1 거리, 제1 가상 객체와 제3 가상 객체의 무게중심들 간 제2 거리, 제2 가상 객체와 제3 가상 객체의 무게중심들 간 제3 거리를 판단할 수 있다. 일 실시예에 따르면, 프로세서(120)는 제1 거리와 지정된 근접거리를 비교하고, 제2 거리와 지정된 근접거리를 비교하고, 제3 거리와 지정된 근접거리를 비교할 수 있다.In operation 1709, the processor (120) may perform an operation of comparing a distance between centers of gravity with a designated proximity distance. According to one embodiment, the processor (120) may compare distances between centers of gravity (e.g., multiple distances such as a first distance and a second distance) corresponding to each of a plurality of target virtual objects in the virtual space with the designated proximity distance. For example, it may be assumed that the virtual space includes a first virtual object, a second virtual object, and a third virtual object. According to one embodiment, the processor (120) may determine a first distance between centers of gravity of the first virtual object and the second virtual object, a second distance between centers of gravity of the first virtual object and the third virtual object, and a third distance between centers of gravity of the second virtual object and the third virtual object. According to one embodiment, the processor (120) may compare the first distance with the designated proximity distance, compare the second distance with the designated proximity distance, and compare the third distance with the designated proximity distance.

동작 1711에서, 프로세서(120)는 무게중심들 사이의 거리 중 지정된 근접거리 이하인 거리가 존재하는지 판단하는 동작을 수행할 수 있다. 일 실시예에 따르면, 제1 거리, 제2 거리 및/또는 제3 거리 중 지정된 근거리 이하인 거리가 존재하는지 판단할 수 있다.In operation 1711, the processor (120) may perform an operation of determining whether there is a distance between centers of gravity that is less than or equal to a specified close distance. According to one embodiment, it may be determined whether there is a distance less than or equal to a specified close distance among the first distance, the second distance, and/or the third distance.

동작 1711에서, 프로세서(120)는 지정된 근접거리 이하인 거리가 존재하는 것을 판단하는 경우(예: 동작 1711의 ‘예’), 동작 1713에서, 가이드 생성 모드 진입을 결정하는 동작을 수행할 수 있다. 일 실시예에서 따르면, 프로세서(120)는 가상 공간 내의 대상 가상 객체가 적어도 2개인 복수의 가상 객체이고, 복수의 가상 객체 각각의 무게중심 간 거리가 지정된 근접거리 이하인 경우, 어포던스를 생성하기 위한 가이드 생성 모드 진입을 결정할 수 있다.In operation 1711, if the processor (120) determines that there is a distance less than or equal to a specified proximity distance (e.g., ‘Yes’ in operation 1711), in operation 1713, the processor (120) may perform an operation of determining entry into a guide generation mode. According to one embodiment, if there are at least two target virtual objects in a virtual space and the distance between the centers of gravity of each of the plurality of virtual objects is less than or equal to a specified proximity distance, the processor (120) may determine entry into a guide generation mode for generating an affordance.

동작 1711에서, 프로세서(120)는 지정된 근접거리 이하인 거리가 존재하지 않는 것을 판단하는 경우(예: 동작 1711의 ‘아니오’), 동작 1715에서, 해당 동작 수행을 처리할 수 있다. 일 실시예에 따르면, 프로세서(120)는 입력 장치를 이용한 사용자 입력을 인식할 수 있다. 일 실시예에 따르면, 프로세서(120)는 사용자 입력에 기반하여 가상 객체를 선택하여 관련 기능(예: 객체 이동, 객체 편집)을 실행하는 동작을 처리할 수 있다.In operation 1711, if the processor (120) determines that there is no distance less than the specified proximity distance (e.g., ‘No’ in operation 1711), in operation 1715, the processor (120) may process the execution of the corresponding operation. According to one embodiment, the processor (120) may recognize a user input using an input device. According to one embodiment, the processor (120) may process an operation of selecting a virtual object based on the user input and executing a related function (e.g., object movement, object editing).

도 18은 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.FIG. 18 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.

일 실시예에 따라, 도 18은 일 실시예에 따른 전자 장치(101)에서 어포던스를 제공하는 동작의 예를 나타낼 수 있다. According to one embodiment, FIG. 18 may illustrate an example of an operation of providing affordance in an electronic device (101) according to one embodiment.

본 개시의 일 실시예에 따른 전자 장치(101)에서 지원하는 동작 방법은, 예를 들어, 도 18에 도시된 흐름도에 따라 수행될 수 있다. 도 18에 도시된 흐름도는 전자 장치(101)의 동작의 일 실시예에 따른 흐름도에 불과하며, 적어도 일부 동작의 순서는 변경되거나 병렬적으로 수행되거나, 독립적인 동작으로 수행되거나, 또는 적어도 일부 다른 동작이 적어도 일부 동작에 보완적으로 수행될 수 있다. 본 개시의 일 실시예에 따르면, 동작 1801 내지 동작 1803은 전자 장치(101)의 적어도 하나의 프로세서(120)(예: 도 1 또는 도 5의 프로세서(120))에서 수행될 수 있다.An operation method supported by an electronic device (101) according to one embodiment of the present disclosure may be performed, for example, according to a flowchart illustrated in FIG. 18. The flowchart illustrated in FIG. 18 is merely a flowchart according to one embodiment of an operation of the electronic device (101), and the order of at least some operations may be changed or performed in parallel, performed as independent operations, or at least some other operations may be performed complementarily to at least some operations. According to one embodiment of the present disclosure, operations 1801 to 1803 may be performed by at least one processor (120) of the electronic device (101) (e.g., the processor (120) of FIG. 1 or FIG. 5 ).

일 실시예에 따르면, 도 18에서 설명되는 동작은, 예를 들어, 도 6 내지 도 17에서 설명된 동작들에 결합하여 휴리스틱하게 수행되거나, 설명된 동작의 적어도 일부 동작을 대체하고 적어도 일부 다른 동작에 결합하여 휴리스틱하게 수행되거나, 설명된 동작들의 적어 일부 동작의 상세 동작으로 휴리스틱하게 수행될 수 있다.According to one embodiment, the operations described in FIG. 18 may be performed heuristically, for example, in combination with the operations described in FIGS. 6 to 17, or heuristically performed as a replacement for at least some of the operations described and combined with at least some other operations, or heuristically performed as a detailed operation of at least some of the operations described.

도 18에 도시한 바와 같이, 일 실시예에 따른 전자 장치(101)가 수행하는 동작 방법은, 어포던스 배치 방식을 판단하는 동작(1801), 및 배치 방식과 분해능 값에 기반하여 어포던스를 렌더링(rendering)하는 동작(1803)을 포함할 수 있다.As illustrated in FIG. 18, an operation method performed by an electronic device (101) according to one embodiment may include an operation (1801) of determining an affordance arrangement method, and an operation (1803) of rendering an affordance based on the arrangement method and a resolution value.

도 18을 참조하면, 동작 1801에서, 전자 장치(101)의 프로세서(120)는 어포던스 배치 방식을 판단하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 가상 공간과 대상 가상 객체 간의 관계에 기반하여, 가상 공간 상에 어포던스를 배치하기 위한 지정된 배치 방식(또는 어포던스 유형 또는 어포던스의 표시 유형)을 판단할 수 있다. 일 실시예에 따라, 지정된 배치 방식은 대상 가상 객체와 가상 공간의 표면에 접촉되는 공간에 어포던스를 배치하여 제공하는 배치 방식(예: 제1 배치 방식)을 포함할 수 있다. 일 실시예에 따라, 지정된 배치 방식은 가상 공간의 외부에서 대상 가상 객체에 각각 대응하는 목록으로 어포던스를 배치하여 제공하는 배치 방식(예: 제2 배치 방식)을 포함할 수 있다.Referring to FIG. 18, in operation 1801, the processor (120) of the electronic device (101) may perform an operation of determining an affordance arrangement method. According to one embodiment, the processor (120) may determine a designated arrangement method (or an affordance type or an affordance display type) for arranging an affordance on a virtual space based on a relationship between the virtual space and the target virtual object. According to one embodiment, the designated arrangement method may include a arrangement method (e.g., a first arrangement method) that provides an affordance by arranging it in a space in contact with a surface of the virtual space and the target virtual object. According to one embodiment, the designated arrangement method may include a arrangement method (e.g., a second arrangement method) that provides an affordance by arranging it in a list corresponding to each target virtual object outside the virtual space.

동작 1803에서, 프로세서(120)는 지정된 배치 방식과 분해능 값에 기반하여 어포던스를 렌더링(rendering)하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 2차원 또는 3차원 그래픽 데이터(예: 지정된 형상(예: 큐브형, 원형, 타원형, 세모형, 마름모형)의 아이콘 또는 이미지, 객체 형상의 이미지, 객체에 포함된 텍스트 인식 기반 텍스트)로 어포던스를 생성할 수 있다. 일 실시예에 따르면, 프로세서(120)는 가상 환경에서 대상 가상 객체에 관련된 객체 정보(예: 위치, 색상, 및/또는 광원에 관한 정보)를 고려하여, 사실감 있게 어포던스를 생성할 수 있다. 예를 들어, 프로세서(120)는 대상 가상 객체의 색상과 대비되는 색상으로 어포던스를 생성하고, 가상 공간에서 대상 가상 객체의 위치와 겹치지 않는 공간에 어포던스를 배치할 수 있다. 예를 들어, 프로세서(120)는 분해능 값에 기반하여 어포던스의 크기 및/또는 간격을 결정하고, 결정된 크기 및/또는 간격에 기반하여 어포던스를 배치할 수 있다. 이의 예가 도 19a, 도 19b 및 도 19c에 도시된다. In operation 1803, the processor (120) may perform an operation of rendering an affordance based on a specified arrangement method and a resolution value. According to one embodiment, the processor (120) may generate an affordance with two-dimensional or three-dimensional graphic data (e.g., an icon or image of a specified shape (e.g., a cube, a circle, an oval, a triangle, a diamond), an image of an object shape, text based on text recognition included in an object). According to one embodiment, the processor (120) may generate an affordance realistically by considering object information (e.g., information about a location, a color, and/or a light source) related to a target virtual object in a virtual environment. For example, the processor (120) may generate an affordance with a color contrasting with a color of a target virtual object, and may place the affordance in a space that does not overlap with a location of the target virtual object in the virtual space. For example, the processor (120) can determine the size and/or spacing of the affordance based on the resolution value, and place the affordance based on the determined size and/or spacing. Examples of this are illustrated in FIGS. 19a, 19b, and 19c.

도 19a, 도 19b 및 도 19c는 본 개시의 일 실시예에 따른 전자 장치에서 어포던스를 제공하는 예를 도시하는 도면들이다.FIGS. 19A, 19B, and 19C are diagrams illustrating examples of providing affordance in an electronic device according to one embodiment of the present disclosure.

도 19a, 도 19b 및 도 19c에 예시한 바와 같이, 어포던스는 가상 공간(740)에 기반하여 대상 가상 객체에 각각 대응하는 지정된 객체 형태로 제공될 수 있다. 일 실시예에 따르면, 배치된 어포던스 사이의 간격(L)이 가상 공간의 반지름(r)보다 작은 경우(예: L < r), 대상 가상 객체에 각각 대응하는 지정된 목록 형태로 제공될 수 있다.As illustrated in FIGS. 19a, 19b, and 19c, affordances may be provided in the form of designated objects each corresponding to a target virtual object based on the virtual space (740). According to one embodiment, when the interval (L) between the arranged affordances is smaller than the radius (r) of the virtual space (e.g., L < r), affordances may be provided in the form of designated lists each corresponding to a target virtual object.

도 19a를 참조하면, 도 19a는 대상 가상 객체(예: 제1 가상 객체(1910), 제2 가상 객체(1920))가 가상 공간(740)에 걸쳐 있는 경우에 어포던스를 배치하는 예를 나타낼 수 있다. 일 실시예에 따르면, 전자 장치(101)는 대상 가상 객체(1910, 1920)가 가상 공간(740)에 걸쳐있는 경우, 어포던스 유형을 대상 가상 객체(1910, 1920)의 내부에 배치하는 내부 배치 방식(또는 내부 유형)으로 결정할 수 있다. Referring to FIG. 19A, FIG. 19A may illustrate an example of arranging an affordance when a target virtual object (e.g., a first virtual object (1910), a second virtual object (1920)) spans a virtual space (740). According to one embodiment, when the target virtual objects (1910, 1920) span a virtual space (740), the electronic device (101) may determine an affordance type as an internal arrangement method (or internal type) that places the affordance type inside the target virtual objects (1910, 1920).

일 실시예에 따르면, 전자 장치(101)는 대상 가상 객체(1910, 1920)가 가상 공간(740)의 표면과 접촉하는 공간(또는 면)에 어포던스(예: 제1 어포던스(1915), 제2 어포던스(1925))(예: 가상 객체 내부에 배치되는 내부 어포던스)를 배치하여 제공할 수 있다. 예를 들어, 제1 가상 객체(1910)가 가상 공간(740)과 접촉하는 면에 제1 어포던스(1915)(예: 제1 내부 핸들)를 배치하고, 제2 가상 객체(1920)가 가상 공간(740)과 접촉하는 면에 제2 어포던스(1925)(예: 제2 내부 핸들)를 배치할 수 있다.According to one embodiment, the electronic device (101) may provide an affordance (e.g., a first affordance (1915), a second affordance (1925)) (e.g., an internal affordance disposed inside the virtual object) by placing it on a space (or surface) where the target virtual object (1910, 1920) contacts a surface of the virtual space (740). For example, the first affordance (1915) (e.g., a first internal handle) may be placed on a surface where the first virtual object (1910) contacts the virtual space (740), and the second affordance (1925) (e.g., a second internal handle) may be placed on a surface where the second virtual object (1920) contacts the virtual space (740).

도 19b를 참조하면, 도 19b는 대상 가상 객체(예: 제3 가상 객체(1930), 제4 가상 객체(1940))가 가상 공간(740)의 내부에 있는 경우에 어포던스를 배치하는 예를 나타낼 수 있다. 일 실시예에 따르면, 전자 장치(101)는 대상 가상 객체(1930, 1940)가 가상 공간(740) 내부에 존재하는 경우, 어포던스 유형을 가상 공간(740)의 표면으로의 연장선상의 공간(또는 면)에 배치하는 외부 배치 방식(또는 외부 유형)으로 결정할 수 있다. Referring to FIG. 19B, FIG. 19B may illustrate an example of arranging an affordance when a target virtual object (e.g., a third virtual object (1930), a fourth virtual object (1940)) is inside a virtual space (740). According to one embodiment, when the target virtual objects (1930, 1940) are inside a virtual space (740), the electronic device (101) may determine an affordance type as an external arrangement method (or external type) that arranges the affordance type in a space (or surface) on an extension line to a surface of the virtual space (740).

일 실시예에 따르면, 전자 장치(101)는 가상 공간(740)의 표면으로의 연장선상의 공간에 어포던스(예: 제3 어포던스(1935), 제4 어포던스(1945))(예: 가상 공간(740) 표면에 배치되는 외부 어포던스)를 배치하여 제공할 수 있다. 예를 들어, 제3 가상 객체(1930)로부터 가상 공간(740)의 근접된 표면(예: 짧은 거리의 표면)으로의 연장선상의 공간(또는 연장선상에 접촉하는 면)에 제3 어포던스(1935)(예: 제1 외부 핸들)를 배치하고, 제4 가상 객체(1940)로부터 가상 공간(740)의 근접된 표면(예: 짧은 거리의 표면)으로의 연장선상의 공간(또는 연장선상에 접촉하는 면)에 제4 어포던스(1945)(예: 제2 외부 핸들)를 배치할 수 있다.According to one embodiment, the electronic device (101) may provide an affordance (e.g., a third affordance (1935), a fourth affordance (1945)) (e.g., an external affordance disposed on the surface of the virtual space (740)) by placing it in a space along an extension line to a surface of the virtual space (740). For example, the third affordance (1935) (e.g., a first external handle) may be placed in a space along an extension line from a third virtual object (1930) to a close surface (e.g., a surface at a short distance) of the virtual space (740) (or a surface contacting the extension line), and the fourth affordance (1945) (e.g., a second external handle) may be placed in a space along an extension line from a fourth virtual object (1940) to a close surface (e.g., a surface at a short distance) of the virtual space (740) (or a surface contacting the extension line).

도 19c를 참조하면, 도 19c는 대상 가상 객체(예: 제5 가상 객체(1950), 제6 가상 객체(1960), 제7 가상 객체(1970), 및 제8 가상 객체(1980))의 일부 또는 전체가 가상 공간(740) 내부에 존재하거나, 가상 공간(740)에 걸쳐 있고, 적어도 일부 어포던스 사이의 간격(L)이 가상 공간(740)의 반지름보다 작은 경우에 어포던스를 배치하는 예를 나타낼 수 있다. 일 실시예에 따르면, 전자 장치(101)는 어포던스(예: 제5 어포던스(1955), 제6 어포던스(1965), 제7 어포던스(1975), 및 제8 어포던스(1985))를 가상 공간(740)에 기반하여 배치하고, 가상 공간(740)에 배치된 어포던스(1955, 1965, 1975, 1985) 각각의 사이의 간격(L)이 가상 공간(740)의 반지름보다 작은 경우, 어포던스 유형을 가상 환경 내에서 가상 공간(740)의 외곽에 목록 형태로 배치하는 목록 배치 방식(또는 목록 유형)으로 결정할 수 있다. Referring to FIG. 19c, FIG. 19c may illustrate an example of arranging affordances when some or all of target virtual objects (e.g., the fifth virtual object (1950), the sixth virtual object (1960), the seventh virtual object (1970), and the eighth virtual object (1980)) exist within the virtual space (740) or span the virtual space (740), and a gap (L) between at least some affordances is smaller than a radius of the virtual space (740). According to one embodiment, the electronic device (101) may arrange affordances (e.g., the fifth affordance (1955), the sixth affordance (1965), the seventh affordance (1975), and the eighth affordance (1985)) based on the virtual space (740), and when the interval (L) between each of the affordances (1955, 1965, 1975, 1985) arranged in the virtual space (740) is smaller than the radius of the virtual space (740), the affordance types may be determined in a list arrangement manner (or list type) that arranges them in a list form on the periphery of the virtual space (740) within the virtual environment.

일 실시예에 따르면, 전자 장치(101)는 가상 환경 내에서 가상 공간(740)을 벗어나는 영역에 어포던스(1990)(예: 목록 기반 어포던스)를 배치하여 제공할 수 있다. 예를 들어, 전자 장치(101)는 가상 공간(740)에 기반하여 배치된 어포던스(예: 제5 어포던스(1955), 제6 어포던스(1965), 제7 어포던스(1975), 및 제8 어포던스(1985)) 중 적어도 2개의 어포던스(예: 제5 어포던스(1955) 및 제6 어포던스(1965)) 간의 간격(L)이 가상 공간(740)의 반지름(예: 분해능 값의 절반)보다 작을 경우, 목록 형태의 어포던스(1990)를 생성하여, 가상 환경 내의 일 영역에 배치할 수 있다. According to one embodiment, the electronic device (101) may provide an affordance (1990) (e.g., a list-based affordance) by placing it in an area outside the virtual space (740) within the virtual environment. For example, the electronic device (101) may generate an affordance (1990) in a list form and place it in an area within the virtual environment if a gap (L) between at least two of the affordances (e.g., the fifth affordance (1955) and the sixth affordance (1965)) among the affordances (e.g., the fifth affordance (1955), the sixth affordance (1965), the seventh affordance (1975), and the eighth affordance (1985)) placed based on the virtual space (740) is smaller than a radius of the virtual space (740) (e.g., half of the resolution value).

일 실시예에 따르면, 목록 기반 어포던스(1990)는 대상 가상 객체(예: 제5 가상 객체(1950), 제6 가상 객체(1960), 제7 가상 객체(1970), 및 제8 가상 객체(1980))에 각각 대응하는 아이템(예: 제5 아이템, 제6 아이템, 제7 아이템, 및 제8 아이템)을 포함하는 목록 형태로 제공될 수 있다.According to one embodiment, the list-based affordance (1990) may be provided in the form of a list including items (e.g., a fifth item, a sixth item, a seventh item, and an eighth item) each corresponding to a target virtual object (e.g., a fifth virtual object (1950), a sixth virtual object (1960), a seventh virtual object (1970), and an eighth virtual object (1980)).

도 20은 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.FIG. 20 is a flowchart illustrating a method of operating an electronic device according to one embodiment of the present disclosure.

일 실시예에 따라, 도 20은 일 실시예에 따른 전자 장치(101)에서 어포던스를 제공하는 동작의 예를 나타낼 수 있다. According to one embodiment, FIG. 20 may illustrate an example of an operation of providing affordance in an electronic device (101) according to one embodiment.

본 개시의 일 실시예에 따른 전자 장치(101)에서 지원하는 동작 방법은, 예를 들어, 도 20에 도시된 흐름도에 따라 수행될 수 있다. 도 20에 도시된 흐름도는 전자 장치(101)의 동작의 일 실시예에 따른 흐름도에 불과하며, 적어도 일부 동작의 순서는 변경되거나 병렬적으로 수행되거나, 독립적인 동작으로 수행되거나, 또는 적어도 일부 다른 동작이 적어도 일부 동작에 보완적으로 수행될 수 있다. 본 개시의 일 실시예에 따르면, 동작 2001 내지 동작 2015는 전자 장치(101)의 적어도 하나의 프로세서(120)(예: 도 1 또는 도 5의 프로세서(120))에서 수행될 수 있다.An operation method supported by an electronic device (101) according to one embodiment of the present disclosure may be performed, for example, according to a flowchart illustrated in FIG. 20. The flowchart illustrated in FIG. 20 is merely a flowchart according to one embodiment of an operation of the electronic device (101), and the order of at least some operations may be changed, performed in parallel, performed as independent operations, or at least some other operations may be performed complementarily to at least some operations. According to one embodiment of the present disclosure, operations 2001 to 2015 may be performed by at least one processor (120) of the electronic device (101) (e.g., the processor (120) of FIG. 1 or 5 ).

일 실시예에 따르면, 도 20에서 설명되는 동작은, 예를 들어, 도 6 내지 도 19c에서 설명된 동작들에 결합하여 휴리스틱하게 수행되거나, 설명된 동작의 적어도 일부 동작을 대체하고 적어도 일부 다른 동작에 결합하여 휴리스틱하게 수행되거나, 설명된 동작들의 적어 일부 동작의 상세 동작으로 휴리스틱하게 수행될 수 있다.According to one embodiment, the operations described in FIG. 20 may be performed heuristically, for example, in combination with the operations described in FIGS. 6 to 19c, or heuristically performed as a replacement for at least some of the operations described and combined with at least some other operations, or heuristically performed as a detailed operation of at least some of the operations described.

도 20에 도시한 바와 같이, 일 실시예에 따른 전자 장치(101)가 수행하는 동작 방법은, 대상 가상 개체와 가상 공간 간의 상태를 식별하는 동작(2001), 대상 가상 객체가 가상 공간에 걸쳐 있는 상태인지 판단하는 동작(2003), 대상 가상 객체가 가상 공간에 걸쳐 있는 상태인 경우 대상 가상 객체가 가상 공간의 표면과 접촉하는 공간에 기반하여 어포던스를 제공하는 동작(2005), 대상 가상 객체가 가상 공간 내부에 포함된 상태인지 판단하는 동작(2007), 대상 가상 객체가 가상 공간 내부에 포함된 상태인 경우 대상 가상 객체로부터 가상 공간의 표면으로의 연장선상의 공간에 기반하여 어포던스를 제공하는 동작(2009), 대상 가상 객체 사이의 간격이 가상 공간의 반지름보다 작은 상태인지 판단하는 동작(2011), 대상 가상 객체 사이의 간격이 가상 공간의 반지름보다 작은 상태인 경우 가상 공간의 지정된 공간에 기반하여 목록 기반 어포던스를 제공하는 동작(2013), 및 대상 가상 개체와 가상 공간 간의 상태가 상기의 상태(예: 동작 2003, 동작 2007, 및 동작 2011의 상태)에 포함되지 않는 경우 접촉 공간 및/또는 연장선상의 공간에 기반하여 어포던스를 제공하는 동작(2015)을 포함할 수 있다.As illustrated in FIG. 20, the operation method performed by the electronic device (101) according to one embodiment includes an operation of identifying a state between a target virtual object and a virtual space (2001), an operation of determining whether the target virtual object is in a state spanning the virtual space (2003), an operation of providing an affordance based on a space where the target virtual object contacts a surface of the virtual space if the target virtual object is in a state spanning the virtual space (2005), an operation of determining whether the target virtual object is in a state included in the virtual space (2007), an operation of providing an affordance based on a space in an extension line from the target virtual object to the surface of the virtual space if the target virtual object is in a state included in the virtual space (2009), an operation of determining whether a gap between the target virtual objects is smaller than a radius of the virtual space (2011), an operation of providing a list-based affordance based on a specified space of the virtual space if the gap between the target virtual objects is smaller than a radius of the virtual space (2013), and an operation of determining whether a state between the target virtual object and the virtual space is the above state (e.g., operation 2003, operation If not included in the state of 2007 and operation 2011, it may include an operation (2015) that provides an affordance based on the contact space and/or the space along the extension.

도 20을 참조하면, 동작 2001에서, 전자 장치(101)의 프로세서(120)는 대상 가상 개체와 가상 공간 간의 상태를 식별하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 대상 가상 객체와 가상 공간 간의 상태가 제1 상태, 제2 상태 또는 제3 상태에 대응하는지 판단할 수 있다. 일 실시예에서, 제1 상태는 대상 가상 객체가 가상 공간에 걸쳐 있는 상태를 포함할 수 있다. 일 실시예에서, 제2 상태는 대상 가상 객체가 가상 공간 내부에 포함된 상태를 포함할 수 있다. 일 실시예에서, 제3 상태는 어포던스들 사이의 간격이 가상 공간의 반지름보다 작은 상태를 포함할 수 있다.Referring to FIG. 20, in operation 2001, the processor (120) of the electronic device (101) may perform an operation of identifying a state between a target virtual object and a virtual space. According to one embodiment, the processor (120) may determine whether the state between the target virtual object and the virtual space corresponds to a first state, a second state, or a third state. In one embodiment, the first state may include a state in which the target virtual object spans the virtual space. In one embodiment, the second state may include a state in which the target virtual object is included within the virtual space. In one embodiment, the third state may include a state in which a gap between affordances is smaller than a radius of the virtual space.

동작 2003에서, 프로세서(120)는 대상 가상 객체가 가상 공간에 걸쳐 있는 상태(예: 제1 상태)인지 판단하는 동작을 수행할 수 있다. 제1 상태에 대한 예가 도 19a에 도시된다.In operation 2003, the processor (120) may perform an operation to determine whether a target virtual object is in a state (e.g., a first state) spanning the virtual space. An example of the first state is illustrated in FIG. 19a.

동작 2003에서, 프로세서(120)는 대상 가상 객체가 가상 공간에 걸쳐 있는 상태(예: 제1 상태)인 경우(예: 동작 2003의 ‘예’), 동작 2005에서, 대상 가상 객체가 가상 공간의 표면과 접촉하는 공간에 기반하여 어포던스를 제공하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 대상 가상 객체가 가상 공간에 걸쳐있는 경우, 어포던스 유형을 대상 가상 객체의 내부에 배치하는 내부 배치 방식(또는 내부 유형)으로 결정할 수 있다. 일 실시예에 따르면, 프로세서(120)는 대상 가상 객체가 가상 공간의 표면과 접촉하는 공간(또는 면)에 어포던스를 배치하여 제공할 수 있다.In operation 2003, if the target virtual object is in a state (e.g., a first state) extending over the virtual space (e.g., ‘yes’ in operation 2003), in operation 2005, the processor (120) may perform an operation of providing an affordance based on a space where the target virtual object contacts a surface of the virtual space. According to one embodiment, if the target virtual object extends over the virtual space, the processor (120) may determine an affordance type as an internal placement method (or internal type) that places the affordance inside the target virtual object. According to one embodiment, the processor (120) may place and provide an affordance in a space (or surface) where the target virtual object contacts a surface of the virtual space.

동작 2007에서, 프로세서(120)는 대상 가상 객체가 가상 공간 내부에 포함된 상태(예: 제2 상태)인지 판단하는 동작을 수행할 수 있다. 제2 상태에 대한 예가 도 19b에 도시된다.In operation 2007, the processor (120) may perform an operation of determining whether the target virtual object is in a state (e.g., a second state) included within the virtual space. An example of the second state is illustrated in FIG. 19b.

동작 2007에서, 프로세서(120)는 대상 가상 객체가 가상 공간 내부에 포함된 상태(예: 제2 상태)인 경우(예: 동작 2007의 ‘예’), 동작 2009에서, 대상 가상 객체로부터 가상 공간의 표면으로의 연장선상의 공간에 기반하여 어포던스를 제공하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 대상 가상 객체가 가상 공간 내부에 존재하는 경우, 어포던스 유형을 가상 공간의 표면으로의 연장선상의 공간(또는 면)에 배치하는 외부 배치 방식(또는 외부 유형)으로 결정할 수 있다. 일 실시예에 따르면, 프로세서(120)는 가상 공간의 표면으로의 연장선상의 공간에 어포던스를 배치하여 제공할 수 있다. In operation 2007, if the target virtual object is in a state (e.g., a second state) included in the virtual space (e.g., ‘yes’ in operation 2007), in operation 2009, the processor (120) may perform an operation of providing an affordance based on a space on an extension line from the target virtual object to a surface of the virtual space. According to one embodiment, if the target virtual object exists in the virtual space, the processor (120) may determine an affordance type as an external placement method (or external type) that places the affordance in a space (or plane) on an extension line to the surface of the virtual space. According to one embodiment, the processor (120) may place and provide the affordance in a space on an extension line to the surface of the virtual space.

동작 2011에서, 프로세서(120)는 대상 가상 객체 사이의 간격이 가상 공간의 반지름보다 작은 상태(예: 제3 상태)인지 판단하는 동작을 수행할 수 있다. 제3 상태에 대한 예가 도 19c에 도시된다.In operation 2011, the processor (120) may perform an operation of determining whether a state (e.g., a third state) is such that the gap between target virtual objects is smaller than a radius of the virtual space. An example of the third state is illustrated in FIG. 19c.

동작 2011에서, 프로세서(120)는 대상 가상 객체 사이의 간격이 가상 공간의 반지름보다 작은 상태(예: 제3 상태)인 경우(예: 동작 2011의 ‘예’), 동작 2013에서, 가상 공간의 지정된 공간에 기반하여 목록 기반 어포던스를 제공하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 어포던스를 가상 공간에 기반하여 배치하고, 가상 공간에 배치된 어포던스 각각의 사이의 간격(L)이 가상 공간의 반지름보다 작은 경우, 어포던스 유형을 가상 환경 내에서 가상 공간의 외곽에 목록 형태로 배치하는 목록 배치 방식(또는 목록 유형)으로 결정할 수 있다. 일 실시예에 따르면, 프로세서(120)는 가상 환경 내에서 가상 공간을 벗어나는 영역에 어포던스(예: 목록 기반 어포던스)를 배치하여 제공할 수 있다. 예를 들어, 프로세서(120)는 가상 공간에 기반하여 배치된 어포던스 중 적어도 2개의 어포던스 간의 간격(L)이 가상 공간의 반지름(예: 분해능 값의 절반)보다 작을 경우, 목록 형태의 어포던스를 생성하여, 가상 환경 내의 일 영역에 배치할 수 있다.In operation 2011, if the gap between target virtual objects is smaller than the radius of the virtual space (e.g., the third state), then in operation 2013, the processor (120) may perform an operation of providing a list-based affordance based on a specified space in the virtual space. According to one embodiment, the processor (120) may arrange the affordances based on the virtual space, and if the gap (L) between each of the affordances arranged in the virtual space is smaller than the radius of the virtual space, the affordance type may be determined as a list arrangement method (or list type) that arranges the affordance type in a list form on the outskirts of the virtual space within the virtual environment. According to one embodiment, the processor (120) may arrange and provide an affordance (e.g., a list-based affordance) in an area outside the virtual space within the virtual environment. For example, the processor (120) may generate a list of affordances and place them in an area within the virtual environment if the distance (L) between at least two affordances arranged based on the virtual space is smaller than the radius of the virtual space (e.g., half of the resolution value).

동작 2003, 동작 2005, 및 동작 2011에서, 프로세서(120)는 대상 가상 개체와 가상 공간 간의 상태가 제1 상태, 제2 상태 및 제3 상태에 포함되지 않는 경우, 동작 2015에서, 접촉 공간 및/또는 연장선상의 공간에 기반하여 어포던스를 제공하는 동작을 수행할 수 있다. 일 실시예에 따르면, 프로세서(120)는 대상 가상 객체에 각각 대응하는 어포던스의 일부 또는 전체를, 도 19a의 예시와 같이 가상 공간 내의 해당 객체 내에 배치하여 제공할 수 있다. 일 실시예에 따르면, 프로세서(120)는 대상 가상 객체에 각각 대응하는 어포던스의 일부 또는 전체를, 도 19b의 예시와 같이 가상 공간에 접촉되는 연장선상의 면에 배치하여 제공할 수 있다. 일 실시예에 따르면, 프로세서(120)는 대상 가상 객체에 각각 대응하는 어포던스의 일부는 가상 공간 내의 해당 객체 내에 배치하여 제공하고, 어포던스의 다른 일부는 가상 공간에 접촉되는 연장선상의 면에 배치하여 제공할 수 있다. In operation 2003, operation 2005, and operation 2011, if the state between the target virtual object and the virtual space is not included in the first state, the second state, and the third state, in operation 2015, the processor (120) may perform an operation of providing an affordance based on the contact space and/or the space on the extension line. According to one embodiment, the processor (120) may provide a part or all of the affordance corresponding to each target virtual object by arranging it within the corresponding object in the virtual space, as in the example of FIG. 19a. According to one embodiment, the processor (120) may provide a part or all of the affordance corresponding to each target virtual object by arranging it on a plane on the extension line that contacts the virtual space, as in the example of FIG. 19b. According to one embodiment, the processor (120) may provide a part of the affordance corresponding to each target virtual object by arranging it within the corresponding object in the virtual space, and provide another part of the affordance by arranging it on a plane on the extension line that contacts the virtual space.

도 21a, 도 21b 및 도 21c는 본 개시의 일 실시예에 따른 전자 장치에서 어포던스의 크기를 결정하는 예를 도시하는 도면들이다.FIGS. 21A, 21B, and 21C are diagrams illustrating examples of determining the size of an affordance in an electronic device according to one embodiment of the present disclosure.

일 실시예에 다르면, 전자 장치(101)는 가상 공간을 위한 분해능 값(예: 가상 공간의 지름)에 기반하여 어포던스의 크기 및/또는 간격을 결정할 수 있다.In one embodiment, the electronic device (101) may determine the size and/or spacing of the affordance based on a resolution value for the virtual space (e.g., a diameter of the virtual space).

도 21a를 참조하면, 전자 장치(101)는 입력 장치(720)(예: 사용자 손)에 따른 인디케이터(900)를 기준으로 입력 장치(720)의 분해능 값을 지름(D)으로 갖는 가상 공간(740)을 형성할 수 있다. 일 실시예에 따르면, 도 21a는 입력 장치(720)가 사용자 손인 경우의 예를 나타낼 수 있다. 일 실시예에 따르면, 전자 장치(101)는 입력 장치(720)의 분해능 값(예: 사용자 손에 대해 설정된 제1 분해능 값)(예: 약 40mm)을 획득할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 입력 장치(720)의 제1 분해능 값(예: 약 40mm)을 지름(예: D = 약 40mm)으로 갖는 가상 공간(740)을 형성할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 제1 분해능 값(또는 가상 공간(740)의 지름(D))(예: 약 40mm)의 절반(예: 반지름(r), r = D/2)에 기반하여 어포던스(2110)의 크기(예: 폭)를 결정할 수 있다. 예를 들어, 어포던스(2110)는 제1 분해능 값(또는 가상 공간(740)의 지름(D))(예: 약 40mm)의 절반(예: 약 20mm)의 폭을 갖는 지정된 형상(예: 큐브형, 원형, 타원형, 세모형, 마름모형)으로 제공될 수 있다.Referring to FIG. 21A, the electronic device (101) may form a virtual space (740) having a resolution value of the input device (720) as a diameter (D) based on an indicator (900) according to the input device (720) (e.g., a user's hand). According to one embodiment, FIG. 21A may show an example in which the input device (720) is a user's hand. According to one embodiment, the electronic device (101) may obtain a resolution value (e.g., a first resolution value set for the user's hand) (e.g., about 40 mm) of the input device (720). According to one embodiment, the electronic device (101) may form a virtual space (740) having a diameter (e.g., D = about 40 mm) equal to the first resolution value (e.g., about 40 mm) of the input device (720). According to one embodiment, the electronic device (101) can determine a size (e.g., width) of the affordance (2110) based on a half (e.g., radius (r), where r = D/2) of the first resolution value (or diameter (D) of the virtual space (740)) (e.g., about 40 mm). For example, the affordance (2110) can be provided in a designated shape (e.g., cube, circle, oval, triangle, diamond) having a width of half (e.g., about 20 mm) of the first resolution value (or diameter (D) of the virtual space (740)) (e.g., about 40 mm).

도 21b를 참조하면, 전자 장치(101)는 입력 장치(720)(예: 컨트롤러)에 따른 인디케이터(900)를 기준으로 입력 장치(720)의 분해능 값을 지름(D)으로 갖는 가상 공간(740)을 형성할 수 있다. 일 실시예에 따르면, 도 21b는 입력 장치(720)가 컨트롤러인 경우의 예를 나타낼 수 있다. 일 실시예에 따르면, 전자 장치(101)는 입력 장치(720)의 분해능 값(예: 컨트롤러에 대해 설정된 제2 분해능 값)(예: 약 25mm)을 획득할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 입력 장치(720)의 제2 분해능 값(예: 약 25mm)을 지름(예: D = 약 25mm)으로 갖는 가상 공간(740)을 형성할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 제2 분해능 값(또는 가상 공간(740)의 지름(D))(예: 약 25mm)의 절반(예: 반지름(r), r = D/2)에 기반하여 어포던스(2120)의 크기(예: 폭)를 결정할 수 있다. 예를 들어, 어포던스(2120)는 제2 분해능 값(또는 가상 공간(740)의 지름(D))(예: 약 25mm)의 절반(예: 약 12.5mm)의 폭을 갖는 지정된 형상(예: 큐브형, 원형, 타원형, 세모형, 마름모형)으로 제공될 수 있다.Referring to FIG. 21b, the electronic device (101) may form a virtual space (740) having a resolution value of the input device (720) as a diameter (D) based on an indicator (900) according to the input device (720) (e.g., a controller). According to one embodiment, FIG. 21b may show an example in which the input device (720) is a controller. According to one embodiment, the electronic device (101) may obtain a resolution value (e.g., a second resolution value set for the controller) (e.g., about 25 mm) of the input device (720). According to one embodiment, the electronic device (101) may form a virtual space (740) having a diameter (e.g., D = about 25 mm) equal to the second resolution value (e.g., about 25 mm) of the input device (720). In one embodiment, the electronic device (101) can determine a size (e.g., width) of the affordance (2120) based on a half (e.g., radius (r), where r = D/2) of the second resolution value (or diameter (D) of the virtual space (740)) (e.g., about 25 mm). For example, the affordance (2120) can be provided in a designated shape (e.g., cube, circle, oval, triangle, diamond) having a width of half (e.g., about 12.5 mm) of the second resolution value (or diameter (D) of the virtual space (740)) (e.g., about 25 mm).

도 21c를 참조하면, 전자 장치(101)는 입력 장치(720)(예: 컨트롤러)에 따른 인디케이터(900)를 기준으로 입력 장치(720)의 분해능 값을 지름(D)으로 갖는 가상 공간(740)을 형성할 수 있다. 일 실시예에 따르면, 도 21c는 입력 장치(720)가 컨트롤러이고, 목록 형태의 어포던스(2130)를 제공하는 경우의 예를 나타낼 수 있다. 일 실시예에 따르면, 전자 장치(101)는 입력 장치(720)의 분해능 값(예: 컨트롤러에 대해 설정된 제2 분해능 값)(예: 약 25mm)을 획득할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 입력 장치(720)의 제2 분해능 값(예: 약 25mm)을 지름(예: D = 약 25mm)으로 갖는 가상 공간(740)을 형성할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 제2 분해능 값(또는 가상 공간(740)의 지름(D))(예: 약 25mm)의 절반(예: 반지름(r), r = D/2)에 기반하여 어포던스(2130)의 크기(예: 아이템들 간 간격)를 결정할 수 있다. 예를 들어, 어포던스(2130)는 제2 분해능 값(또는 가상 공간(740)의 지름(D))(예: 약 25mm)의 절반(예: 약 12.5mm)의 간격을 갖는 목록 형태로 제공될 수 있다Referring to FIG. 21c, the electronic device (101) may form a virtual space (740) having a resolution value of the input device (720) as a diameter (D) based on an indicator (900) according to the input device (720) (e.g., a controller). According to one embodiment, FIG. 21c may show an example in which the input device (720) is a controller and provides an affordance (2130) in the form of a list. According to one embodiment, the electronic device (101) may obtain a resolution value (e.g., a second resolution value set for the controller) (e.g., about 25 mm) of the input device (720). According to one embodiment, the electronic device (101) may form a virtual space (740) having a diameter (e.g., D = about 25 mm) of the second resolution value (e.g., about 25 mm) of the input device (720). In one embodiment, the electronic device (101) can determine the size of the affordance (2130) (e.g., spacing between items) based on half (e.g., radius (r), where r = D/2) of the second resolution value (or diameter (D) of the virtual space (740)) (e.g., about 25 mm). For example, the affordance (2130) can be provided in the form of a list having a spacing of half (e.g., about 12.5 mm) of the second resolution value (or diameter (D) of the virtual space (740)) (e.g., about 25 mm).

도 22a 및 도 22b는 본 개시의 일 실시예에 따른 전자 장치에서 가상 객체와 연관지어 어포던스를 제공하는 동작 예를 도시하는 도면들이다.FIGS. 22A and 22B are diagrams illustrating examples of operations for providing affordance in association with a virtual object in an electronic device according to one embodiment of the present disclosure.

일 실시예에 따라, 도 22a 및 도 22b는 일 실시예에 따른 전자 장치(101)에서 가상 환경(2200)의 대상 가상 객체와 연관지어 대상 가상 객체 중 적어도 하나의 선택을 지원할 수 있는 어포던스(2250)를 제공하는 동작의 예를 나타낼 수 있다. According to one embodiment, FIGS. 22A and 22B may illustrate an example of an operation of providing an affordance (2250) that can support selection of at least one of a target virtual object in a virtual environment (2200) in association with a target virtual object in an electronic device (101) according to one embodiment.

도 22a 내지 도 22b를 참조하면, 전자 장치(101)는 디스플레이(예: 도 1 또는 도 5의 디스플레이 모듈(160))을 통해 가상 환경(2200)(또는 가상 환경의 실행 화면(2200))을 표시하는 동안 입력 장치(720)를 인식할 수 있다. 일 실시예에 따라, 도 22a 내지 도 22b에서 입력 장치(720)가 사용자 손(예: 손가락)인 것을 예로 하며, 전자 장치(101)는 가상 환경(2200)에 진입되는 사용자 손(720)을 인식할 수 있다.Referring to FIGS. 22A and 22B , the electronic device (101) can recognize an input device (720) while displaying a virtual environment (2200) (or an execution screen (2200) of the virtual environment) through a display (e.g., a display module (160) of FIG. 1 or 5 ). According to one embodiment, assuming that the input device (720) is a user's hand (e.g., a finger) in FIGS. 22A and 22B , the electronic device (101) can recognize the user's hand (720) entering the virtual environment (2200).

일 실시예에 따르면, 전자 장치(101)는 입력 장치(720)(예: 입력 장치(720)의 인디케이터(900))를 기준으로 형성된 가상 공간에 기반하여 사용자 선택의 대상이 되는 대상 가상 객체에 각각 대응하는 어포던스(2250)를 생성하여 표시할 수 있다. According to one embodiment, the electronic device (101) may generate and display affordances (2250) corresponding to target virtual objects that are targets of user selection based on a virtual space formed based on an input device (720) (e.g., an indicator (900) of the input device (720).

일 실시예에 따르면, 전자 장치(101)는 입력 장치(720)가 가상 환경(2200) 내의 복수의 가상 객체들 중 적어도 하나의 가상 객체에 기반하여 지정된 일정 시간 동안 정지하는 경우, 입력 장치(720)(예: 입력 장치(720)의 인디케이터(900))를 중심으로 형성된 가상 공간 내의 대상 가상 객체(예: 체스 말)에 관련된 어포던스(2250)(예: 가이드 핸들)를 표시할 수 있다. 일 실시예에 따르면, 사용자는 어포던스(2250)에 기반하여 적어도 하나의 대상 가상 객체(예: 체스 말)를 선택하여 조작(예: 이동, 삭제, 복사, 및/또는 편집)할 수 있다.According to one embodiment, the electronic device (101) may display an affordance (2250) (e.g., a guide handle) related to a target virtual object (e.g., a chess piece) in a virtual space formed around the input device (720) (e.g., an indicator (900) of the input device (720)) when the input device (720) is stationary for a predetermined period of time based on at least one virtual object among a plurality of virtual objects in the virtual environment (2200). According to one embodiment, the user may select and manipulate (e.g., move, delete, copy, and/or edit) at least one target virtual object (e.g., a chess piece) based on the affordance (2250).

도 23a, 도 23b 및 도 23c는 본 개시의 일 실시예에 따른 전자 장치에서 가상 객체와 연관지어 어포던스를 제공하는 동작 예를 도시하는 도면들이다.FIGS. 23A, 23B, and 23C are diagrams illustrating examples of operations for providing affordance in association with a virtual object in an electronic device according to one embodiment of the present disclosure.

일 실시예에 따라, 도 23a 내지 도 23c는 일 실시예에 따른 전자 장치(101)에서 가상 환경(2300)의 대상 가상 객체와 연관지어 대상 가상 객체 중 적어도 하나의 선택을 지원할 수 있는 어포던스(2350)를 제공하는 동작의 예를 나타낼 수 있다. According to one embodiment, FIGS. 23A through 23C may illustrate examples of an operation of providing an affordance (2350) that can support selection of at least one of a target virtual object in a virtual environment (2300) in association with a target virtual object in an electronic device (101) according to one embodiment.

도 23a 내지 도 23b를 참조하면, 전자 장치(101)는 디스플레이(예: 도 1 또는 도 5의 디스플레이 모듈(160))을 통해 가상 환경(2300)(또는 가상 환경의 실행 화면(2300))을 표시하는 동안 입력 장치(720)를 인식할 수 있다. 일 실시예에 따라, 도 23a 내지 도 23c에서 입력 장치(720)가 컨트롤러인 것을 예로 하며, 전자 장치(101)는 전자 장치(101)와 연결되는 입력 장치(720)의 인디케이터(900)를 인식할 수 있다.Referring to FIGS. 23A to 23B , the electronic device (101) may recognize the input device (720) while displaying the virtual environment (2300) (or the execution screen (2300) of the virtual environment) through a display (e.g., the display module (160) of FIG. 1 or 5 ). According to one embodiment, assuming that the input device (720) is a controller in FIGS. 23A to 23C , the electronic device (101) may recognize the indicator (900) of the input device (720) connected to the electronic device (101).

일 실시예에 따르면, 전자 장치(101)는 입력 장치(720)(예: 입력 장치(720)의 인디케이터(900))를 기준으로 형성된 가상 공간에 기반하여 사용자 선택의 대상이 되는 대상 가상 객체에 각각 대응하는 어포던스(2350)를 생성하여 표시할 수 있다. According to one embodiment, the electronic device (101) may generate and display affordances (2350) corresponding to target virtual objects that are targets of user selection based on a virtual space formed based on an input device (720) (e.g., an indicator (900) of the input device (720).

일 실시예에 따르면, 전자 장치(101)는 입력 장치(720)(또는 입력 장치(720)의 인디케이터(900))가 가상 환경(2300) 내의 복수의 가상 객체들 중 적어도 하나의 가상 객체에 기반하여 지정된 일정 시간 동안 정지하는 경우, 입력 장치(720)(예: 입력 장치(720)의 인디케이터(900))를 중심으로 형성된 가상 공간 내의 대상 가상 객체(예: 도형)에 관련된 어포던스(2350)(예: 가이드 핸들)를 표시할 수 있다. 일 실시예에 따르면, 사용자는 어포던스(2350)에 기반하여 적어도 하나의 대상 가상 객체(예: 도형)를 선택하여 조작(예: 이동, 삭제, 복사, 및/또는 편집)할 수 있다.According to one embodiment, the electronic device (101) may display an affordance (2350) (e.g., a guide handle) related to a target virtual object (e.g., a shape) in a virtual space formed around the input device (720) (e.g., the indicator (900) of the input device (720)) when the input device (720) (or the indicator (900) of the input device (720)) stops for a predetermined period of time based on at least one virtual object among a plurality of virtual objects in the virtual environment (2300). According to one embodiment, the user may select and manipulate (e.g., move, delete, copy, and/or edit) at least one target virtual object (e.g., a shape) based on the affordance (2350).

도 23c를 참조하면, 사용자는 입력 장치(720)를 이용하여 대상 가상 객체에 각각 대응하는 어포던스(2350) 중 어느 하나의 어포던스(2360)를 선택할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 어느 하나의 어포던스(2360)에 입력 장치(720)(예: 입력 장치(720)의 인디케이터(900))가 지정된 일정 시간 동안 정지(예: 홀딩)하는 경우, 어포던스(2360)의 뎁스(depth)(예: 뎁스 메뉴(depth menu))를 판단할 수 있다. 예를 들어, 전자 장치(101)는 어포던스(2360)의 메뉴 확장이 가능한지 판단할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 입력 장치(720)에 의해 선택된 어포던스(2360)에 관련된 뎁스 메뉴가 있는 경우, 선택된 어포던스(2360)와 연관지어(또는 인접하여 또는 주변에) 뎁스 메뉴(2370)를 제공할 수 있다. 일 실시예에 따르면, 뎁스 메뉴(2370)는 n차 뎁스(n-depth)와 같이 복수의 하위 뎁스를 포함할 수 있으며, 전자 장치(101)는 n차 뎁스까지 제공할 수 있다.Referring to FIG. 23c, a user may select one of the affordances (2360) among the affordances (2350) corresponding to each target virtual object by using the input device (720). According to one embodiment, when the input device (720) (e.g., the indicator (900) of the input device (720)) stops (e.g., holds) for a predetermined period of time specified for one of the affordances (2360), the electronic device (101) may determine the depth (e.g., depth menu) of the affordance (2360). For example, the electronic device (101) may determine whether menu expansion of the affordance (2360) is possible. In one embodiment, the electronic device (101) may provide a depth menu (2370) associated with (or adjacent to or around) the selected affordance (2360) when there is a depth menu related to the affordance (2360) selected by the input device (720). In one embodiment, the depth menu (2370) may include multiple sub-depths, such as n-depth, and the electronic device (101) may provide up to n-depth.

도 24a, 도 24b 및 도 24c는 본 개시의 일 실시예에 따른 전자 장치에서 가상 객체와 연관지어 어포던스를 제공하는 동작 예를 도시하는 도면들이다.FIGS. 24A, 24B, and 24C are diagrams illustrating examples of operations for providing affordance in association with a virtual object in an electronic device according to one embodiment of the present disclosure.

일 실시예에 따라, 도 24a 내지 도 24c는 일 실시예에 따른 전자 장치(101)에서 가상 환경(2400)의 대상 가상 객체와 연관지어 대상 가상 객체 중 적어도 하나의 선택을 지원할 수 있는 어포던스(2450)를 제공하는 동작의 예를 나타낼 수 있다. 일 실시예에 따르면, 도 24a 내지 도 24c는 입력 장치(720)가 사용자 손이고, 목록 형태의 어포던스(2450)를 제공하는 경우의 예를 나타낼 수 있다.According to one embodiment, FIGS. 24A to 24C may illustrate examples of an operation of providing an affordance (2450) that can support selection of at least one of target virtual objects in a virtual environment (2400) by associating the target virtual object with the target virtual object in an electronic device (101) according to one embodiment. According to one embodiment, FIGS. 24A to 24C may illustrate examples of a case where an input device (720) is a user's hand and provides an affordance (2450) in the form of a list.

도 24a 내지 도 24b를 참조하면, 전자 장치(101)는 디스플레이(예: 도 1 또는 도 5의 디스플레이 모듈(160))을 통해 가상 환경(2400)(또는 가상 환경의 실행 화면(2400))을 표시하는 동안 입력 장치(720)를 인식할 수 있다. 일 실시예에 따라, 도 24a 내지 도 24c에서 입력 장치(720)가 사용자 손인 것을 예로 하며, 전자 장치(101)는 가상 환경(2400)에 진입되는 사용자 손(720)을 인식할 수 있다.Referring to FIGS. 24A to 24B , the electronic device (101) may recognize an input device (720) while displaying a virtual environment (2400) (or an execution screen (2400) of the virtual environment) through a display (e.g., a display module (160) of FIG. 1 or 5 ). According to one embodiment, assuming that the input device (720) is a user's hand as an example in FIGS. 24A to 24C , the electronic device (101) may recognize the user's hand (720) entering the virtual environment (2400).

일 실시예에 따르면, 전자 장치(101)는 입력 장치(720)(예: 입력 장치(720)의 인디케이터(900))를 기준으로 형성된 가상 공간에 기반하여 사용자 선택의 대상이 되는 대상 가상 객체에 각각 대응하는 어포던스(2450)를 생성하여 표시할 수 있다. According to one embodiment, the electronic device (101) may generate and display affordances (2450) corresponding to target virtual objects that are targets of user selection based on a virtual space formed based on an input device (720) (e.g., an indicator (900) of the input device (720).

일 실시예에 따르면, 전자 장치(101)는 대상 가상 객체에 각각 대응하는 어포던스를 가상 공간에 기반하여 배치하고, 가상 공간에 배치된 어포던스 각각의 사이의 간격(L)이 가상 공간의 반지름보다 작은 경우, 가상 환경(2400) 내에서 가상 공간의 외곽에 목록 형태로 배치하는 목록 배치 방식(또는 목록 유형)을 결정할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 가상 환경(2400) 내에서 가상 공간을 벗어나는 영역에 어포던스(2450)(예: 목록 기반 어포던스)를 배치하여 제공할 수 있다. 예를 들어, 전자 장치(101)는 가상 공간에 기반하여 배치된 어포던스 중 적어도 2개의 어포던스 간의 간격(L)이 가상 공간의 반지름(예: 분해능 값의 절반)보다 작을 경우, 목록 형태의 어포던스(2450)를 생성하여, 가상 환경(2400) 내의 일 영역에 배치할 수 있다.According to one embodiment, the electronic device (101) may determine a list arrangement method (or list type) for arranging affordances corresponding to each target virtual object based on the virtual space, and arranging them in a list form on the outskirts of the virtual space within the virtual environment (2400) when the interval (L) between each of the affordances arranged in the virtual space is smaller than the radius of the virtual space. According to one embodiment, the electronic device (101) may provide an affordance (2450) (e.g., a list-based affordance) by arranging it in an area outside the virtual space within the virtual environment (2400). For example, when the interval (L) between at least two of the affordances arranged based on the virtual space is smaller than the radius of the virtual space (e.g., half of the resolution value), the electronic device (101) may generate an affordance (2450) in a list form and place it in an area within the virtual environment (2400).

일 실시예에 따르면, 전자 장치(101)는 입력 장치(720)(또는 입력 장치(720)의 인디케이터(900))가 가상 환경(2400) 내의 복수의 가상 객체들 중 적어도 하나의 가상 객체에 기반하여 지정된 일정 시간 동안 정지하는 경우, 입력 장치(720)(예: 입력 장치(720)의 인디케이터(900))를 중심으로 형성된 가상 공간 내의 대상 가상 객체(예: 책)에 관련된 어포던스(2450)(예: 가이드 핸들)를 목록 형태로 표시할 수 있다. 일 실시예에 따르면, 사용자는 어포던스(2450)에 기반하여 적어도 하나의 대상 가상 객체(예: 책)를 선택하여 조작(예: 이동, 삭제, 복사, 및/또는 편집)할 수 있다.According to one embodiment, the electronic device (101) may display, in a list format, an affordance (2450) (e.g., a guide handle) related to a target virtual object (e.g., a book) in a virtual space formed around the input device (720) (e.g., the indicator (900) of the input device (720)), when the input device (720) (or the indicator (900) of the input device (720)) stops for a predetermined period of time based on at least one virtual object among a plurality of virtual objects in the virtual environment (2400). According to one embodiment, the user may select and manipulate (e.g., move, delete, copy, and/or edit) at least one target virtual object (e.g., a book) based on the affordance (2450).

도 24c를 참조하면, 사용자는 입력 장치(720)를 이용하여 대상 가상 객체 각각에 대응하는 어포던스(2450) 중 어느 하나의 어포던스(2460)를 선택할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 어느 하나의 어포던스(2460)에 입력 장치(720)(예: 입력 장치(720)의 인디케이터(900))가 지정된 일정 시간 동안 정지(예: 홀딩)하는 경우, 가상 환경(2400)에서 어포던스(2360)에 대응하는 대상 가상 객체를 강조(2470)(예: 하이라이팅, 선택 박스)하여 제공할 수 있다. 예를 들어, 전자 장치(101)는 목록 형태의 어포던스(2450)에서 입력 장치(720)를 통해 아이템(2460)이 선택되면, 가상 환경(2400)에서 선택된 아이템(2460)에 대응하는 대상 가상 객체를 다른 대상 가상 객체와 구별하여, 대상 가상 객체에 대한 시인성(visibility) 및/또는 가독성(legibility)을 높일 수 있다. 일 실시예에 따르면, 전자 장치(101)는 어포던스(2450) 내의 각 아이템에 대해 2차원 또는 3차원 그래픽 데이터(예: 지정된 형상(예: 큐브형, 원형, 타원형, 세모형, 마름모형)의 아이콘 또는 이미지, 객체 형상의 이미지, 객체에 포함된 텍스트 인식 기반 텍스트)로 구성하여 아이템 별 대응하는 대상 가상 객체에 대한 시인성 및/또는 가독성을 높일 수 있다.Referring to FIG. 24c, a user may select one of the affordances (2460) among the affordances (2450) corresponding to each target virtual object by using the input device (720). According to one embodiment, when the input device (720) (e.g., the indicator (900) of the input device (720)) stops (e.g., holds) for a predetermined period of time for one of the affordances (2460), the electronic device (101) may highlight (2470) (e.g., highlight, select box) and provide the target virtual object corresponding to the affordance (2360) in the virtual environment (2400). For example, when an item (2460) is selected from an affordance (2450) in a list form via an input device (720), the electronic device (101) can distinguish a target virtual object corresponding to the selected item (2460) from other target virtual objects in a virtual environment (2400), thereby increasing the visibility and/or legibility of the target virtual object. According to one embodiment, the electronic device (101) can configure each item in the affordance (2450) with two-dimensional or three-dimensional graphic data (e.g., an icon or image of a specified shape (e.g., a cube, a circle, an oval, a triangle, a diamond) or an image of an object shape or a text based on text recognition included in an object) to increase the visibility and/or legibility of the corresponding target virtual object for each item.

도 25a 및 도 25b는 개시의 일 실시예에 따른 전자 장치에서 가상 객체와 연관지어 어포던스를 제공하는 동작 예를 도시하는 도면들이다.FIGS. 25A and 25B are diagrams illustrating examples of operations for providing affordance in association with a virtual object in an electronic device according to one embodiment of the disclosure.

도 25a 내지 도 25b를 참조하면, 전자 장치(101)는 복수의 개별 어포던스(예: 아이템)을 포함하는 어포던스(2500)를 제공할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 어포던스(2500) 제공 시에, 어포던스(2500)의 뎁스(예: 뎁스 메뉴)를 판단할 수 있다. 예를 들어, 전자 장치(101)는 어포던스(2500)의 메뉴 확장이 가능한지 판단할 수 있다. 일 실시예에 따라, 전자 장치(101)는 메뉴 확장이 가능한 경우, 메뉴 확장이 가능한 어포던스 별로 메뉴 확장 버튼(예: “>”)을 제공할 수 있다. Referring to FIGS. 25A and 25B , the electronic device (101) may provide an affordance (2500) including a plurality of individual affordances (e.g., items). According to one embodiment, when providing the affordance (2500), the electronic device (101) may determine the depth (e.g., depth menu) of the affordance (2500). For example, the electronic device (101) may determine whether menu expansion of the affordance (2500) is possible. According to one embodiment, when menu expansion is possible, the electronic device (101) may provide a menu expansion button (e.g., “>”) for each affordance for which menu expansion is possible.

일 실시예에 따르면, 사용자는 입력 장치(720)를 이용하여 대상 가상 객체에 각각 대응하는 어포던스(2500) 중 어느 하나의 어포던스(2510)를 선택할 수 있다. 예를 들어, 사용자는 입력 장치(720)(예: 입력 장치(720)의 인디케이터(900))를 이용하여 어느 하나의 어포던스(2510)의 메뉴 확장 버튼을 선택할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 사용자 입력에 기반하여 어포던스(2510)의 메뉴를 확장하여 뎁스 메뉴(2550)를 제공할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 입력 장치(720)에 의해 선택된 어포던스(25100)에 관련된 뎁스 메뉴가 있는 경우, 선택된 어포던스(2510)와 연관지어(또는 인접하여 또는 주변에) 뎁스 메뉴(2550)를 제공할 수 있다. According to one embodiment, a user may select one of the affordances (2510) corresponding to each target virtual object by using an input device (720). For example, the user may select a menu expansion button of one of the affordances (2510) by using the input device (720) (e.g., an indicator (900) of the input device (720)). According to one embodiment, the electronic device (101) may expand the menu of the affordance (2510) based on the user input to provide a depth menu (2550). According to one embodiment, if there is a depth menu related to the affordance (25100) selected by the input device (720), the electronic device (101) may provide the depth menu (2550) associated with (or adjacent to or around) the selected affordance (2510).

도 26은 본 개시의 일 실시예에 따른 전자 장치에서 어포던스를 제공하는 동작 예를 도시하는 도면이다.FIG. 26 is a diagram illustrating an example of an operation of providing affordance in an electronic device according to one embodiment of the present disclosure.

일 실시예에 따라, 도 26은 3차원 객체 레이아웃을 고려하여 목록 어포던스를 배치하는 방법의 예를 나타낼 수 있다.According to one embodiment, FIG. 26 may illustrate an example of a method for arranging list affordances considering a three-dimensional object layout.

일 실시예에 따르면, 전자 장치(101)는 가상 환경에서 다수의 중첩된 3차원 어포던스 객체를 선택함에 있어서, 실제 3차원 레이아웃을 고려한 목록을 제공할 수 있다. 예를 들어, 전자 장치(101)는 다수의 중첩된 3차원 가상 객체의 선택에 대한 직관성을 향상할 수 있도록, 3차원 객체 레이아웃(예: 3차원 어포던스 객체(2610)) 기반으로 목록을 제공할 수 있다.According to one embodiment, the electronic device (101) may provide a list that takes into account an actual 3D layout when selecting a plurality of overlapping 3D affordance objects in a virtual environment. For example, the electronic device (101) may provide a list based on a 3D object layout (e.g., a 3D affordance object (2610)) so as to improve intuitiveness in selecting a plurality of overlapping 3D virtual objects.

일 실시예에 따르면, 예시 <2601>에서, 전자 장치(101)는 가상 환경에서 복수의 어포던스들 간 간격이 분해능 값 보다 작아 목록 형태의 어포던스 생성이 필요한 경우, 사용자의 시선에서 해당 3차원 어포던스 객체(2610)를 평면에 프로젝션하고, 각 어포던스 객체(2610)의 무게중심(2620)을 산출할 수 있다.According to one embodiment, in example <2601>, when the gap between a plurality of affordances in a virtual environment is smaller than the resolution value and it is necessary to generate affordances in the form of a list, the electronic device (101) can project the corresponding 3D affordance object (2610) onto a plane from the user's viewpoint and calculate the center of gravity (2620) of each affordance object (2610).

일 실시예에 따르면, 예시 <2603>에서, 전자 장치(101)는 어포던스 객체(2610)의 크기(예: 크기 비율)는 동일하게 유지하고, 각 어포던스 객체(2610) 간의 거리만 무게중심(2620)을 기준으로 지정된 확대 배수(예: 약 N배)로 확대하여, 중첩되는 어포던스 객체(2610)를 3차원으로 펼친 형태로 배치할 수 있다. 일 실시예에 따라, 지정된 확대 배수는 입력 장치의 분해능 값에 따른 지정된 조건(예: 무게중심 간 간격, 최소 폭)을 만족하는 최소 값(예: 약 1.2배, 약 2배, 또는 약 3배)으로 설정될 수 있다.According to one embodiment, in example <2603>, the electronic device (101) may place the overlapping affordance objects (2610) in a three-dimensionally expanded form by keeping the sizes (e.g., size ratios) of the affordance objects (2610) the same and magnifying only the distance between each affordance object (2610) by a specified magnification multiple (e.g., approximately N times) based on the center of gravity (2620). According to one embodiment, the specified magnification multiple may be set to a minimum value (e.g., approximately 1.2 times, approximately 2 times, or approximately 3 times) that satisfies a specified condition (e.g., spacing between centers of gravity, minimum width) according to a resolution value of the input device.

도 27a, 도 27b 및 도 27c는 본 개시의 일 실시예에 따른 전자 장치에서 가상 객체와 연관지어 어포던스를 제공하는 동작 예를 도시하는 도면들이다.FIGS. 27A, 27B, and 27C are diagrams illustrating examples of operations for providing affordance in association with a virtual object in an electronic device according to one embodiment of the present disclosure.

일 실시예에 따라, 도 27a 내지 도 27c는 일 실시예에 따른 전자 장치(101)에서 가상 환경(2700)의 대상 가상 객체와 연관지어 대상 가상 객체 중 적어도 하나의 선택을 지원할 수 있는 어포던스(2750)를 제공하는 동작의 예를 나타낼 수 있다. 일 실시예에 따라, 도 27a 내지 도 27c에서는 가상 환경(2700)에서 복수의 입력 장치(270)(예: 마우스 및 사용자 손 또는 사용자 왼손 및 사용자 오른손)가 동작하는 경우의 예를 나타낼 수 있다.According to one embodiment, FIGS. 27A to 27C may illustrate examples of an operation of providing an affordance (2750) capable of supporting selection of at least one of target virtual objects in a virtual environment (2700) by associating the target virtual objects with each other in an electronic device (101) according to one embodiment. According to one embodiment, FIGS. 27A to 27C may illustrate examples of a case where multiple input devices (270) (e.g., a mouse and a user's hand or a user's left hand and a user's right hand) operate in a virtual environment (2700).

도 27a 내지 도 27c를 참조하면, 전자 장치(101)는 디스플레이(예: 도 1 또는 도 5의 디스플레이 모듈(160))을 통해 가상 환경(2700)(또는 가상 환경의 실행 화면(2700))을 표시하는 동안 제1 입력 장치(720)(예: 마우스)를 인식할 수 있다. 일 실시예에 따라, 도 27a 내지 도 27b에서는 가상 환경(2700)에서 제1 입력 장치(720)에 의해 지정되는 가상 객체가 없는 상태일 수 있다. 예를 들어, 제1 입력 장치(720)에 대응하는 어포던스가 제공되지 않는 상태를 나타낼 수 있다. 일 실시예에 따라, 제1 입력 장치(720)에 의해 지정된 가상 객체가 있는 경우, 제1 입력 장치(720)에 기반하여 어포던스가 제공될 수도 있다.Referring to FIGS. 27A to 27C , the electronic device (101) may recognize a first input device (720) (e.g., a mouse) while displaying a virtual environment (2700) (or an execution screen (2700) of the virtual environment) through a display (e.g., a display module (160) of FIG. 1 or 5 ). According to one embodiment, FIGS. 27A to 27B may indicate a state in which a virtual object specified by the first input device (720) in the virtual environment (2700) does not exist. For example, this may indicate a state in which an affordance corresponding to the first input device (720) is not provided. According to one embodiment, when a virtual object specified by the first input device (720) exists, an affordance may be provided based on the first input device (720).

일 실시예에 따라, 사용자는 제1 입력 장치(720)를 조작하는 중에 제2 입력 장치(720)(예: 사용자 손)을 가상 환경(2700) 내로 이동할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 가상 환경(2700)에서 제1 입력 장치(720)(예: 마우스)를 인식하면서, 동시에 가상 환경(2700)에 진입되는 제2 입력 장치(720)(예: 사용자 손)을 인식할 수 있다.In one embodiment, a user may move a second input device (720) (e.g., a user's hand) into a virtual environment (2700) while manipulating a first input device (720). In one embodiment, the electronic device (101) may recognize the first input device (720) (e.g., a mouse) in the virtual environment (2700) while simultaneously recognizing the second input device (720) (e.g., a user's hand) entering the virtual environment (2700).

일 실시예에 따르면, 전자 장치(101)는 제2 입력 장치(720)를 기준으로 형성된 가상 공간에 기반하여 사용자 선택의 대상이 되는 대상 가상 객체에 각각 대응하는 어포던스(2750)를 생성하여 표시할 수 있다. According to one embodiment, the electronic device (101) can generate and display affordances (2750) corresponding to target virtual objects that are targets of user selection based on a virtual space formed based on the second input device (720).

일 실시예에 따르면, 전자 장치(101)는 제2 입력 장치(720)가 가상 환경(2700) 내의 복수의 가상 객체들 중 적어도 하나의 가상 객체에 기반하여 지정된 일정 시간 동안 정지하는 경우, 제2 입력 장치(720)를 중심으로 형성된 가상 공간 내의 대상 가상 객체에 관련된 어포던스(2750)(예: 가이드 핸들)를 표시할 수 있다. 일 실시예에 따르면, 사용자는 어포던스(2750)에 기반하여 적어도 하나의 대상 가상 객체를 선택하여 조작(예: 이동, 삭제, 복사, 및/또는 편집)할 수 있다.According to one embodiment, the electronic device (101) may display an affordance (2750) (e.g., a guide handle) related to a target virtual object in a virtual space formed around the second input device (720) when the second input device (720) stops for a predetermined period of time based on at least one virtual object among a plurality of virtual objects in the virtual environment (2700). According to one embodiment, the user may select and manipulate (e.g., move, delete, copy, and/or edit) at least one target virtual object based on the affordance (2750).

일 실시예에 따르면, 전자 장치(101)는 제2 입력 장치(720)를 중심으로 어포던스(2750)를 표시하는 동안, 제1 입력 장치(720)가 가상 환경(2700) 내의 복수의 가상 객체들 중 적어도 하나의 가상 객체에 기반하여 지정된 일정 시간 동안 정지하는 경우, 제1 입력 장치(720)를 중심으로 형성된 가상 공간 내의 다른 대상 가상 객체에 관련된 다른 어포던스(미도시)를 동시에 제공할 수도 있다. 예를 들어, 전자 장치(101)는 서로 다른 유형의 복수의 입력 장치에 각각 대응하는 어포던스를 동시에 제공할 수 있다.According to one embodiment, while the electronic device (101) displays an affordance (2750) centered on the second input device (720), if the first input device (720) stops for a predetermined period of time based on at least one virtual object among a plurality of virtual objects within the virtual environment (2700), the electronic device (101) may simultaneously provide another affordance (not shown) related to another target virtual object within the virtual space formed centered on the first input device (720). For example, the electronic device (101) may simultaneously provide affordances respectively corresponding to a plurality of input devices of different types.

도 28a 및 도 28b는 본 개시의 일 실시예에 따른 전자 장치에서 가상 객체와 연관지어 어포던스를 제공하는 동작 예를 도시하는 도면들이다.FIGS. 28A and 28B are diagrams illustrating examples of operations for providing affordance in association with a virtual object in an electronic device according to one embodiment of the present disclosure.

일 실시예에 따라, 도 28a 내지 도 28b는 복수의 전자 장치(101)(예: 제1 전자 장치(2801), 제2 전자 장치(2803))가 서로 연결되고, 가상 환경(2800)을 공유하여, 협업하는 경우에, 가상 환경(2800)의 대상 가상 객체와 연관지어 대상 가상 객체 중 적어도 하나의 선택을 지원할 수 있는 어포던스(2850)를 제공하는 동작의 예를 나타낼 수 있다. 예를 들어, 도 28a 내지 도 28b에서는 제1 사용자의 제1 전자 장치(2801)와 제2 사용자의 제2 전자 장치(2803))를 연동하여, 가상 환경(2800)에서 같이 작업하는 시나리오의 예를 나타낼 수 있다.According to one embodiment, FIGS. 28A and 28B may illustrate an example of an operation of providing an affordance (2850) that can support selection of at least one of target virtual objects by associating it with a target virtual object of the virtual environment (2800) when a plurality of electronic devices (101) (e.g., a first electronic device (2801), a second electronic device (2803)) are connected to each other, share a virtual environment (2800), and collaborate. For example, FIGS. 28A and 28B may illustrate an example of a scenario in which a first electronic device (2801) of a first user and a second electronic device (2803) of a second user are linked to work together in a virtual environment (2800).

도 28a를 참조하면, 제1 전자 장치(2801) 또는 제2 전자 장치(2803)는 각자의 디스플레이(예: 도 1 또는 도 5의 디스플레이 모듈(160))를 통해 가상 환경(2800)(또는 가상 환경의 실행 화면(2800))을 표시하는 동안 적어도 하나의 입력 장치를 인식할 수 있다. 일 실시예에 따라, 제1 전자 장치(2801)와 제2 전자 장치(2803)에서, 가상 환경(2800)을 실행하는 전자 장치(101)가 마스터 장치일 수 있다. 일 실시예에 따라, 마스터 장치가 실행하는 가상 환경(280)을 공유받는 전자 장치(101)가 슬레이브 장치일 수 있다. 일 실시예에 따라, 입력 장치의 인식은 가상 환경(2800)을 제공하는 마스터 장치(예: 제1 전자 장치(2801) 또는 제2 전자 장치(2803)에 의해 인식될 수 있다. Referring to FIG. 28A, a first electronic device (2801) or a second electronic device (2803) may recognize at least one input device while displaying a virtual environment (2800) (or an execution screen (2800) of the virtual environment) through their respective displays (e.g., the display module (160) of FIG. 1 or FIG. 5). According to one embodiment, in the first electronic device (2801) and the second electronic device (2803), an electronic device (101) executing the virtual environment (2800) may be a master device. According to one embodiment, an electronic device (101) that shares the virtual environment (2800) executed by the master device may be a slave device. According to one embodiment, recognition of the input device may be recognized by a master device (e.g., the first electronic device (2801) or the second electronic device (2803)) that provides the virtual environment (2800).

일 실시예에 따르면, 마스터 장치(예: 제1 전자 장치(2801))는 입력 장치를 기준으로 형성된 가상 공간에 기반하여 사용자 선택의 대상이 되는 대상 가상 객체에 각각 대응하는 어포던스(2850)를 생성하여 표시할 수 있다. 일 실시예에 따라, 마스터 장치에 의해 생성되는 어포던스(2850)는 슬레이브 장치(예: 제2 전자 장치(2803))의 디스플레이를 통해 제공되는 가상 환경(2800) 상에도 공유되어 표시될 수 있다.According to one embodiment, a master device (e.g., a first electronic device (2801)) may generate and display an affordance (2850) corresponding to each target virtual object to be selected by a user based on a virtual space formed based on an input device. According to one embodiment, the affordance (2850) generated by the master device may also be shared and displayed on a virtual environment (2800) provided through a display of a slave device (e.g., a second electronic device (2803)).

일 실시예에 따르면, 마스터 장치는 입력 장치가 가상 환경(2800) 내의 복수의 가상 객체들 중 적어도 하나의 가상 객체에 기반하여 지정된 일정 시간 동안 정지하는 경우, 입력 장치를 중심으로 형성된 가상 공간 내의 대상 가상 객체에 관련된 어포던스(2850)(예: 가이드 핸들)를 표시할 수 있다. 일 실시예에 따르면, 제1 사용자 또는 제2 사용자는 어포던스(2850)에 기반하여 적어도 하나의 대상 가상 객체를 선택하여 조작(예: 이동, 삭제, 복사, 및/또는 편집)할 수 있다.According to one embodiment, the master device may display an affordance (2850) (e.g., a guide handle) related to a target virtual object within a virtual space formed around the input device when the input device remains stationary for a predetermined period of time based on at least one virtual object among a plurality of virtual objects within the virtual environment (2800). According to one embodiment, the first user or the second user may select and manipulate (e.g., move, delete, copy, and/or edit) at least one target virtual object based on the affordance (2850).

도 28b를 참조하면, 제1 사용자 또는 제2 사용자는 입력 장치를 이용하여 대상 가상 객체에 각각 대응하는 어포던스(2850) 중 어느 하나의 어포던스(2860)를 선택할 수 있다. 일 실시예에 따르면, 마스터 장치는 어느 하나의 어포던스(2860)에 입력 장치가 지정된 일정 시간 동안 정지(예: 홀딩)하는 경우, 어포던스(2860)의 뎁스 메뉴를 판단할 수 있다. 예를 들어, 마스터 장치는 어포던스(2860)의 메뉴 확장이 가능한지 판단할 수 있다. 일 실시예에 따르면, 마스터 장치는 입력 장치에 의해 선택된 어포던스(2860)에 관련된 뎁스 메뉴가 있는 경우, 선택된 어포던스(2860)와 연관지어(또는 인접하여 또는 주변에) 뎁스 메뉴(2870)를 제공할 수 있다. 일 실시예에 따라, 마스터 장치에 의해 생성되는 뎁스 메뉴(2870)는 슬레이브 장치의 디스플레이를 통해 제공되는 가상 환경(2800) 상에도 공유되어 표시될 수 있다.Referring to FIG. 28b, the first user or the second user may select one of the affordances (2860) among the affordances (2850) corresponding to the target virtual object, respectively, by using the input device. According to one embodiment, the master device may determine a depth menu of the affordance (2860) when the input device is stopped (e.g., held) for a predetermined period of time designated for one of the affordances (2860). For example, the master device may determine whether menu expansion of the affordance (2860) is possible. According to one embodiment, when there is a depth menu related to the affordance (2860) selected by the input device, the master device may provide a depth menu (2870) associated with (or adjacent to or around) the selected affordance (2860). In one embodiment, a depth menu (2870) generated by a master device may also be shared and displayed on a virtual environment (2800) provided through the display of a slave device.

본 개시의 일 실시예에 따른 전자 장치(101, 201)에서 수행하는 동작 방법은, 가상 환경(400, 700)에서 입력 장치(720)를 인식하는 동작을 포함할 수 있다. 일 실시예에 따르면, 상기 동작 방법은, 상기 입력 장치(720)의 속성에 기반하여 대상 가상 객체(750)를 결정하기 위한 가상 공간(740)을 결정하는 동작을 포함할 수 있다. 일 실시예에 따르면, 상기 동작 방법은, 상기 가상 공간(740)에 기반하여 상기 대상 가상 객체(750)를 판단하는 동작을 포함할 수 있다. 일 실시예에 따르면, 상기 동작 방법은, 상기 대상 가상 객체(750)에 각각 대응하는 어포던스(760)를 생성하는 동작을 포함할 수 있다. 일 실시예에 따르면, 상기 동작 방법은, 상기 어포던스(760)를 지정된 배치 방식에 따라 표시하는 동작을 포함할 수 있다.An operation method performed in an electronic device (101, 201) according to one embodiment of the present disclosure may include an operation of recognizing an input device (720) in a virtual environment (400, 700). According to one embodiment, the operation method may include an operation of determining a virtual space (740) for determining a target virtual object (750) based on a property of the input device (720). According to one embodiment, the operation method may include an operation of determining the target virtual object (750) based on the virtual space (740). According to one embodiment, the operation method may include an operation of generating an affordance (760) corresponding to each of the target virtual objects (750). According to one embodiment, the operation method may include an operation of displaying the affordance (760) according to a specified arrangement method.

일 실시예에 따르면, 상기 입력 장치를 인식하는 동작은, 디스플레이를 통해 복수의 가상 객체들을 포함하는 상기 가상 환경에 대한 실행 화면을 표시하는 동작, 상기 실행 화면을 표시하는 동안 상기 입력 장치를 인식하는 동작, 및 상기 입력 장치를 인식하는 것에 기반하여 상기 입력 장치에 대응하는 인디케이터(900)를 인식하는 동작을 포함할 수 있다.According to one embodiment, the operation of recognizing the input device may include an operation of displaying an execution screen for the virtual environment including a plurality of virtual objects through a display, an operation of recognizing the input device while displaying the execution screen, and an operation of recognizing an indicator (900) corresponding to the input device based on recognizing the input device.

일 실시예에 따르면, 상기 가상 공간을 결정하는 동작은, 상기 입력 장치의 속성을 판단하는 동작, 상기 입력 장치의 속성에 따라 미리 정의되는 제1 분해능 값과 상기 입력 장치를 이용하는 사용자에 의해 발생하는 사용자 노이즈(user noise)에 관련된 제2 분해능 값에 기반하여 상기 분해능 값을 산출하는 동작, 상기 분해능 값을 지름으로 갖는 상기 가상 공간을 산출하는 동작, 상기 인디케이터를 기준으로 상기 가상 공간의 무게중심을 매핑하는 동작을 포함할 수 있다. According to one embodiment, the operation of determining the virtual space may include an operation of determining a property of the input device, an operation of calculating the resolution value based on a first resolution value predefined according to the property of the input device and a second resolution value related to user noise generated by a user using the input device, an operation of calculating the virtual space having the resolution value as a diameter, and an operation of mapping a center of gravity of the virtual space based on the indicator.

일 실시예에 따르면, 상기 가상 공간은, 상기 인디케이터를 중심으로 상기 입력 장치의 속성에 기반한 분해능 값을 지름으로 형성되는 가상의 구를 포함할 수 있다.According to one embodiment, the virtual space may include a virtual sphere formed with a diameter having a resolution value based on a property of the input device centered on the indicator.

일 실시예에 따르면, 상기 가상 객체를 판단하는 동작은, 상기 가상 공간에 기반하여, 상기 실행 화면의 상기 복수의 가상 객체들 중 상기 가상 공간에 포함되는 상기 대상 가상 객체를 판단하는 동작, 상기 가상 공간에 포함되는 상기 대상 가상 객체가 지정된 조건을 만족하는지 판단하는 동작, 상기 대상 가상 객체가 상기 지정된 조건을 만족하는 경우, 상기 어포던스를 제공하기 위한 가이드 생성 모드로 진입하는 동작을 포함할 수 있다.According to one embodiment, the operation of determining the virtual object may include an operation of determining, based on the virtual space, the target virtual object included in the virtual space among the plurality of virtual objects of the execution screen, an operation of determining whether the target virtual object included in the virtual space satisfies a specified condition, and an operation of entering a guide generation mode for providing the affordance when the target virtual object satisfies the specified condition.

일 실시예에 따르면, 상기 지정된 조건은, 상기 대상 가상 객체가 적어도 2개인 복수의 대상 가상 객체이고, 상기 복수의 대상 가상 객체 각각의 무게중심 간 거리가 지정된 근접거리 이하인 조건을 포함할 수 있다.According to one embodiment, the specified condition may include a condition in which the target virtual object is a plurality of target virtual objects, at least two in number, and a distance between centers of gravity of each of the plurality of target virtual objects is less than or equal to a specified proximity distance.

일 실시예에 따르면, 상기 어포던스를 표시하는 동작은, 상기 대상 가상 객체가 상기 가상 공간에 걸쳐 있는 경우, 상기 대상 가상 객체가 상기 가상 공간의 표면과 접촉하는 공간에 기반하여, 객체 기반 어포던스를 제공하는 동작, 상기 대상 가상 객체가 상기 가상 공간의 내부에 있는 경우, 상기 대상 가상 객체로부터 상기 가상 공간의 표면으로의 연장선상의 공간에 기반하여, 객체 기반 어포던스를 제공하는 동작, 상기 대상 가상 객체 사이의 간격이 상기 가상 공간의 반지름보다 작은 경우, 상기 가상 공간의 외곽 공간에 목록 기반 어포던스를 제공하는 동작을 포함할 수 있다.According to one embodiment, the operation of displaying the affordance may include an operation of providing an object-based affordance based on a space in which the target virtual object contacts a surface of the virtual space when the target virtual object spans the virtual space, an operation of providing an object-based affordance based on a space along an extension from the target virtual object to the surface of the virtual space when the target virtual object is inside the virtual space, and an operation of providing a list-based affordance in an outer space of the virtual space when a distance between the target virtual objects is smaller than a radius of the virtual space.

일 실시예에 따르면, 상기 어포던스는, 상기 복수의 가상 객체들 중 상기 대상 가상 객체에 대한 다이렉트 선택이 가능하도록 지원하는 가상 객체를 포함할 수 있다.According to one embodiment, the affordance may include a virtual object that supports direct selection of the target virtual object among the plurality of virtual objects.

본 명세서와 도면에 개시된 본 개시의 다양한 실시예들은 본 개시의 기술 내용을 쉽게 설명하고 본 개시의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 개시의 범위를 한정하고자 하는 것은 아니다. 따라서 본 개시의 범위는 여기에 개시된 실시예들 이외에도 본 개시의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 개시의 범위에 포함되는 것으로 해석되어야 한다.The various embodiments of the present disclosure disclosed in this specification and drawings are merely specific examples presented to easily explain the technical content of the present disclosure and to help understand the present disclosure, and are not intended to limit the scope of the present disclosure. Therefore, the scope of the present disclosure should be interpreted to include all changes or modified forms derived based on the technical idea of the present disclosure in addition to the embodiments disclosed herein.

101, 201: 전자 장치
120: 프로세서
130: 메모리
160: 디스플레이 모듈
180: 카메라 모듈
400, 700: 가상 환경 (실행 화면)
710: 복수의 가상 객체들
720: 입력 장치
740: 가상 공간 (분해능 구)
750: 대상 가상 객체
760: 어포던스
900: 인디케이터
760: 어포던스
101, 201: Electronic Devices
120: Processor
130: Memory
160: Display module
180: Camera module
400, 700: Virtual environment (running screen)
710: Multiple Virtual Objects
720: Input Device
740: Virtual space (resolution sphere)
750: Target Virtual Object
760: Affordance
900: Indicator
760: Affordance

Claims (20)

전자 장치(101, 201)에 있어서,
디스플레이(160); 및
상기 디스플레이(160)와 작동적으로(operatively) 연결된 프로세서(120)를 포함하고, 상기 프로세서(120)는,
가상 환경(400, 700)에서 입력 장치(720)를 인식하고,
상기 입력 장치(720)의 속성에 기반하여 대상 가상 객체(750)를 결정하기 위한 가상 공간(740)을 결정하고,
상기 가상 공간(740)에 기반하여 상기 대상 가상 객체(750)를 판단하고,
상기 대상 가상 객체(750)에 각각 대응하는 어포던스(760)를 생성하고,
상기 어포던스(760)를 지정된 배치 방식에 따라 표시하도록 설정된 전자 장치.
In an electronic device (101, 201),
display (160); and
A processor (120) operatively connected to the display (160) is included, and the processor (120) comprises:
Recognizes an input device (720) in a virtual environment (400, 700),
Determine a virtual space (740) for determining a target virtual object (750) based on the properties of the input device (720),
Based on the above virtual space (740), the target virtual object (750) is determined,
Generate an affordance (760) corresponding to each of the above target virtual objects (750),
An electronic device set to display the above affordance (760) according to a specified arrangement method.
제1항에 있어서, 상기 프로세서는,
상기 디스플레이를 통해 복수의 가상 객체들을 포함하는 상기 가상 환경에 대한 실행 화면을 표시하고,
상기 실행 화면을 표시하는 동안 상기 입력 장치를 인식하고,
상기 입력 장치를 인식하는 것에 기반하여 상기 입력 장치에 대응하는 인디케이터(900)를 인식하도록 설정되고,
상기 입력 장치는, 상기 가상 환경에서 가상 객체를 조작하기 위한 사용자 입력을 지원하는 장치를 포함하는 전자 장치.
In the first paragraph, the processor,
Displaying an execution screen for the virtual environment including a plurality of virtual objects through the above display,
Recognize the input device while displaying the above execution screen,
Based on recognizing the input device, it is set to recognize an indicator (900) corresponding to the input device,
The input device is an electronic device including a device that supports user input for manipulating a virtual object in the virtual environment.
제2항에 있어서, 상기 어포던스는, 상기 복수의 가상 객체들 중 상기 대상 가상 객체에 대한 다이렉트 선택이 가능하도록 지원하는 지정된 객체를 포함하는 전자 장치.
In the second paragraph, the affordance is an electronic device including a designated object that supports direct selection of the target virtual object among the plurality of virtual objects.
제2항에 있어서, 상기 프로세서는,
상기 입력 장치의 속성을 판단하고,
상기 인디케이터를 기준으로 상기 입력 장치의 속성에 대응하는 가상 공간을 산출하도록 설정된 전자 장치.
In the second paragraph, the processor,
Determine the properties of the above input device,
An electronic device set to produce a virtual space corresponding to the properties of the input device based on the above indicator.
제4항에 있어서, 상기 가상 공간은,
상기 인디케이터를 중심으로 상기 입력 장치의 속성에 기반한 분해능 값을 지름으로 형성되는 가상의 구를 포함하는 전자 장치.
In the fourth paragraph, the virtual space is
An electronic device comprising a virtual sphere formed with a diameter having a resolution value based on properties of the input device centered on the indicator.
제5항에 있어서, 상기 분해능 값은,
상기 입력 장치에 미리 정의되는 제1 분해능 값과,
상기 입력 장치를 이용하는 사용자에 의해 발생하는 사용자 노이즈(user noise)에 관련된 제2 분해능 값을 포함하는 전자 장치.
In the fifth paragraph, the resolution value is,
A first resolution value predefined for the above input device, and
An electronic device comprising a second resolution value related to user noise generated by a user using the input device.
제6항에 있어서, 상기 프로세서는,
상기 제1 분해능 값과 상기 제2 분해능 값에 기반하여 상기 분해능 값을 산출하도록 설정된 전자 장치.
In the sixth paragraph, the processor,
An electronic device configured to calculate the resolution value based on the first resolution value and the second resolution value.
제5항에 있어서, 상기 프로세서는,
상기 인디케이터를 기준으로 상기 가상 공간의 무게중심을 매핑하고,
상기 무게중심을 기준으로 상기 지름을 갖는 상기 가상 공간을 형성하도록 설정된 전자 장치.
In the fifth paragraph, the processor,
Mapping the center of gravity of the virtual space based on the above indicator,
An electronic device set to form a virtual space having the diameter based on the center of gravity.
제5항에 있어서, 상기 프로세서는,
상기 분해능 값에 기반하여 상기 어포던스의 크기 및/또는 간격을 결정하도록 설정된 전자 장치.
In the fifth paragraph, the processor,
An electronic device configured to determine the size and/or spacing of the affordance based on the above resolution value.
제4항에 있어서, 상기 프로세서는,
상기 가상 공간에 기반하여, 상기 실행 화면의 상기 복수의 가상 객체들 중 상기 가상 공간에 포함되는 상기 대상 가상 객체를 판단하도록 설정된 전자 장치.
In the fourth paragraph, the processor,
An electronic device set to determine, based on the above virtual space, the target virtual object included in the virtual space among the plurality of virtual objects of the above execution screen.
제10항에 있어서, 상기 프로세서는,
상기 가상 공간에 포함되는 상기 대상 가상 객체가 지정된 조건을 만족하는지 판단하고,
상기 대상 가상 객체가 상기 지정된 조건을 만족하는 경우, 상기 어포던스를 제공하기 위한 가이드 생성 모드로 진입하도록 설정된 전자 장치.
In the 10th paragraph, the processor,
Determine whether the target virtual object included in the above virtual space satisfies a specified condition,
An electronic device set to enter a guide generation mode for providing the affordance when the target virtual object satisfies the specified condition.
제11항에 있어서, 상기 지정된 조건은,
상기 대상 가상 객체가 적어도 2개인 복수의 대상 가상 객체이고, 상기 복수의 대상 가상 객체 각각의 무게중심 간 거리가 지정된 근접거리 이하인 조건을 포함하는 전자 장치.
In the 11th paragraph, the specified conditions are:
An electronic device including a condition that the target virtual object is a plurality of target virtual objects, at least two in number, and the distance between the centers of gravity of each of the plurality of target virtual objects is less than or equal to a specified proximity distance.
제11항에 있어서, 상기 프로세서는,
상기 가상 공간에 복수의 대상 가상 객체가 포함되는지 판단하고,
상기 복수의 대상 가상 객체가 포함된 경우, 상기 복수의 대상 가상 객체에 각각 대응하는 무게중심을 판단하고,
상기 복수의 대상 가상 객체 각각의 무게중심들 사이의 거리를 판단하고,
무게중심들 사이의 거리와 지정된 근접거리를 비교하고,
상기 무게중심들 사이의 거리 중 적어도 하나의 거리가 상기 지정된 근접거리 이하인 경우 상기 가이드 생성 모드로 진입하도록 설정된 전자 장치.
In the 11th paragraph, the processor,
Determine whether the above virtual space contains multiple target virtual objects,
When the above multiple target virtual objects are included, the center of gravity corresponding to each of the above multiple target virtual objects is determined,
Determine the distance between the centers of gravity of each of the plurality of target virtual objects,
Compare the distance between the centers of gravity with the specified proximity distance,
An electronic device set to enter the guide generation mode when at least one of the distances between the centers of gravity is less than or equal to the specified proximity distance.
제2항에 있어서, 상기 지정된 배치 방식은,
상기 대상 가상 객체와 상기 가상 공간의 표면에 접촉되는 공간에 어포던스를 배치하여 제공하는 제1 방식,
상기 가상 공간의 외부에서 상기 대상 가상 객체에 각각 대응하는 목록으로 어포던스를 배치하여 제공하는 제2 방식을 포함하는 전자 장치.
In the second paragraph, the specified arrangement method is,
A first method of providing an affordance by arranging it in a space that comes into contact with the target virtual object and the surface of the virtual space;
An electronic device including a second method for providing affordances by arranging them in a list corresponding to each target virtual object outside the virtual space.
제14항에 있어서, 상기 프로세서는,
상기 대상 가상 객체가 상기 가상 공간에 걸쳐있는 경우, 상기 대상 가상 객체가 상기 가상 공간의 표면과 접촉하는 공간에 기반하여, 객체 기반 어포던스를 제공하고,
상기 대상 가상 객체가 상기 가상 공간의 내부에 있는 경우, 상기 대상 가상 객체로부터 상기 가상 공간의 표면으로의 연장선상의 공간에 기반하여, 객체 기반 어포던스를 제공하고,
상기 대상 가상 객체 사이의 간격이 상기 가상 공간의 반지름보다 작은 경우, 상기 가상 공간의 외곽 공간에 목록 기반 어포던스를 제공하도록 설정된 전자 장치.
In the 14th paragraph, the processor,
When the target virtual object is over the virtual space, an object-based affordance is provided based on the space where the target virtual object is in contact with the surface of the virtual space.
If the target virtual object is inside the virtual space, an object-based affordance is provided based on the space along the extension line from the target virtual object to the surface of the virtual space.
An electronic device configured to provide a list-based affordance to an outer space of the virtual space when the distance between the target virtual objects is smaller than the radius of the virtual space.
전자 장치(101, 201)의 동작 방법에 있어서,
가상 환경(400, 700)에서 입력 장치(720)를 인식하는 동작;
상기 입력 장치(720)의 속성에 기반하여 대상 가상 객체(750)를 결정하기 위한 가상 공간(740)을 결정하는 동작;
상기 가상 공간(740)에 기반하여 상기 대상 가상 객체(750)를 판단하는 동작;
상기 대상 가상 객체(750)에 각각 대응하는 어포던스(760)를 생성하는 동작; 및
상기 어포던스(760)를 지정된 배치 방식에 따라 표시하는 동작을 포함하는 방법.
In a method of operating an electronic device (101, 201),
An action of recognizing an input device (720) in a virtual environment (400, 700);
An operation of determining a virtual space (740) for determining a target virtual object (750) based on the properties of the input device (720);
An operation of determining the target virtual object (750) based on the virtual space (740);
An operation of generating an affordance (760) corresponding to each of the above target virtual objects (750); and
A method including an action of displaying the above affordance (760) according to a specified arrangement method.
제16항에 있어서, 상기 입력 장치를 인식하는 동작은,
디스플레이를 통해 복수의 가상 객체들을 포함하는 상기 가상 환경에 대한 실행 화면을 표시하는 동작,
상기 실행 화면을 표시하는 동안 상기 입력 장치를 인식하는 동작, 및
상기 입력 장치를 인식하는 것에 기반하여 상기 입력 장치에 대응하는 인디케이터(900)를 인식하는 동작을 포함하는 방법.
In the 16th paragraph, the operation of recognizing the input device is,
An action of displaying an execution screen for a virtual environment including a plurality of virtual objects through a display;
An action of recognizing the input device while displaying the above execution screen, and
A method comprising an action of recognizing an indicator (900) corresponding to the input device based on recognizing the input device.
제17항에 있어서, 상기 가상 공간을 결정하는 동작은,
상기 입력 장치의 속성을 판단하는 동작,
상기 입력 장치의 속성에 따라 미리 정의되는 제1 분해능 값과 상기 입력 장치를 이용하는 사용자에 의해 발생하는 사용자 노이즈(user noise)에 관련된 제2 분해능 값에 기반하여 상기 분해능 값을 산출하는 동작,
상기 분해능 값을 지름으로 갖는 상기 가상 공간을 산출하는 동작,
상기 인디케이터를 기준으로 상기 가상 공간의 무게중심을 매핑하는 동작을 포함하고,
상기 가상 공간은,
상기 인디케이터를 중심으로 상기 입력 장치의 속성에 기반한 분해능 값을 지름으로 형성되는 가상의 구를 포함하는 방법.
In the 17th paragraph, the operation of determining the virtual space is:
An action for determining the properties of the above input device;
An operation of calculating the resolution value based on a first resolution value predefined according to the properties of the input device and a second resolution value related to user noise generated by a user using the input device.
An operation for producing a virtual space having the above resolution value as a diameter;
Including an action of mapping the center of gravity of the virtual space based on the above indicator,
The above virtual space is,
A method comprising a virtual sphere formed with a diameter having a resolution value based on properties of the input device centered on the indicator.
제17항에 있어서, 상기 가상 객체를 판단하는 동작은,
상기 가상 공간에 기반하여, 상기 실행 화면의 상기 복수의 가상 객체들 중 상기 가상 공간에 포함되는 상기 대상 가상 객체를 판단하는 동작,
상기 가상 공간에 포함되는 상기 대상 가상 객체가 지정된 조건을 만족하는지 판단하는 동작,
상기 대상 가상 객체가 상기 지정된 조건을 만족하는 경우, 상기 어포던스를 제공하기 위한 가이드 생성 모드로 진입하는 동작을 포함하고,
상기 지정된 조건은,
상기 대상 가상 객체가 적어도 2개인 복수의 대상 가상 객체이고, 상기 복수의 대상 가상 객체 각각의 무게중심 간 거리가 지정된 근접거리 이하인 조건을 포함하는 방법.
In the 17th paragraph, the operation of determining the virtual object is:
An operation of determining, based on the above virtual space, the target virtual object included in the virtual space among the plurality of virtual objects of the above execution screen;
An action for determining whether the target virtual object included in the virtual space satisfies a specified condition;
If the target virtual object satisfies the specified condition, the operation of entering a guide generation mode for providing the affordance is included.
The above specified conditions are,
A method comprising a condition that the target virtual object is a plurality of target virtual objects, at least two in number, and the distance between the centers of gravity of each of the plurality of target virtual objects is less than or equal to a specified proximity distance.
제17항에 있어서, 상기 어포던스를 표시하는 동작은,
상기 대상 가상 객체가 상기 가상 공간에 걸쳐 있는 경우, 상기 대상 가상 객체가 상기 가상 공간의 표면과 접촉하는 공간에 기반하여, 객체 기반 어포던스를 제공하는 동작,
상기 대상 가상 객체가 상기 가상 공간의 내부에 있는 경우, 상기 대상 가상 객체로부터 상기 가상 공간의 표면으로의 연장선상의 공간에 기반하여, 객체 기반 어포던스를 제공하는 동작,
상기 대상 가상 객체 사이의 간격이 상기 가상 공간의 반지름보다 작은 경우, 상기 가상 공간의 외곽 공간에 목록 기반 어포던스를 제공하는 동작을 포함하고,
상기 어포던스는,
상기 복수의 가상 객체들 중 상기 대상 가상 객체에 대한 다이렉트 선택이 가능하도록 지원하는 가상 객체를 포함하는 방법.
In the 17th paragraph, the action of indicating the affordance is:
An action of providing an object-based affordance based on a space where the target virtual object is in contact with a surface of the virtual space, when the target virtual object is overlapping the virtual space.
An operation of providing an object-based affordance based on a space along an extension line from the target virtual object to the surface of the virtual space, when the target virtual object is inside the virtual space.
Including an action of providing a list-based affordance to an outer space of the virtual space when the gap between the target virtual objects is smaller than the radius of the virtual space,
The above affordance is,
A method including a virtual object that supports direct selection of a target virtual object among the plurality of virtual objects.
KR1020230170845A 2023-08-09 2023-11-30 Method for supporting object selection in virtual environment and electronic device supporting the same Pending KR20250023244A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2024/011901 WO2025034055A1 (en) 2023-08-09 2024-08-09 Method for supporting object selection in virtual environment and electronic device supporting same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020230104156 2023-08-09
KR20230104156 2023-08-09

Publications (1)

Publication Number Publication Date
KR20250023244A true KR20250023244A (en) 2025-02-18

Family

ID=94825167

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230170845A Pending KR20250023244A (en) 2023-08-09 2023-11-30 Method for supporting object selection in virtual environment and electronic device supporting the same

Country Status (1)

Country Link
KR (1) KR20250023244A (en)

Similar Documents

Publication Publication Date Title
US20220155910A1 (en) Method for displaying user interface and electronic device therefor
US12254234B2 (en) Apparatus and method for providing contents related to augmented reality service between electronic device and wearable electronic device
US11947728B2 (en) Electronic device for executing function based on hand gesture and method for operating thereof
US12073017B2 (en) Wearable electronic device for displaying virtual object on a surface of a real object and method of controlling the same
US12321526B2 (en) Wearable electronic device for displaying virtual object and method of controlling the same
EP4459429A1 (en) Augmented reality device switching input mode, and method therefor
KR20230063829A (en) Waearable electronic device displaying virtual object and method for controlling the same
KR20230067197A (en) Apparatus and method for providing contents related to augmented reality service between electronic device and wearable electronic device
KR20230044833A (en) Electronic device and the method for representing contents
KR20240050198A (en) Wearable device for guiding user&#39;s posture and method thereof
KR20240041775A (en) Electronic device for adjusting audio signal related to object shown via display and method thereof
KR20250023244A (en) Method for supporting object selection in virtual environment and electronic device supporting the same
CN117616381A (en) Voice-controlled setup and navigation
KR20230088100A (en) Electronic device for using of virtual input device and method of operating the same
KR20220162956A (en) Electronic device for supporting various communication during video call and operating method thereof
US20260016951A1 (en) Electronic device for supporting xr content, and input mode support method therefor
KR20250090122A (en) Electronic device, method and recording medium for providing shared contents between electronic devices
US20260079578A1 (en) Electronic device and virtual image providing method for electronic device
US20250298484A1 (en) Electronic device and method for identifying user input in virtual space
US20260037206A1 (en) Electronic device, method, and non-transitory computer readable storage medium for interacting with wearable device
KR20240094948A (en) Electronic device and method for obtaining information for object
KR20250134486A (en) Electronic device and method for recognizing object thereof
KR20240171943A (en) Electronic device and method for providing virtual image thereof
KR20240142245A (en) Electronic device suporrting a extended reality contents and mehtod for supporting input mode of the same
KR20250047037A (en) Wearable device, method, and non-transitory computer readable storage medium for gesture input

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20231130

PG1501 Laying open of application