WO2024049005A1 - 비네팅 기능을 수행하는 방법 및 이를 지원하는 웨어러블 전자 장치 - Google Patents
비네팅 기능을 수행하는 방법 및 이를 지원하는 웨어러블 전자 장치 Download PDFInfo
- Publication number
- WO2024049005A1 WO2024049005A1 PCT/KR2023/010673 KR2023010673W WO2024049005A1 WO 2024049005 A1 WO2024049005 A1 WO 2024049005A1 KR 2023010673 W KR2023010673 W KR 2023010673W WO 2024049005 A1 WO2024049005 A1 WO 2024049005A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- processor
- user
- virtual space
- electronic device
- avatar
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 63
- 230000033001 locomotion Effects 0.000 claims abstract description 149
- 230000000694 effects Effects 0.000 claims abstract description 88
- 238000001514 detection method Methods 0.000 claims abstract description 10
- 201000003152 motion sickness Diseases 0.000 claims description 44
- 238000012790 confirmation Methods 0.000 claims description 6
- 230000009471 action Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 description 83
- 238000004891 communication Methods 0.000 description 49
- 239000011521 glass Substances 0.000 description 21
- 238000010586 diagram Methods 0.000 description 16
- 230000008859 change Effects 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 9
- 238000013528 artificial neural network Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000004044 response Effects 0.000 description 7
- 210000003128 head Anatomy 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 5
- 230000007423 decrease Effects 0.000 description 5
- 230000010267 cellular communication Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000000638 stimulation Effects 0.000 description 3
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000007654 immersion Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 206010025482 malaise Diseases 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 229910052710 silicon Inorganic materials 0.000 description 2
- 239000010703 silicon Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000002567 electromyography Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000004424 eye movement Effects 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003155 kinesthetic effect Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 208000018883 loss of balance Diseases 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 210000002480 semicircular canal Anatomy 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 208000024891 symptom Diseases 0.000 description 1
- 230000001720 vestibular Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/40—Detecting, measuring or recording for evaluating the nervous system
- A61B5/4005—Detecting, measuring or recording for evaluating the nervous system for evaluating the sensory system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/163—Wearable computers, e.g. on a belt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/003—Navigation within 3D models or images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
Definitions
- This disclosure relates to a method of performing a vignetting function and a wearable electronic device that supports the same.
- wearable electronic devices such as augmented reality glass (AR glass), virtual reality glass (VR glass), and head mounted display (HMD) devices
- AR glass augmented reality glass
- VR glass virtual reality glass
- HMD head mounted display
- VR glasses can provide a realistic experience to the user by displaying virtual images while worn on the user's head.
- VR glasses can replace the usability of smart phones in various fields such as game entertainment, education, and SNS (social networking service). Users can receive content similar to reality through VR glasses worn on their heads, and can feel as if they are staying in a virtual world through interaction.
- VR glasses can control VR content based on the movement of the VR glasses due to the movement of the head of the user wearing the VR glasses, input through a controller, and/or the movement of a sensor attached to the user's body.
- VR glasses may, while VR content is presented, move the user within the virtual space of virtual reality based on the movement of the VR glasses, input through a controller, and/or movement of sensors attached to the user's body.
- the corresponding avatar also referred to as “character” can be moved. As VR glasses move the avatar corresponding to the user within the virtual space, the user can receive an experience similar to moving in real life.
- motion sickness also referred to as “VR sickness” or “cyber sickness”.
- VR sickness also referred to as “VR sickness” or “cyber sickness”.
- This type of motion sickness is caused by a mixture of visual information received through the user's eyes and sensory information received through the vestibular organ (and semicircular canal) of the user's ears as the scene changes as the avatar moves in response to the user. This may be a symptom of a loss of balance.
- the vignetting function may be one of various ways to minimize (or eliminate) this motion sickness.
- the vignetting function may be a function that applies a vignetting effect (also referred to as a “tunnelling effect”) to the screen displayed through VR glasses.
- a vignetting effect also referred to as a “tunnelling effect”
- the vignetting function can minimize motion sickness by narrowing the user's viewing angle of the screen displayed through VR glasses.
- the vignetting function is performed without experiencing motion sickness (or when the user has adapted to the virtual environment), the user's immersion in VR content may be hindered.
- VR glasses can activate or deactivate the vignetting function for each application based on user input.
- the user may be inconvenienced in having to frequently input an input to activate or deactivate the vignetting function with VR glasses, whether the user is experiencing motion sickness or not experiencing motion sickness.
- an aspect of the present disclosure relates to a method of performing a vignetting function and a wearable electronic device supporting the same, which can provide a screen to which a changeable vignetting effect is applied based on the movement of an avatar corresponding to a user in virtual space.
- a wearable electronic device includes a display and at least one processor. At least one processor may be configured to execute a VR application. At least one processor may be configured to detect movement of an avatar corresponding to a user in a virtual space of VR content displayed while the VR application is running. At least one processor may be configured to display a screen of the VR content to which a changeable vignette effect is applied through the display based on detection of the movement of the avatar.
- a method of performing a vignetting function in a wearable electronic device includes executing a VR application.
- the method includes detecting movement of an avatar corresponding to a user in a virtual space of VR content displayed while the VR application is running.
- the method displays a screen of the VR content to which a changeable vignette effect is applied through the display of the wearable electronic device, based on detection of the movement of the avatar.
- a non-transitory computer-readable medium recording computer-executable instructions, wherein the computer-executable instructions, when executed, cause a wearable electronic device including at least one processor to be configured to execute a VR application.
- the computer-executable instructions may, when executed, configure a wearable electronic device including at least one processor to detect movement of an avatar corresponding to a user in a virtual space of VR content displayed while the VR application is running. there is.
- the computer-executable instructions when executed, cause a wearable electronic device including at least one processor to display a screen of the VR content to which a changeable vignette effect is applied through the display based on detection of movement of the avatar. It can be configured to do so.
- a method of performing a vignetting function and a wearable electronic device supporting the same provide a screen to which a changeable vignetting effect is applied based on the movement of an avatar corresponding to a user in a virtual space, thereby minimizing motion sickness and VR User immersion in content can be improved.
- FIG. 1 is a block diagram for explaining an electronic device, according to an embodiment.
- Figure 2 is a diagram showing the front of an electronic device, according to one embodiment.
- Figure 3 is a diagram showing the back of an electronic device, according to one embodiment.
- FIG. 4 is a flowchart illustrating a method of performing a vignetting function according to an embodiment.
- Figure 5 is an example diagram for explaining a vignetting effect according to an embodiment.
- FIG. 6 is a flowchart illustrating a method of changing a vignette area based on timer settings, according to an embodiment.
- FIG. 7 is an example diagram illustrating a method of changing a vignette area based on timer settings, according to an embodiment.
- FIG. 8 is a flowchart illustrating a method of setting a timer based on a change in virtual space, according to an embodiment.
- FIG. 9 is an example diagram illustrating a method of setting a timer based on a change in virtual space, according to an embodiment.
- FIG. 10 is a flowchart illustrating a method of determining a vignetting area based on a time set in a timer, according to an embodiment.
- FIG. 11 is a flowchart illustrating a method of determining a vignette area based on the moving speed of an avatar, according to an embodiment.
- FIG. 12 is a flowchart illustrating a method of applying a vignetting effect based on a user's movement, according to an embodiment.
- FIG. 13 is an example diagram illustrating a method of applying a vignetting effect based on the movement of an avatar in a designated range of virtual space, according to an embodiment.
- FIG. 14 is a flowchart illustrating a method of controlling the vignetting function based on the user's degree of motion sickness, according to an embodiment.
- Figure 15 is an example diagram for explaining a method of setting a vignetting function, according to an embodiment.
- FIG. 1 is a block diagram 100 for explaining an electronic device 101 according to an embodiment.
- the electronic device 101 may be a wearable electronic device that a user can wear on the head, such as AR glasses, VR glasses, and/or HMD devices.
- the electronic device 101 may also be called a wearable electronic device.
- Each of the external electronic devices 102 and 103 may be of the same or different type as the electronic device 101. According to one embodiment, all or part of the operations performed in the electronic device 101 may be executed in one or more external electronic devices (external electronic devices 102 and 103 or the server 108). For example, when the electronic device 101 needs 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 perform the function or service instead of executing the function or service on its own. Alternatively, or additionally, one or more external electronic devices may be requested to perform at least part of the function or service.
- One or more external electronic devices that have received the request may execute at least a portion 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 process the result as is or additionally and provide it as at least part of a response to the request.
- the external electronic device 102 may render content data executed in an application and then transmit it to the electronic device 101, and the electronic device 101 that receives the data outputs the content data to the display module. can do. If the electronic device 101 detects user movement through an IMU (inertial measurement unit) sensor, etc., the processor 120 of the electronic device 101 uses the rendering data received from the external electronic device 102 to convert the motion information into the motion information.
- IMU intial measurement unit
- the electronic device 101 may transmit the motion information to the external electronic device 102 and request rendering so that the screen data is updated accordingly.
- the external electronic device 102 may be various types of devices, such as a smartphone or a case device that can store and charge the electronic device 101.
- the electronic device 101 communicates with an external electronic device 102 through a first network 198 (e.g., a short-range wireless communication network) and/or through a second network 199 (e.g., a short-range wireless communication network). : It is possible to communicate with the external electronic device 103 or the server 108 through a long-distance wireless communication network). According to one embodiment, the electronic device 101 may communicate with another electronic device through the server 108.
- a first network 198 e.g., a short-range wireless communication network
- a second network 199 e.g., a short-range wireless communication network
- the electronic device 101 includes a processor 120, a memory 130, an input module 150, an audio output module 155, a display module 160, an audio module 170, and a sensor module ( 176), interface 177, connection terminal 178, haptic module 179, camera module 180, power management module and/or battery 189, communication module 190, or antenna module 197. It can contain at least one. In some embodiments, at least one of these components (eg, the connection terminal 178) may be omitted or one or more other components may be added to the electronic device 101. In some embodiments, some of these components (e.g., sensor module 176, camera module 180, or antenna module 197) are integrated into one component (e.g., display module 160). It can be.
- the processor 120 for example, executes software (e.g., program 140) to execute at least one other component (e.g., hardware) of the electronic device 101 connected to the processor 120. or software components) and perform various data processing or operations.
- processor 120 stores commands or data received from another component (e.g., sensor module 176 or communication module 190) in volatile memory. , commands or data stored in volatile memory can be processed, and the resulting data can be stored in non-volatile memory.
- the processor 120 is a main processor (e.g., a central processing unit or an application processor) or an auxiliary processor that can operate independently or together (e.g., a graphics processing unit, a neural processing unit (NPU)). , an image signal processor, a sensor hub processor, or a communication processor).
- a main processor e.g., a central processing unit or an application processor
- auxiliary processor e.g., a graphics processing unit, a neural processing unit (NPU)
- NPU neural processing unit
- the auxiliary processor may be set to use less power than the main processor or be specialized for a designated function.
- the auxiliary processor may be implemented separately from the main processor or as part of it.
- a coprocessor may, for example, act on behalf of the main processor while the main processor is in an inactive (e.g.
- an auxiliary processor e.g., neural network processing unit
- an auxiliary processor may include a hardware structure specialized for processing artificial intelligence models. Artificial intelligence models can be created through machine learning.
- Such learning may be performed in the electronic device 101 itself, where artificial intelligence is performed, or may be performed through a separate server (e.g., server 108).
- Learning algorithms may include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but It is not limited.
- An artificial intelligence model may include multiple artificial neural network layers. Artificial neural networks include deep neural network (DNN), convolutional neural network (CNN), recurrent neural network (RNN), restricted boltzmann machine (RBM), belief deep network (DBN), bidirectional recurrent deep neural network (BRDNN), It may be one of deep Q-networks or a combination of two or more of the above, but is not limited to the examples described above.
- artificial intelligence models may additionally or alternatively include software structures.
- the memory 130 may store various data used by at least one component (eg, the processor 120 or the sensor module 176) of the electronic device 101.
- Data may include, for example, input data or output data for software (e.g., program 140) and instructions related thereto.
- Memory 130 may include volatile memory or non-volatile memory.
- the program 140 may be stored as software in the memory 130 and may include, for example, an operating system 142, middleware 144, or application 146.
- the input module 150 may receive commands or data to be used in a component of the electronic device 101 (e.g., the processor 120) from outside the electronic device 101 (e.g., a user). You can.
- the input module 150 may include, but is not limited to, a microphone, buttons, and/or a touch pad.
- the audio output module 155 may output an audio signal to the outside of the electronic device 101.
- the sound output module 155 may include, for example, a speaker. Speakers can be used for general purposes such as multimedia playback or recording playback.
- the display module 160 may visually provide information to the outside of the electronic device 101 (eg, a user).
- the display module 160 may be, for example, a liquid crystal display (LCD) or a digital mirror device (DMD).
- LCD liquid crystal on silicon
- LED light emitting diode
- OLED organic light emitting diode
- micro LED micro light emitting diode
- the display module 160 may have different implementation forms depending on the type of electronic device 101.
- the audio module 170 may convert sound into an electrical signal or, conversely, convert an electrical signal into sound.
- the audio module 170 acquires sound through the input module 150, the sound output module 155, or an external electronic device (e.g., directly or wirelessly connected to the electronic device 101). Sound can be output through an external electronic device 102 (e.g., speaker or headphone).
- the external electronic device 102 may be, for example, a mobile device such as a smart phone or tablet PC, but is not limited thereto.
- the sensor module 176 detects the operating state (e.g., power or temperature) of the electronic device 101 or the external environmental state (e.g., user state) and generates electricity corresponding to the detected state. It can generate signals or data values.
- the sensor module 176 includes, for example, a gesture sensor, a gyro sensor, an air pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, It may include a temperature sensor, a humidity sensor, and/or an illumination sensor.
- the interface 177 may support one or more designated protocols that can be used to directly or wirelessly connect the electronic device 101 to an external electronic device (eg, the external electronic device 102).
- the interface 177 may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.
- HDMI high definition multimedia interface
- USB universal serial bus
- SD card interface Secure Digital Card interface
- audio interface audio interface
- connection terminal 178 may include a connector through which the electronic device 101 can be physically connected to an external electronic device (eg, the external electronic device 102).
- the connection terminal 178 may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (eg, a headphone connector).
- the haptic module 179 may convert electrical signals into mechanical stimulation (eg, vibration or movement) or electrical stimulation that the user can perceive through tactile or kinesthetic senses.
- the haptic module 179 may include, for example, a motor, a piezoelectric element, or an electrical stimulation device.
- the camera module 180 can capture still images and moving images.
- the camera module 180 may include one or more lenses, image sensors, image signal processors, or flashes.
- the power management module and/or battery 189 may manage power supplied to the electronic device 101.
- the power management module and/or battery 189 may be implemented as at least a part of, for example, a power management integrated circuit (PMIC).
- Power management module and/or battery 189 may supply power to at least one component of electronic device 101 .
- the power management module and/or battery 189 may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.
- the communication module 190 may be directly (e.g., wired) between the electronic device 101 and an external electronic device (e.g., external electronic device 102, external electronic device 103, or server 108). ) Can support the establishment of a communication channel or wireless communication channel and the performance of communication through the established communication channel.
- Communication module 190 operates independently of processor 120 (e.g., an application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication.
- the communication module 190 is a wireless communication module (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module (e.g., a local area network (LAN) ) may include a communication module, or a power line communication module).
- a wireless communication module e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module
- GNSS global navigation satellite system
- a wired communication module e.g., a local area network (LAN)
- LAN local area network
- the corresponding communication module is 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., legacy It may communicate with external electronic devices 102 and 103 through a telecommunication network such as a cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., LAN or WAN).
- a telecommunication network such as a cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., LAN or WAN).
- a telecommunication network such as a cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., LAN or WAN).
- a telecommunication network such as a cellular network, a 5G network, a next-generation
- the wireless communication module uses subscriber information (e.g., International Mobile Subscriber Identifier (IMSI)) stored in the subscriber identification module to connect the electronic device 101 within a communication network such as the first network 198 or the second network 199. Can be confirmed or authenticated.
- subscriber information e.g., International Mobile Subscriber Identifier (IMSI)
- IMSI International Mobile Subscriber Identifier
- the wireless communication module may support 5G networks after the 4G network and next-generation communication technologies, for example, NR access technology (new radio access technology).
- NR access technology provides high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and access to multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low latency).
- eMBB enhanced mobile broadband
- mMTC massive machine type communications
- URLLC ultra-reliable and low latency
- -latency communications can be supported.
- the wireless communication module may support high frequency bands (e.g., mmWave bands), for example, to achieve high data rates.
- Wireless communication modules use various technologies to secure performance in high frequency bands, such as beamforming, massive MIMO (multiple-input and multiple-output), and full-dimensional multiple input/output (FD).
- -It can support technologies such as full dimensional MIMO (MIMO), array antenna, analog beam-forming, or large scale antenna.
- the wireless communication module may support various requirements specified in the electronic device 101, an external electronic device (e.g., external electronic device 103), or a network system (e.g., second network 199).
- the wireless communication module has Peak data rate (e.g., 20Gbps or more) for realizing eMBB, loss coverage (e.g., 164dB or less) for realizing mMTC, or U-plane latency (e.g., downtime) for realizing URLLC.
- Peak data rate e.g., 20Gbps or more
- loss coverage e.g., 164dB or less
- U-plane latency e.g., downtime
- Link (DL) and uplink (UL) each of 0.5 ms or less, or round trip 1 ms or less
- SA standalone
- the electronic device 101 may be implemented not to support cellular communication such as 4G or 5G.
- the electronic device 101 uses the first network 198 to connect to an external network that supports cellular communication.
- the Internet may be used via the electronic device 102, and in this case, the electronic device 101 may be referred to as a non-standalone type electronic device.
- the antenna module 197 may transmit a signal or power to or receive a signal or power from the outside (eg, an external electronic device).
- the antenna module 197 may include an antenna including a radiator made of a conductor or a conductive pattern formed on a substrate (eg, PCB).
- the antenna module 197 may include a plurality of antennas (eg, 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 is connected to the plurality of antennas by, for example, the communication module 190. can be selected. Signals or power may be transmitted or received between the communication module 190 and an external electronic device through the at least one selected antenna.
- other components eg, radio frequency integrated circuit (RFIC) may be additionally formed as part of the antenna module 197.
- RFIC radio frequency integrated circuit
- the antenna module 197 may form a mmWave antenna module.
- a mmWave antenna module includes: a printed circuit board, an RFIC disposed on or adjacent to a first side (e.g., bottom side) of the printed circuit board and capable of supporting a designated high frequency band (e.g., mmWave band); And a plurality of antennas (e.g., array antennas) disposed on or adjacent to the second side (e.g., top or side) of the printed circuit board and capable of transmitting or receiving signals in the designated high frequency band. can do.
- a mmWave antenna module includes: a printed circuit board, an RFIC disposed on or adjacent to a first side (e.g., bottom side) of the printed circuit board and capable of supporting a designated high frequency band (e.g., mmWave band); And a plurality of antennas (e.g., array antennas) disposed on or adjacent to the second side (e.g., top or side)
- peripheral devices e.g., bus, general purpose input and output (GPIO), serial peripheral interface (SPI), or mobile industry processor interface (MIPI)
- signal e.g. commands or data
- commands or data may be transmitted or received between the electronic device 101 and the external electronic device 103 through the server 108 connected to the second network 199.
- Each of the external electronic devices 102 and 103 may be of the same or different type as the electronic device 101.
- all or part of the operations executed in the electronic device 101 may be executed in one or more external electronic devices (external electronic devices 102, 103, or server 108). there is.
- the electronic device 101 may perform the function or service instead of executing the function or service on its own.
- one or more external electronic devices may be requested to perform at least part of the function or service.
- One or more external electronic devices that have received the request may execute at least 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 process the result as is or additionally and provide it as at least part of a response to the request.
- cloud computing distributed computing, mobile edge computing (MEC), or client-server computing technology can be used.
- the electronic device 101 may provide an ultra-low latency service using, for example, distributed computing or mobile edge computing.
- the external electronic device 103 may include an Internet of Things (IoT) device.
- Server 108 may be an intelligent server using machine learning and/or neural networks.
- the external electronic device 103 or server 108 may be included in the second network 199.
- the electronic device 101 may be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.
- FIG. 2 is a diagram showing the front of the electronic device 101, according to one embodiment.
- FIG. 3 is a diagram illustrating the rear of the electronic device 101, according to one embodiment.
- a VST camera module 211, 212 for video see through (VST), a plurality of camera modules 213, 214, on the first side 210 of the housing. 215, 216), and/or a depth sensor 217 may be disposed.
- a VST camera module 211, 212, a plurality of camera modules 213, 214, 215, 216, and/or a depth sensor 217 are connected through an opening formed in the first surface 210 of the housing. may be exposed.
- the VST camera modules 211 and 212 may acquire images related to the environment surrounding the electronic device. Images acquired by the VST camera modules 211 and 212 may be provided to the user as at least part of VST content.
- the plurality of camera modules 213, 214, 215, and 216 may acquire images while the electronic device is worn by the user. Images acquired through a plurality of camera modules 213, 214, 215, and 216 may be used for simultaneous localization and mapping (SLAM), 6 degrees of freedom (6DoF), subject recognition, and/or tracking.
- the depth sensor 217 may be used to determine the distance to an object, such as time of flight (TOF). Instead of or additionally to the depth sensor 217, a plurality of camera modules 213, 214, 215, and 216 may check the distance to the object.
- TOF time of flight
- camera modules 215 and 216 and/or a display 221 (and/or lens) for face recognition may be disposed on the second surface 220 of the housing.
- the face recognition camera modules 225 and 226 may be used to recognize the user's face.
- the display 221 (and/or the lens) may be disposed on the second side 220 of the electronic device 101 facing the user's face while the electronic device 101 is worn on the user's face. You can. In one embodiment, the display 221 (and/or lens) may display a screen containing various information while the electronic device 101 is worn by the user.
- the electronic device 101 may further include one or more components.
- the electronic device 101 may further include a proximity sensor, a touch sensor, and/or a pressure sensor to detect that the electronic device is worn on a user (eg, the user's face).
- the electronic device 101 may further include a fingerprint sensor (optical or ultrasonic fingerprint sensor).
- the electronic device 101 may further include at least one key (or button).
- the electronic device 101 may not include some of the configurations shown in FIGS. 2 and 3 .
- the electronic device 101 may not include the camera modules 215 and 216 among the plurality of camera modules 213, 214, 215, and 216.
- the electronic device 101 may further include at least one of the components of the electronic device 101 shown in FIG. 1 .
- FIGS. 2 and 3 illustrate the electronic device 101 using the VST method, but the method is not limited thereto.
- the operation of performing the vignetting function to be described below includes providing VR content. This can be applied to any wearable electronic device.
- the operation of performing the vignetting function described below may be applied to a VR electronic device that does not include the VST camera modules 211 and 212 for VST. Additionally, the operation of performing the vignetting function described below can be applied to AR glasses.
- the wearable electronic device 101 may include a display 221 and at least one processor 120. At least one processor 120 may be configured to execute a VR application. At least one processor 120 may be configured to detect movement of an avatar corresponding to a user in the virtual space of VR content displayed while the VR application is running. At least one processor 120 may be configured to display a screen of the VR content to which a changeable vignette effect is applied through the display 221 based on detection of the movement of the avatar.
- the at least one processor 120 starts counting the time set in a timer, and applies the vignette effect to the screen of the VR content while performing the counting. It can be configured.
- the at least one processor 120 may be configured to gradually reduce the vignetting area to which the vignetting effect is applied within the screen while performing the counting.
- the at least one processor 120 determines whether the virtual space changes from a first virtual space to a second virtual space, and whether the virtual space changes from the first virtual space to the second virtual space. Based on confirmation of the change to , the timer may be configured to initialize.
- the at least one processor 120 classifies the time set in the timer into a plurality of time sections, checks the time section to which the time currently set in the timer belongs among the plurality of time sections, and , and may be configured to apply the vignetting effect to a vignetting area with a size corresponding to the identified time interval.
- the at least one processor 120 determines a speed at which the avatar moves within the virtual space, and based on the determined speed, a vignetting area within the screen to which the vignetting effect is applied. It can be configured to determine .
- the wearable electronic device 101 further includes a sensor, and the at least one processor 120 detects the user's movement through the sensor, and the movement of the avatar corresponds to the user's movement. and configured to apply the vignetting effect based on checking whether the movement of the avatar does not correspond to the movement of the user, and when the movement of the avatar corresponds to the movement of the user. The vignetting effect may not be applied.
- the at least one processor 120 determines whether the movement of the avatar occurs within a specified range of the virtual space, and the movement of the avatar causes the avatar to move to the virtual space. It is configured to apply the vignetting effect based on confirmation that the avatar moves outside the designated range, and if the movement of the avatar occurs within the designated range of the virtual space, the vignetting effect may not be applied.
- the at least one processor 120 acquires a biosignal of the user, determines the degree of motion sickness of the user based on the biosignal, and determines the degree of motion sickness of the user based on the degree of motion sickness of the user, Can be configured to control the vignetting function.
- the at least one processor 120 may move the avatar by a controller or by a virtual movement means that the avatar rides in the virtual space.
- FIG. 4 is a flowchart 400 illustrating a method of performing a vignetting function according to an embodiment.
- FIG. 5 is an example diagram 500 for explaining a vignetting effect according to an embodiment.
- processor 120 may execute a VR application.
- a VR application may include a game application or video application that can provide VR content provided in a virtual space of a virtual environment (also referred to as a “virtual world”).
- VR applications are not limited to the aforementioned game applications and video applications.
- VR content is a scene viewed from the perspective of an avatar (or character) corresponding to the user (hereinafter, the avatar corresponding to the user is referred to as “avatar corresponding to the user” or “avatar”) in a virtual space. It can contain content that can be displayed.
- VR content may include content that can represent a scene from a first-person perspective corresponding to the direction in which the electronic device 101 is facing (or the user's gaze).
- a first-person perspective scene may not include an avatar corresponding to a user, or may include a part of the avatar's body (eg, an avatar's hand) or an item worn by the avatar.
- the processor 120 may execute a vignette function when a VR application is executed. For example, if the processor 120 is set to execute the vignetting function when executing the VR application, the processor 120 activates (or activates) the vignetting function (also referred to as the “motion sickness reduction function”) based on executing the VR application. It can be turned on.
- the processor 120 activates (or activates) the vignetting function (also referred to as the “motion sickness reduction function”) based on executing the VR application. It can be turned on.
- the vignetting function may be a function that applies a vignetting effect (also referred to as a “tunnelling effect”) to the screen of VR content.
- a vignetting effect also referred to as a “tunnelling effect”
- the vignetting function may be a function that narrows the field of view (or viewing angle) that a user can see on the screen of VR content.
- the vignetting function may be a function that darkens the outer (or edge) portion of the screen of VR content.
- image 510 may represent a screen before a vignette effect is applied
- image 520 may represent a screen after a vignette effect is applied.
- the area 511 including the center of the image 520 may be expressed as the same as the area of the corresponding image 510.
- the area 512 corresponding to the edge of the image 520 may be expressed darkly.
- the processor 120 may detect movement of an avatar corresponding to the user in the virtual space of VR content displayed while the VR application is running.
- an avatar corresponding to a user may be moved in the virtual space of VR content. For example, the location of the avatar corresponding to the user on a virtual map representing the virtual space of VR content may be changed.
- the processor 120 displays a display through the electronic device 101 based on input to a controller (e.g., joystick, keyboard, mouse) connected wirelessly (or wired) to the electronic device 101.
- a controller e.g., joystick, keyboard, mouse
- the avatar corresponding to the user can be moved in the virtual space of the VR content.
- the processor 120 operates on the electronic device 101 based on an input to the input module 150 (e.g., touch pad, key, button) included in the electronic device 101. 101), the avatar corresponding to the user can be moved in the virtual space of the displayed VR content.
- the input module 150 e.g., touch pad, key, button
- the processor 120 may move the avatar corresponding to the user by moving an object expressed in the virtual space of VR content.
- an avatar corresponding to a user can ride a virtual vehicle (e.g., virtual vehicle, virtual airplane, virtual roller coaster) that can move the avatar (or an object representing a virtual vehicle). there is.
- the processor 120 may move the avatar riding the virtual transportation device together with the virtual transportation device.
- the method of moving the avatar is not limited to the above examples. Additionally, the examples of moving the avatar described above may be examples of moving the avatar corresponding to the user in the virtual space of VR content without the user actually moving (eg, without changing the user's location).
- the processor 120 may update the location of the avatar corresponding to the user on a virtual map corresponding to the virtual space when the avatar corresponding to the user moves.
- the processor 120 may display a screen of VR content to which a changeable vignette effect is applied through the display 221, based on detection of the movement of the avatar corresponding to the user. .
- the processor 120 may apply a changeable vignette effect to the screen of VR content to be displayed through the display 221 while the movement of the avatar corresponding to the user is detected. For example, when an input for moving the avatar corresponding to the user is obtained, the processor 120 creates a changeable vignette effect on the screen showing the movement of the avatar corresponding to the user to be displayed through the display 221. It can be applied. For example, the processor 120 may apply a changeable vignette effect to the screen of VR content to be displayed through the display 221 every time the movement of the avatar corresponding to the user is detected. However, it is not limited to this.
- the processor 120 displays the image through the display 221, regardless of the movement of the avatar corresponding to the user, for a specified time or until the VR application is terminated.
- a changeable vignette effect can also be applied to the VR content to be displayed.
- the processor 120 may apply a changeable vignette effect to the screen of VR content to be displayed through the display 221.
- the processor 120 may change the time at which a vignetting effect is applied to VR content and/or the vignetting area (eg, the size of the vignetting area) to which the vignetting effect is applied.
- the vignetting area eg, the size of the vignetting area
- FIG. 6 is a flowchart 600 illustrating a method of changing a vignette area based on timer settings, according to an embodiment.
- FIG. 7 is an example diagram 700 for explaining a method of changing a vignette area based on timer settings, according to an embodiment.
- processor 120 may execute a VR application.
- operation 601 is at least partially the same or similar to operation 401 of FIG. 4, a detailed description thereof will be omitted.
- the processor 120 may start counting the time set in a timer.
- the processor 120 when the VR application is executed while the vignetting function is activated for the VR application, the processor 120 operates for a time set in a timer from the time the VR application is executed (e.g., a time set for the vignetting function to be performed). An operation of counting the initial setting time) (hereinafter also referred to as “the initial setting time of the timer”) may be started. In one embodiment, when the vignetting function is activated after the VR application is executed, the processor 120 may start counting the time set in the timer from the time the vignetting function is activated.
- the processor 120 counts the time set in the timer from the time when the movement of the avatar corresponding to the user in the virtual space of the VR content is first detected while the VR application is running and the vignette function is activated. You can start moving. For example, in FIG. 6, after starting counting the time set in the timer in operation 603, the operation of detecting the movement of the avatar corresponding to the user in the virtual space of the VR content in operation 605 is exemplified, but is not limited to this. In response to the first detection of movement of the avatar corresponding to the user in the virtual space of VR content, the processor 120 may start counting the time set in the timer.
- the processor 120 may set the initial setting time of the timer based on user input. For example, the processor 120 may set the time for the timer to count to 1000 seconds based on a user input of the initial setting time of the timer, such as 1000 seconds. For example, the processor 120 may determine the intensities (or vignetting) to which the vignetting function is applied, such as strong (e.g., 1500 seconds), medium (e.g., 1000 seconds), and light (e.g., 500 seconds).
- strong e.g. 1500 seconds
- medium e.g., 1000 seconds
- light e.g., 500 seconds
- the time for the timer to count (e.g., the time at which the vignette function will be performed if “strong” is selected), based on user input that selects the intensity of one of the information (or icons) indicating the times at which the function will be performed. (set to 1500 seconds).
- the method of setting the initial setting time of the timer is not limited to the above-described examples.
- the processor 120 may detect movement of an avatar corresponding to the user in the virtual space of VR content displayed while the VR application is running.
- operation 605 is at least partially the same or similar to operation 403 of FIG. 4, descriptions overlapping with operation 403 will be omitted.
- the processor 120 may count the time set in the timer during which the movement of the avatar corresponding to the user is detected in the virtual space of VR content. For example, the processor 120 counts the time set in the timer every time (e.g., every time) the movement of the avatar corresponding to the user is detected in the virtual space of VR content, and when the movement of the avatar is not detected, the processor 120 counts the time set in the timer. You can stop (e.g. pause) the counting operation for the time set in the timer during the non-stop time.
- the processor 120 stops counting the time set in the timer (e.g., the remaining time to be counted by the timer) (hereinafter, the remaining time to be counted by the timer is also referred to as “the time currently set in the timer”). , when the movement of the avatar is detected, the stopped counting operation can be performed again from the time when the movement of the avatar is detected. For example, if the movement of the avatar is detected after the timer is paused when 100 seconds have elapsed for a timer with an initial set time of 1000 seconds, the processor 120 detects the movement of the avatar at 900 seconds from the time the movement of the avatar is detected. You can start counting operation. However, it is not limited to this, and in one embodiment, the processor 120 may continuously perform a counting operation for the time set in the timer, regardless of the movement of the avatar corresponding to the user in the virtual space of VR content. .
- the processor 120 determines, via the display 221, the passage of time counted from the time set in the timer (e.g., as a counting operation for the time set in the timer is performed).
- a VR content screen with a reduced vignetting area can be displayed.
- the processor 120 gradually controls the screen of the VR content as a counting operation for the time set in the timer is performed (e.g., as the time for which the vignetting effect is applied to the screen of the VR content passes).
- the vignetting area applied can be reduced.
- the processor 120 is outside the first line 721 and the screen 710 of the VR content at the first time to start counting the time set in the timer (the initial setting time of the timer). ) can be determined as the vignetting area.
- the processor 120 gradually (or sequentially), at a second time point after the first time point and at a third time point after the second time point, respectively, the second line 722
- the area where the outside of the VR content screen 710 overlaps and the area where the outside of the third line 723 overlaps with the VR content screen 710 may be determined as the vignetting area.
- the lines used to determine the vignetting area e.g., the first line 721, the second line 722, and the third line 723 are illustrated as having a circular shape, but are not limited thereto. and can be implemented in various forms.
- the processor 120 gradually reduces the vignetting area as the counting operation for the time set in the timer is performed (e.g., as the time for which the vignetting effect is applied to the screen of VR content passes).
- the screen of the applied VR content can be displayed through the display 221.
- the processor 120 sets the rate at which the vignette area is reduced (e.g., the amount of reduction of the size (or area) of the vignette area per time) according to the time (e.g., time length) set in the timer ( or adjustment) can be made. For example, if a first initial setting time (e.g., 1000 seconds) is set in the timer, the processor 120 reduces the vignetting area at the first rate while counting for the first initial time is performed, and sets the timer to 1000 seconds.
- a first initial setting time e.g., 1000 seconds
- the vignetting area is reduced while counting the time set in the timer so that it is reduced to a second speed that is faster than the first speed. You can set the speed.
- the processor 120 may end the vignetting operation on the screen of VR content when the timer expires (eg, when counting for the time set in the timer is completed). For example, when the timer expires, the processor 120 may end the vignetting operation on the screen of the VR content even if the movement of the avatar corresponding to the user is detected in the virtual space of the VR content. In one embodiment, even if the user experiences motion sickness due to the avatar corresponding to the user moving in the virtual space of the VR content, the user may not enter the VR content after a certain period of time (e.g., the time set in the timer) has elapsed. You can adapt.
- a certain period of time e.g., the time set in the timer
- the processor 120 may end the vignetting operation on the screen of the VR content even if the movement of the avatar corresponding to the user is detected in the virtual space of the VR content.
- the processor 120 may end the vignetting operation on the screen of the VR content even if the movement of the avatar corresponding to the user is detected in the virtual space of the VR content.
- FIG. 8 is a flowchart 800 illustrating a method of setting a timer based on a change in virtual space, according to an embodiment.
- FIG. 9 is an example diagram 900 for explaining a method of setting a timer based on a change in virtual space, according to an embodiment.
- processor 120 may execute a VR application.
- operation 801 is at least partially the same or similar to operation 401 of FIG. 4, detailed description will be omitted.
- processor 120 may begin counting the time set in the timer. For example, the processor 120 may set the initial setting time of the timer to 1000 seconds.
- operation 803 is at least partially the same or similar to operation 603 of FIG. 6, detailed description will be omitted.
- processor 120 may detect movement of an avatar corresponding to a user in the virtual space of VR content displayed while a VR application is running.
- operation 805 is at least partially the same or similar to operation 605 of FIG. 6, a detailed description thereof will be omitted.
- the processor 120 through the display 221, displays a screen of VR content with a changeable vignette effect applied according to the passage of time (pass of time) counted from the time set in the timer. can be displayed.
- operation 807 is at least partially the same or similar to operation 405 of FIG. 4, a detailed description thereof will be omitted.
- processor 120 may determine whether the virtual space of the VR content has changed.
- the processor 120 may change the virtual space in which the avatar is located from the first virtual space to the second virtual space based on the movement of the avatar corresponding to the user. For example, in FIG. 9, the processor 120 changes the virtual space where the avatar is located by moving the avatar corresponding to the user from the first virtual space representing the interior, such as the screen 910, to the screen 920. ) can be changed to a second virtual space representing the outdoors.
- the processor 120 may check whether the virtual space of VR content changes based on the movement of the avatar corresponding to the user.
- the processor 120 may change the virtual space of the VR content according to changes in the scene, stage, or scenario within the VR content (e.g., VR game). .
- processor 120 may determine whether the virtual space of the VR content changes based on changes to the scene, stage, or scenario within the VR content.
- the processor 120 may cause the virtual space in which the avatar is located to instantly change from a first virtual space to a second virtual space based on a user input.
- the change in virtual space described above may include a sudden (or instantaneous) change in the position of an avatar corresponding to the user and/or in the virtual space seen from the avatar's perspective.
- the processor 120 may initialize a timer.
- the processor 120 sets a timer when it is confirmed that the virtual space of the VR content has changed (e.g., when it is confirmed that the avatar corresponding to the user is located in a different virtual space from the previous virtual space). You can change the time from the time currently set in the timer (e.g., the time remaining for the timer to count) to the timer's initial set time (e.g., reset the timer). For example, if the initial setting time of the timer is 1000 seconds and the current setting time of the timer is 995 seconds, the processor 120 may set the timer setting time to the initial setting time of 1000 seconds.
- the processor 120 may perform operation 803 after initializing the timer. For example, the processor 120 may initialize the timer and then restart counting the time set in the timer.
- the processor 120 may check whether the timer expires.
- processor 120 may perform operation 805. For example, if the timer has not expired, the processor 120 may detect the movement of the avatar corresponding to the user in the virtual space of the VR content while the timer is counting the currently set time.
- the processor 120 when the processor 120 confirms that the changed virtual space of the VR content is the first virtual space in which the avatar corresponding to the user was previously located, the processor 120
- the time set in the timer at the first time when the virtual space was changed to a different virtual space can be set as the time of the timer (e.g., the remaining time for the timer to count).
- the time set on the timer at the first time when the avatar corresponding to the user moves from the first virtual space to the second virtual space may be 300 seconds.
- the processor 120 sets the remaining time of 300 seconds set in the timer at the time of moving from the first virtual space to the second virtual space. You can set the timer to count.
- the processor 120 determines that the changed virtual space of the VR content is the first virtual space in which the avatar corresponding to the user was previously located, and moves from the first virtual space to a virtual space different from the virtual space. If the virtual space is changed back to the first virtual space after a designated time has elapsed from the first point in time at which it was changed, the time of the timer can be set to the initial setting time of the timer (e.g., initializing the timer).
- the processor 120 determines that the changed virtual space of the VR content is the first virtual space in which the avatar corresponding to the user was previously located, and moves from the first virtual space to a virtual space different from the virtual space. If the virtual space is changed back to the first virtual space before the specified time has elapsed from the first point in time at which it was changed, the time set in the timer at the time when it was previously changed from the first virtual space to a virtual space different from the first virtual space , can be set to the timer time.
- FIG. 10 is a flowchart 1000 illustrating a method of determining a vignetting area based on a time set in a timer, according to an embodiment.
- processor 120 may initialize a timer. For example, when the processor 120 displays VR content by executing a VR application or when the virtual space changes as described above, the processor 120 sets the timer to perform the vignetting function (e.g., the initial setting time of the timer). can be set.
- the processor 120 sets the timer to perform the vignetting function (e.g., the initial setting time of the timer). can be set.
- the processor 120 may start counting the time set in the timer while movement of the avatar corresponding to the user is detected in the virtual space of the VR content.
- the present invention is not limited to this, and the processor 120 may continuously count the time set in the timer even when no movement of the avatar corresponding to the user is detected in the virtual space of the VR content.
- processor 120 may determine a vignetting area based on the current time set in the timer.
- the processor 120 may determine the vignetting area based on the time interval to which the current time set in the timer belongs.
- the processor 120 may classify the initial setting time of the timer into a plurality of time sections. For example, if the initial setting time of the timer is 1000 seconds, the processor 120 may classify 1000 seconds into ten 100-second time sections.
- the processor 120 displays a vignetting area with a size of the vignetting area (or ratio of the vignetting area to the screen) corresponding to the time interval to which the current time set in the timer belongs, through the display 221. You can decide what to apply to the screen. For example, if the initial setting time of the timer is 1000 seconds, which is divided into ten 100-second time sections, the processor 120 determines that the currently set time set in the timer is the first time section (e.g., a time period of 900 seconds to 1000 seconds).
- the ratio of the vignetting area e.g., the area of the vignetting area
- the screen e.g., the area of the screen
- the ratio of the vignetting area e.g., the area of the vignette area
- the screen e.g., the area of the screen
- the processor 120 sets the ratio of the vignetting area (e.g., the area of the vignette area) to the screen (e.g., the area of the screen) to be about 30% when it corresponds to the third time period (e.g., a time period of 700 seconds to 800 seconds). It is possible to determine whether to apply the in-vignetting area to the screen to be displayed through the display 221.
- the third time period e.g., a time period of 700 seconds to 800 seconds.
- the processor 120 checks the time section to which the current time set in the timer belongs as the time set in the timer passes, and the size of the vignette area corresponding to the confirmed time section (or It may be determined whether to apply a vignetting area whose ratio (ratio of the vignetting area to the screen) is reduced to the screen to be displayed through the display 221 .
- the processor 120 may apply a vignetting effect to the screen of VR content to be displayed through the display 221, based on the determined vignetting area.
- the processor 120 may display a screen of VR content to which a vignette effect is applied through the display 221.
- FIG. 11 is a flowchart 1100 illustrating a method of determining a vignette area based on the movement speed of an avatar, according to an embodiment.
- the processor 120 may determine the movement speed of an avatar corresponding to a user in a virtual space of VR content.
- the processor 120 based on input to a controller (e.g., joystick, keyboard, mouse) (or input module) connected wirelessly (or wired) with the electronic device 101, 101), the avatar corresponding to the user can be moved in the virtual space of the displayed VR content.
- the processor 120 may move the avatar corresponding to the user at different speeds within the virtual space according to the input. For example, the processor 120 may move the avatar corresponding to the user at a first speed within the virtual space based on the first input to the controller.
- the processor 120 may move the avatar corresponding to the user within the virtual space at a second speed that is faster (or slower) than the first speed, based on the second input to the controller.
- the processor 120 may determine the movement speed of the avatar corresponding to the user in the virtual space (eg, the speed at which the avatar's position changes).
- the processor 120 may move the avatar corresponding to the user by moving an object in the virtual space of VR content.
- a virtual transportation means eg, a virtual vehicle, a virtual airplane, a virtual roller coaster
- the processor 120 may move the avatar riding the commercial virtual transportation device together with the virtual transportation device.
- the processor 120 may determine the movement speed of the virtual means of transportation on which the avatar rides and the movement speed of the avatar corresponding to the user in the virtual space of VR content.
- the processor 120 may determine the movement speed of an avatar corresponding to a user in a virtual space based on the virtual movement means and/or an input for moving the avatar.
- processor 120 may determine a vignette area (e.g., size of the vignette area) based on the avatar's movement speed.
- the processor 120 may determine the vignette area based on the speed range within which the movement speed of the avatar corresponding to the user falls. For example, when the movement speed of the avatar corresponding to the user is within the first speed range, the processor 120 may determine the vignetting area so that the ratio of the vignetting area to the screen is about 80%. If the movement speed of the avatar corresponding to the user is included in a second speed range (e.g., a second speed range in which the maximum speed of the second speed range is smaller than the minimum speed of the first speed range), The vignetting area can be determined so that the ratio of the vignetting area to the screen is about 50%.
- a second speed range e.g., a second speed range in which the maximum speed of the second speed range is smaller than the minimum speed of the first speed range
- the processor 120 may increase or decrease the size of the vignette area based on the movement speed of the avatar corresponding to the user. For example, the processor 120 may increase the size of the vignette area when the movement speed of the avatar corresponding to the user increases. For example, the processor 120 may reduce the vignette area when the movement speed of the avatar corresponding to the user decreases.
- the processor 120 may determine the size of the vignette area based on whether the movement speed of the avatar corresponding to the user is greater than or equal to a specified speed. For example, when the movement speed of the avatar corresponding to the user is greater than or equal to a specified speed, the processor 120 may determine the vignetting area so that the ratio of the vignetting area to the screen is about 80%. When the movement speed of the avatar corresponding to the user is less than a specified speed, the processor 120 may determine the vignetting area so that the ratio of the vignetting area to the screen is about 50%.
- the processor 120 may determine whether to apply a vignette effect based on the movement speed of the avatar corresponding to the user. For example, the processor 120 may determine to apply a vignette effect to the screen when the movement speed of the avatar corresponding to the user is greater than or equal to a specified speed. The processor 120 may determine not to apply a vignetting effect to the screen when the movement speed of the avatar corresponding to the user is less than a specified speed.
- the processor 120 may determine the vignette area so that the size of the vignette area increases or decreases in proportion to an increase or decrease in the movement speed of the avatar corresponding to the user.
- the processor 120 may apply a vignetting effect to the screen of VR content to be displayed through the display 221, based on the determined vignetting area.
- the processor 120 may display a screen of VR content to which a vignette effect is applied through the display 221.
- FIG. 12 is a flowchart 1200 illustrating a method of applying a vignetting effect based on a user's movement, according to an embodiment.
- the processor 120 may check whether the movement of the avatar corresponding to the user corresponds to the user's movement.
- the processor 120 displays a display through the electronic device 101 based on input to a controller (e.g., joystick, keyboard, mouse) connected wirelessly (or wired) to the electronic device 101.
- a controller e.g., joystick, keyboard, mouse
- the avatar corresponding to the user can be moved in the virtual space of the VR content.
- the processor 120 operates the electronic device 101 based on an input to an input module (e.g., touch pad, key, button) included in the electronic device 101.
- an input module e.g., touch pad, key, button
- the avatar corresponding to the user can be moved in the virtual space of the VR content displayed through the virtual space.
- the processor 120 may move the avatar corresponding to the user by moving an object in the virtual space of VR content.
- an avatar corresponding to a user can ride a virtual transportation means (eg, a virtual vehicle, a virtual airplane, a virtual roller coaster) that can move the avatar.
- a virtual transportation means eg, a virtual vehicle, a virtual airplane, a virtual roller coaster
- the processor 120 may move the avatar riding the virtual transportation device together with the virtual transportation device.
- the examples of moving the avatar described above may be examples of moving the avatar corresponding to the user in the virtual space of VR content without the user performing an actual movement action (e.g., without changing the user's location). .
- the processor 120 may detect the movement of the electronic device 101 corresponding to the user's movement through a sensor (eg, a sensor supporting 6 degree of freedom (DOF)). For example, when the user's location changes, the processor 120 may confirm that the location of the electronic device 101 worn by the user changes through the sensor.
- a sensor eg, a sensor supporting 6 degree of freedom (DOF)
- the processor 120 may detect the user's movement to move an avatar corresponding to the user through an external sensor.
- the user may wear the electronic device 101 on the head and have an external sensor (and the user VR shoes (or VR boots) that include motorized wheels that rotate to keep the user in place while performing walking movements can be worn on the feet (or legs).
- the processor 120 may receive information about the user's walking motion from an external sensor included in the VR shoes through the communication module 190 while VR content is provided.
- the processor 120 may move the avatar corresponding to the user corresponding to the user's walking motion, based on the information. For example, when a user uses VR content on a VR treadmill, the processor 120 may move an avatar corresponding to the user based on the user's movement on the VR treadmill.
- the processor 120 may move an avatar corresponding to the user in the virtual space of VR content based on the movement of the electronic device 101 corresponding to the user's movement. For example, the processor 120 may move the avatar corresponding to the user in a direction and/distance corresponding to the direction and/distance in which the electronic device 101 moves.
- the avatar corresponding to the user moves in response to the user's actual movement, it may be the case that the user does not experience motion sickness.
- the processor 120 may check whether the movement of the avatar occurred due to the actual movement of the user. For example, the processor 120 may check whether the avatar corresponding to the user has moved in the virtual space of VR content based on the movement of the electronic device 101 corresponding to the user's movement.
- the processor 120 applies a vignette effect to the screen of VR content to be displayed through the display 221. You can.
- the processor 120 may not apply a vignetting effect to the screen of VR content to be displayed through the display 221.
- the processor 120 when the processor 120 determines that the movement of the avatar corresponding to the user corresponds to the user's movement while counting the time set in the timer, the processor 120 moves the avatar based on the user's movement. During this time, the counting operation of the timer can be temporarily suspended. After the counting operation of the timer is temporarily suspended, the processor 120 detects movement of the avatar that does not correspond to the user's movement (e.g., the user's actual movement movement) (or movement of the avatar without the user's movement). (if detected), the paused timer can be allowed to perform a counting operation.
- the processor 120 detects movement of the avatar that does not correspond to the user's movement (e.g., the user's actual movement movement) (or movement of the avatar without the user's movement). (if detected), the paused timer can be allowed to perform a counting operation.
- the electronic device 101 does not include a sensor that supports 6DOF (e.g., if the electronic device 101 includes only a sensor that supports 3DOF), the electronic device 101 101), while the rotational movement of the head of the user wearing it is sensed, the change in the user's position cannot be sensed. Therefore, when movement of the avatar corresponding to the user occurs, the vignetting effect is applied regardless of the user's movement. can do.
- a sensor that supports 6DOF e.g., if the electronic device 101 includes only a sensor that supports 3DOF
- FIG. 13 is an example diagram 1300 for explaining a method of applying a vignetting effect based on the movement of an avatar in a designated range of virtual space, according to an embodiment.
- the processor 120 displays the avatar through the display 221 when the movement of the avatar corresponding to the user occurs within a designated range (or designated boundary) of the virtual space.
- the vignetting effect may not be applied to the screen of VR content.
- a specified extent of virtual space may be specified based on the avatar's current location.
- Vignetting effects may not be applied to the screen of VR content.
- the processor 120 determines the position to which the avatar 1311 corresponding to the user will continuously move within the virtual space (e.g., the position to which the avatar 1311 will move by a single input through the controller) in the virtual space. If the area is within a specified range (e.g., area inside the line 1312) based on the current position of the avatar 1311, the vignetting effect may not be applied to the screen of the VR content.
- the processor 120 controls the VR content. You can apply a vignetting effect to the screen.
- the processor 120 when the distance that the avatar corresponding to the user will continuously move within the virtual space (e.g., the distance that the avatar 1311 will move by a single input through the controller) is less than or equal to the specified distance, Vignetting effects may not be applied to the screen of VR content.
- the processor 120 may apply a vignetting effect to the screen of VR content when the distance that the avatar corresponding to the user continuously moves within the virtual space exceeds the specified distance.
- FIG. 14 is a flowchart 1400 illustrating a method of controlling the vignette function based on the user's degree of motion sickness, according to an embodiment.
- the processor 120 may acquire biometric signals of a user wearing the electronic device 101 through a biometric sensor.
- the processor 120 may obtain the user's biometric signals related to motion sickness (VR motion sickness) through a biometric sensor.
- the processor 120 may, through biometric sensors, detect electroencephalogram (EEG) signals, heart rate (HR), electromyography (EMG) signals, and/or eye movements of the user.
- EEG electroencephalogram
- HR heart rate
- EMG electromyography
- eye movements of the user the user's biosignals related to motion sickness can be obtained.
- the user's biosignals related to motion sickness are not limited to the above examples.
- the processor 120 may control the vignetting function based on biometric signals.
- the processor 120 may determine the user's degree of motion sickness (e.g., index related to motion sickness, level related to motion sickness) based on the biosignal.
- degree of motion sickness e.g., index related to motion sickness, level related to motion sickness
- the processor 120 may control the vignetting function based on the user's degree of motion sickness.
- the processor 120 may enhance the vignetting function when the user's motion sickness level is higher than a specified level while VR content is provided. For example, while VR content is being provided, the processor 120 may increase the size of the vignette area if the user's degree of motion sickness is greater than or equal to a specified level. For example, while VR content is being provided, the processor 120 may increase the time currently set in the timer (eg, the time for the timer to count) if the user's degree of motion sickness is greater than or equal to a specified level.
- the processor 120 may weaken the vignetting function when the user's motion sickness level is below a specified level while VR content is provided. For example, while VR content is being provided, the processor 120 may reduce the size of the vignette area if the user's degree of motion sickness is less than a specified level. For example, while VR content is being provided, the processor 120 may decrease the time currently set in the timer if the user's degree of motion sickness is greater than or equal to a specified level.
- the present invention is not limited thereto, and for example, the processor 120 may disable the vignetting function when the user's motion sickness level is less than a specified level while VR content is provided.
- the processor 120 may control the vignetting function based on feedback on the user's degree of motion sickness. For example, while VR content is provided, the processor 120 may display information asking the user whether he or she feels motion sickness through the display 221. The processor 120 may continuously perform the vignetting function or strengthen the vignetting function based on feedback from the user that he/she feels motion sickness. The processor 120 may end the vignetting function or weaken the vignetting function based on feedback from the user that the user does not feel motion sickness.
- the processor 120 may perform an operation of controlling the vignetting function based on the user's degree of motion sickness in FIG. 14 when the avatar's movement speed is higher than the specified speed.
- FIG. 15 is an example diagram 1500 for explaining a method of setting a vignette function according to an embodiment.
- the processor 120 may set the vignetting function for each application (or program) or for the entire application.
- Figure 15 may represent a screen for setting a vignette function.
- the processor 120 displays objects 1531, 1532, 1533, 1534, and 1535 for turning on or off the vignetting function for each of the applications through the display 221.
- 1536, 1537, 1538) and an object 1521 for turning on or off the vignetting function of all applications can be displayed.
- the processor 120 may turn on or off the vignetting function based on a user input for at least one of the objects 1531, 1532, 1533, 1534, 1535, 1536, 1537, and 1538.
- the processor 120 may turn on or off the vignetting function of all applications based on a user input for the object 1521.
- a method of performing a vignetting function in the wearable electronic device 101 may include executing a VR application.
- the method may include detecting movement of an avatar corresponding to a user in a virtual space of VR content displayed while the VR application is running.
- the method can display a screen of the VR content to which a changeable vignette effect is applied through the display 221 of the wearable electronic device 101, based on detection of the movement of the avatar.
- the method may further include starting counting for a time set in a timer and applying the vignetting effect to the screen of the VR content while performing the counting.
- the operation of applying the vignetting effect may include gradually reducing the vignetting area to which the vignetting effect is applied within the screen while performing the counting.
- the method is based on checking whether the virtual space changes from a first virtual space to a second virtual space and confirming that the virtual space changes from a first virtual space to a second virtual space.
- the operation of initializing the timer may be further included.
- the operation of applying the vignetting effect includes classifying the time set in the timer into a plurality of time sections, and confirming the time section to which the time currently set in the timer belongs among the plurality of time sections. It may include an operation, and an operation of applying the vignetting effect to a vignetting area with a size corresponding to the confirmed time interval.
- the operation of applying the vignetting effect includes determining a speed at which the avatar moves within the virtual space and, based on the determined speed, creating a vignetting area within the screen to which the vignetting effect is applied. It may include a decision-making action.
- the operation of applying the vignette effect includes detecting the user's movement through the sensor, checking whether the movement of the avatar corresponds to the movement of the user, and moving the avatar. and applying the vignetting effect based on confirmation that it does not correspond to the user's movement, and when the movement of the avatar corresponds to the user's movement, the vignetting effect may not be applied.
- the operation of applying the vignette effect includes checking whether the movement of the avatar occurs within a specified range of the virtual space, and the movement of the avatar causes the avatar to move to the specified range of the virtual space. and applying the vignetting effect based on confirmation that the avatar moves outside the range, and when the movement of the avatar occurs within a designated range of the virtual space, the vignetting effect may not be applied.
- the method includes obtaining a biosignal of the user, determining the degree of motion sickness of the user based on the biosignal, and controlling a vignette function based on the degree of motion sickness of the user. Additional actions may be included.
- the avatar may be moved by a controller or by a virtual transportation means that the avatar rides in the virtual space.
- An electronic device may be of various types.
- 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 appliances.
- Electronic devices according to embodiments of the present disclosure are not limited to the above-mentioned devices.
- One (e.g., first) component is said to be “coupled” or “connected” to another (e.g., second) component, with or without the terms “functionally” or “communicatively.”
- second component e.g., any of the components can be connected to the other components directly (e.g. wired), wirelessly, or through a third component.
- module used in one embodiment of this document may include a unit implemented in hardware, software, or firmware, and may be interchangeable with terms such as logic, logic block, component, or circuit, for example. can be used
- a module may be an integrated part or a minimum unit of the parts or a part thereof that performs one or more functions.
- the module may be implemented in the form of an application-specific integrated circuit (ASIC).
- ASIC application-specific integrated circuit
- One embodiment of this document is software (e.g., computer) including one or more instructions stored in a storage medium (e.g., memory 130) that can be read by a machine (e.g., electronic device 101). It can be implemented as a program 140).
- a processor e.g., processor 120
- a device e.g., electronic device 101
- the one or more instructions may include code generated by a compiler or code that can be executed by an interpreter.
- a storage medium that can be read by a device may be provided in the form of a non-transitory storage medium.
- non-transitory simply means that the storage medium is a tangible device and does not contain signals (e.g. electromagnetic waves), and this term refers to cases where data is semi-permanently stored in the storage medium. There is no distinction between temporary storage cases.
- a method according to an embodiment disclosed in this document may be provided and included in a computer program product.
- Computer program products are commodities and can be traded between sellers and buyers.
- the computer program product may be distributed in the form of a machine-readable storage medium (e.g. compact disc read only memory (CD-ROM)) or through an application store (e.g. Play StoreTM) or on two user devices (e.g. It can be distributed (e.g. downloaded or uploaded) directly between smart phones) or online.
- a portion of the computer program product may be at least temporarily stored or temporarily created in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or a relay server.
- each component (e.g., module or program) of the above-described components may include a single or multiple entities, and some of the multiple entities may be separately placed in other components.
- one or more of the above-described corresponding components or operations may be omitted, or one or more other components or operations may be added.
- multiple components eg, modules or programs
- the integrated component may perform one or more functions of each component of the plurality of components in the same or similar manner as those performed by the corresponding component of the plurality of components prior to the integration. .
- operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or , or one or more other operations may be added.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Graphics (AREA)
- Human Computer Interaction (AREA)
- Biomedical Technology (AREA)
- Medical Informatics (AREA)
- Molecular Biology (AREA)
- Surgery (AREA)
- Animal Behavior & Ethology (AREA)
- General Health & Medical Sciences (AREA)
- Public Health (AREA)
- Veterinary Medicine (AREA)
- Heart & Thoracic Surgery (AREA)
- Pathology (AREA)
- Biophysics (AREA)
- Multimedia (AREA)
- Architecture (AREA)
- Physiology (AREA)
- Neurosurgery (AREA)
- Remote Sensing (AREA)
- Neurology (AREA)
- Radar, Positioning & Navigation (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
웨어러블 전자 장치가 제공된다. 상기 웨어러블 전자 장치는 디스플레이 및 적어도 하나의 프로세서를 포함한다. 적어도 하나의 프로세서는 VR 어플리케이션을 실행하도록 구성될 수 있다. 적어도 하나의 프로세서는 상기 VR 어플리케이션이 실행되는 동안 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동을 검출하도록 구성될 수 있다. 적어도 하나의 프로세서는 상기 아바타의 이동이 검출됨에 기반하여, 상기 디스플레이를 통하여, 변경 가능한 비네팅 효과가 적용된 상기 VR 컨텐츠의 화면을 표시하도록 구성될 수 있다.
Description
본 개시는 비네팅 기능을 수행하는 방법 및 이를 지원하는 웨어러블 전자 장치에 관한 것이다.
AR 글래스(augmented reality glass), VR 글래스(virtual reality glass), HMD(head mounted display) 장치와 같은 웨어러블 전자 장치를 통해 제공되는 다양한 서비스 및 부가 기능들이 점차 증가하고 있다. 이러한 전자 장치의 효용 가치를 높이고, 다양한 사용자들의 욕구를 만족시키기 위해서 통신 서비스 제공자 또는 전자 장치 제조사들은 다양한 기능들을 제공하고 다른 업체와의 차별화를 위해 전자 장치를 경쟁적으로 개발하고 있다. 이에 따라, 웨어러블 전자 장치를 통해서 제공되는 다양한 기능들도 점점 고도화 되고 있다.
VR 글래스는, 사용자의 머리에 착용된 상태에서, 가상의 이미지를 표시함으로써, 사용자에게 현실감 있는 체험을 제공할 수 있다. VR 글래스는, 게임 엔터테인먼트, 교육, SNS(social networking service)와 같은 다양한 분야에서 스마트 폰의 사용성을 대체할 수 있다. 사용자는, 머리에 착용한 VR 글래스를 통하여 현실과 유사한 컨텐츠를 제공 받을 수 있으며, 인터랙션을 통하여 가상의 세계에 머무는 듯한 느낌을 받을 수 있다.
상기 정보는 본 개시의 이해를 돕기 위한 배경 정보로서만 제공된다. 위의 내용 중 어느 것이 본 개시와 관련하여 선행 기술로 적용될 수 있는지 여부에 대하여 결정이 내려지거나 주장이 이루어지지 않는다.
VR 글래스는, VR 글래스를 착용한 사용자의 머리의 움직임에 의한 VR 글래스의 움직임, 컨트롤러를 통한 입력, 및/또는 사용자의 신체에 부착된 센서의 움직임에 기반하여, VR 컨텐츠를 제어할 수 있다. 예를 들어, VR 글래스는, VR 컨텐츠가 제공되는 동안, VR 글래스의 움직임, 컨트롤러를 통한 입력, 및/또는 사용자의 신체에 부착된 센서의 움직임에 기반하여, 가상 현실의 가상 공간 내에서 사용자에 대응하는 아바타(avatar)(또는 "캐릭터(character)"로도 지칭됨)를 이동시킬 수 있다. VR 글래스가 가상 공간 내에서 사용자에 대응하는 아바타를 이동시킴으로써, 사용자는 실제 현실에서 이동하는 것과 같은 체험을 제공 받을 수 있다. 하지만, 가상 공간 내에서 사용자에 대응하는 아바타가 이동하는 동안, 상기 아바타의 이동과 사용자의 이동이 대응하지 않는 경우(예: 상기 아바타가 이동하는 동안 사용자가 이동하지 않는 경우), 사용자는 멀미(motion sickness)("VR 멀미" 또는 "사이버 멀미"로도 지칭됨)를 경험할 수 있다. 이러한 멀미는, 사용자에 대응하는 아바타의 이동에 의해 변화되는 장면이 사용자의 눈을 통하여 받아들이는 시각 정보와, 사용자의 귀의 전정 기관(및 세반 고리관)을 통하여 받아들이는 감각 정보가 혼합되어 발생하는 평형 감각 이상으로 인한 증상일 수 있다.
비네팅 기능은, 이러한 멀미를 최소화(또는 제거)하기 위한 다양한 방식들 중 하나일 수 있다. 비네팅 기능은, VR 글래스를 통하여 표시되는 화면에 대하여 비네팅 효과("터널링(tunnelling) 효과"로도 지칭됨)를 적용시키는 기능일 수 있다. 예를 들어, 비네팅 기능은, VR 글래스를 통하여 표시되는 화면에 대한 사용자의 시야각을 좁힘으로써, 멀미를 최소화할 수 있다. 반면, 멀미를 경험하지 않는 상태(또는 사용자가 가상 환경에 적응한 상태)에서 비네팅 기능이 수행되는 경우, VR 컨텐츠에 대한 사용자 몰입이 방해될 수 있다.
VR 글래스는 사용자 입력에 기반하여 어플리케이션 별로 비네팅 기능을 활성화하거나 또는 비활성화할 수 있다. 이러한 경우, 사용자는, 사용자가 멀미를 경험하는 상태 또는 사용자가 멀미를 경험하지 않는 상태에서, 수시로 VR 글래스로 비네팅 기능을 활성화하거나 또는 비활성화시키기 위한 입력을 입력해야 하는 불편이 있을 수 있다.
본 개시의 양태들(aspects)은 적어도 위에서 언급된 문제 및/또는 단점을 다루고 적어도 아래에서 설명되는 이점을 제공한다. 이에 따라, 본 개시의 양태는, 가상 공간에서 사용자에 대응하는 아바타의 이동에 기반하여 변경 가능한 비네팅 효과를 적용한 화면을 제공할 수 있는, 비네팅 기능을 수행하는 방법 및 이를 지원하는 웨어러블 전자 장치에 관한 것이다.
추가적인 양태들은 다음의 설명에서 부분적으로 설명될 것이고, 부분적으로는 설명으로부터 명백해질 것이며, 또는 제시된 실시예의 실행에 의해 학습될 수 있다.
본 개시의 양태에 따라 웨어러블 전자 장치가 제공된다. 상기 웨어러블 전자 장치는 디스플레이 및 적어도 하나의 프로세서를 포함한다. 적어도 하나의 프로세서는 VR 어플리케이션을 실행하도록 구성될 수 있다. 적어도 하나의 프로세서는 상기 VR 어플리케이션이 실행되는 동안 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동을 검출하도록 구성될 수 있다. 적어도 하나의 프로세서는 상기 아바타의 이동이 검출됨에 기반하여, 상기 디스플레이를 통하여, 변경 가능한 비네팅 효과가 적용된 상기 VR 컨텐츠의 화면을 표시하도록 구성될 수 있다.
본 개시의 양태에 따라 웨어러블 전자 장치에서 비네팅 기능을 수행하는 방법이 제공된다. 상기 방법은, VR 어플리케이션을 실행하는 동작을 포함한다. 상기 방법은, 상기 VR 어플리케이션이 실행되는 동안 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동을 검출하는 동작을 포함한다. 상기 방법은 상기 아바타의 이동이 검출됨에 기반하여, 상기 웨어러블 전자 장치의 디스플레이를 통하여, 변경 가능한 비네팅 효과가 적용된 상기 VR 컨텐츠의 화면을 표시한다.
일 실시예에서, 컴퓨터 실행 가능 명령어들을 기록한 비-일시적인 컴퓨터 판독 가능 매체에 있어서, 상기 컴퓨터 실행 가능 명령어들은, 실행 시, 적어도 하나의 프로세서를 포함하는 웨어러블 전자 장치가, VR 어플리케이션을 실행하도록 구성될 수 있다. 상기 컴퓨터 실행 가능 명령어들은, 실행 시, 적어도 하나의 프로세서를 포함하는 웨어러블 전자 장치가, 상기 VR 어플리케이션이 실행되는 동안 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동을 검출하도록 구성될 수 있다. 상기 컴퓨터 실행 가능 명령어들은, 실행 시, 적어도 하나의 프로세서를 포함하는 웨어러블 전자 장치가, 상기 아바타의 이동이 검출됨에 기반하여, 상기 디스플레이를 통하여, 변경 가능한 비네팅 효과가 적용된 상기 VR 컨텐츠의 화면을 표시하도록 구성될 수 있다.
일 실시예에 따른 비네팅 기능을 수행하는 방법 및 이를 지원하는 웨어러블 전자 장치는, 가상 공간에서 사용자에 대응하는 아바타의 이동에 기반하여 변경 가능한 비네팅 효과를 적용한 화면을 제공함으로써, 멀미를 최소화하고, VR 컨텐츠에 대한 사용자의 몰입을 향상시킬 수 있다.
본 개시의 다른 양태, 이점, 및 두드러진 특징은 첨부 도면과 함께 취해진 본 개시의 다양한 실시예들을 개시하는 다음의 상세한 설명으로부터 당업자에게 명확하게 될 것이다.
본 개시의 특정 실시예들의 상기 및 다른 양태, 특징, 및 이점은 첨부 도면과 함께 취해진 다음의 설명으로부터 보다 명확하게 될 것이다.
도 1은, 일 실시 예에 따른, 전자 장치를 설명하기 위한 블록도이다.
도 2는, 일 실시 예에 따른, 전자 장치의 전면을 나타내는 도면이다.
도 3은, 일 실시 예에 따른, 전자 장치의 후면을 나타내는 도면이다.
도 4는, 일 실시 예에 따른, 비네팅 기능을 수행하는 방법을 설명하기 위한 흐름도이다.
도 5는, 일 실시 예에 따른, 비네팅 효과를 설명하기 위한 예시도이다.
도 6은, 일 실시 예에 따른, 타이머 설정에 기반하여 비네팅 영역을 변경하는 방법을 설명하기 위한 흐름도이다.
도 7은, 일 실시 예에 따른, 타이머 설정에 기반하여 비네팅 영역을 변경하는 방법을 설명하기 위한 예시도이다.
도 8은, 일 실시 예에 따른, 가상 공간의 변경에 기반하여, 타이머를 설정하는 방법을 설명하기 위한 흐름도이다.
도 9는, 일 실시 예에 따른, 가상 공간의 변경에 기반하여, 타이머를 설정하는 방법을 설명하기 위한 예시도이다.
도 10은, 일 실시 예에 따른, 타이머에 설정된 시간에 기반하여 비네팅 영역을 결정하는 방법을 설명하기 위한 흐름도이다.
도 11은, 일 실시 예에 따른, 아바타의 이동 속도에 기반하여 비네팅 영역을 결정하는 방법을 설명하기 위한 흐름도이다.
도 12는, 일 실시 예에 따른, 사용자의 움직임에 기반하여 비네팅 효과를 적용하는 방법을 설명하기 위한 흐름도이다.
도 13은, 일 실시 예에 따른, 가상 공간의 지정된 범위에 대한 아바타의 이동에 기반하여 비네팅 효과를 적용하는 방법을 설명하기 위한 예시도이다.
도 14는, 일 실시 예에 따른, 사용자의 멀미 정도에 기반하여 비네팅 기능을 제어하는 방법을 설명하기 위한 흐름도이다.
도 15는, 일 실시 예에 따른, 비네팅 기능을 설정하는 방법을 설명하기 위한 예시도이다.
도면들을 통하여, 동일한 참조 번호는 동일하거나 유사한 요소, 특징, 및 구조를 설명하기 위하여 사용되는 점을 유의해야 한다.
첨부된 도면을 참조한 다음 설명은 청구범위 및 그 균등물에 의해 정의된 바와 같은 본 개시의 다양한 실시예들의 포괄적인 이해를 돕기 위해 제공된다. 여기에는 이해를 돕기 위한 다양한 특정 세부 사항이 포함되어 있지만 이는 단지 예시적인 것으로 간주된다. 따라서, 본 기술 분야의 통상의 지식을 가진 자는 본 개시의 범위 및 사상을 벗어나지 않고 여기서 설명된 다양한 실시예의 다양한 변경 및 수정이 이루어질 수 있음을 인식할 것이다. 또한, 명료함과 간결함을 위해 잘 알려진 기능 및 구성에 대한 설명은 생략할 수 있다.
하기 설명 및 특허청구범위에서 사용된 용어 및 단어는 문헌상의 의미에 한정되지 않으며, 본 개시의 명확하고 일관된 이해를 가능하게 하기 위해 발명자가 사용한 것에 불과하다. 따라서, 본 개시의 다양한 실시예들에 대한 다음의 설명은 첨부된 청구범위 및 그 균등물에 의해 정의된 바와 같은 본 발명을 제한하기 위한 것이 아니라 단지 예시의 목적으로 제공된다는 것이 당업자에게 자명할 수 있다.
단수 형태 "a", "an", 및 "the"는 문맥이 명백히 달리 지시하지 않는 한 복수 지시 대상을 포함하는 것으로 이해되어야 한다. 따라서, 예를 들어 "구성요소 표면"에 대한 언급은 그러한 표면 중 하나 이상에 대한 언급을 포함한다.
도 1은, 일 실시 예에 따른, 전자 장치(101)를 설명하기 위한 블록도(100)이다.
전자 장치(101)는, 예를 들어 AR 글래스, VR 글래스, 및/또는 HMD 장치와 같은 사용자가 머리에 착용 가능한 웨어러블 전자 장치일 수 있다. 전자 장치(101)는, 웨어러블 전자 장치로 명명될 수도 있다.
외부 전자 장치(102, 103) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일 실시 예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부 전자 장치들(외부 전자 장치(102,103) 또는 서버(108)) 중 하나 이상의 외부 전자 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부의 수행을 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 예를 들어, 외부 전자 장치(102)는, 어플리케이션에서 실행한 컨텐츠 데이터를 렌더링 후 전자 장치(101)에 전달할 수 있으며, 상기 데이터를 수신한 전자 장치(101)는 상기 컨텐츠 데이터를 디스플레이 모듈에 출력할 수 있다. 만일, 전자 장치(101)가 IMU(inertial measurement unit) 센서 등을 통해 사용자 움직임을 감지하면 전자 장치(101)의 프로세서(120)는 외부 전자 장치(102)로부터 수신한 렌더링 데이터를 상기 움직임 정보를 기반으로 보정하여 디스플레이 모듈(160)에 출력할 수 있다. 또는, 전자 장치(101)는, 외부 전자 장치(102)에 상기 움직임 정보를 전달하여 이에 따라 화면 데이터가 갱신되도록 렌더링을 요청할 수 있다. 다양한 실시 예에 따라 외부 전자 장치(102)는 스마트폰 또는 전자 장치(101)을 보관하고 충전할 수 있는 케이스(case) 장치 등 다양한 형태의 장치일 수 있다.
일 실시예에 따라서, 전자 장치(101)는, 제 1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 외부 전자 장치(102)와 통신하거나, 및/또는 제 2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 외부 전자 장치(103) 또는 서버(108)와 통신할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 또 다른 전자 장치와 통신할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 모듈(150), 음향 출력 모듈(155), 디스플레이 모듈(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 연결 단자(178), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈 및/또는 배터리(189), 통신 모듈(190), 또는 안테나 모듈(197) 중 적어도 하나를 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 연결 단자(178))가 생략되거나, 하나 이상의 다른 구성요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들(예: 센서 모듈(176), 카메라 모듈(180), 또는 안테나 모듈(197))은 하나의 구성요소(예: 디스플레이 모듈(160))로 통합될 수 있다.
일 실시예에 따라서, 프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리에 저장하고, 휘발성 메모리에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다. 일 실시예에 따르면, 프로세서(120)는 메인 프로세서(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 예를 들어, 전자 장치(101)가 메인 프로세서 및 보조 프로세서를 포함하는 경우, 보조 프로세서는 메인 프로세서보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서는 메인 프로세서와 별개로, 또는 그 일부로서 구현될 수 있다. 보조 프로세서는, 예를 들면, 메인 프로세서가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서를 대신하여, 또는 메인 프로세서가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 디스플레이 모듈(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일 실시예에 따르면, 보조 프로세서(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다. 일 실시예에 따르면, 보조 프로세서(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능이 수행되는 전자 장치(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) 또는 상기 중 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다.
일 실시예에 따라서, 메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서 모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다.
일 실시예에 따라서, 프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다.
일 실시예에 따라서, 입력 모듈(150)은, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 모듈(150)은, 마이크, 버튼, 및/또는 터치 패드를 포함할 수 있으나, 제한은 없다.
일 실시예에 따라서, 음향 출력 모듈(155)은 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 모듈(155)은, 예를 들면, 스피커를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있다.
일 실시예에 따라서, 디스플레이 모듈(160)은 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 예를 들어, 전자 장치(101)가 AR 글래스로 구현되는 경우에는, 디스플레이 모듈(160)은 예를 들면, 액정 표시 장치(liquid crystal display; LCD), 디지털 미러 표시 장치(digital mirror device; DMD), 실리콘 액정 표시 장치(liquid crystal on silicon; LCoS), 실리콘 온 발광 다이오드(light emitting diode(LED) on silicon; LEDoS), 유기 발광 다이오드(organic light emitting diode; OLED) 또는 마이크로 엘이디(micro light emitting diode; micro LED)를 포함할 수 있으나, 제한은 없다. 디스플레이 모듈(160)은, 전자 장치(101)의 종류에 따라 그 구현 형태가 상이할 수도 있다.
일 실시예에 따라서, 오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일 실시예에 따르면, 오디오 모듈(170)은, 입력 모듈(150)을 통해 소리를 획득하거나, 음향 출력 모듈(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 외부 전자 장치(102))(예: 스피커 또는 헤드폰)를 통해 소리를 출력할 수 있다. 외부 전자 장치(102)는, 예를 들어 스마트 폰 또는 태블릿 PC와 같은 모바일 장치일 수 있으나, 제한은 없다.
일 실시예에 따라서, 센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일 실시예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 및/또는 조도 센서를 포함할 수 있다.
일 실시예에 따라서, 인터페이스(177)는 전자 장치(101)가 외부 전자 장치(예: 외부 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일 실시예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
일 실시예에 따라서, 연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 외부 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일 실시예에 따르면, 연결 단자(178)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
일 실시예에 따라서, 햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일 실시예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
일 실시예에 따라서, 카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일 실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.
일 실시예에 따라서, 전력 관리 모듈 및/또는 배터리(189)는 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일 실시예에 따르면, 전력 관리 모듈 및/또는 배터리(189)는, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다. 전력 관리 모듈 및/또는 배터리(189)는 전자 장치(101)의 적어도 하나의 구성요소에 전력을 공급할 수 있다. 일 실시예에 따르면, 전력 관리 모듈 및/또는 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
일 실시예에 따라서, 통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 외부 전자 장치(102), 외부 전자 장치(103), 또는 서버(108)) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일 실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(198)(예: 블루투스, WiFi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부 전자 장치(102, 103)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈은 가입자 식별 모듈에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 또는 인증할 수 있다.
무선 통신 모듈은 4G 네트워크 이후의 5G 네트워크 및 차세대 통신 기술, 예를 들어, NR 접속 기술(new radio access technology)을 지원할 수 있다. NR 접속 기술은 고용량 데이터의 고속 전송(eMBB(enhanced mobile broadband)), 단말 전력 최소화와 다수 단말의 접속(mMTC(massive machine type communications)), 또는 고신뢰도와 저지연(URLLC(ultra-reliable and low-latency communications))을 지원할 수 있다. 무선 통신 모듈은, 예를 들어, 높은 데이터 전송률 달성을 위해, 고주파 대역(예: mmWave 대역)을 지원할 수 있다. 무선 통신 모듈은 고주파 대역에서의 성능 확보를 위한 다양한 기술들, 예를 들어, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO(multiple-input and multiple-output)), 전차원 다중입출력(FD-MIMO: full dimensional MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 또는 대규모 안테나(large scale antenna)와 같은 기술들을 지원할 수 있다. 무선 통신 모듈은 전자 장치(101), 외부 전자 장치(예: 외부 전자 장치(103)) 또는 네트워크 시스템(예: 제 2 네트워크(199))에 규정되는 다양한 요구사항을 지원할 수 있다. 일 실시예에 따르면, 무선 통신 모듈은 eMBB 실현을 위한 Peak data rate(예: 20Gbps 이상), mMTC 실현을 위한 손실 Coverage(예: 164dB 이하), 또는 URLLC 실현을 위한 U-plane latency(예: 다운링크(DL) 및 업링크(UL) 각각 0.5ms 이하, 또는 라운드 트립 1ms 이하)를 지원할 수 있다. 상술한 바와 같이, 전자 장치(101)가 4G, 5G와 같은 셀룰러 통신을 지원하는 경우, 전자 장치(101)를 SA(standalone) 타입의 전자 장치라 명명할 수도 있다. 한편, 전자 장치(101)는 4G, 5G와 같은 셀룰러 통신을 지원하지 않도록 구현될 수도 있으며, 이 경우에는 전자 장치(101)는, 제 1 네트워크(198)를 이용하여, 셀룰러 통신을 지원하는 외부 전자 장치(102)를 경유하여 인터넷을 이용할 수도 있으며, 이 경우 전자 장치(101)는 논-스탠드 얼론(non-standalone) 타입의 전자 장치로 명명될 수도 있다.
일 실시예에 따라서, 안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부의 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일 실시예에 따르면, 안테나 모듈(197)은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 안테나를 포함할 수 있다. 일 실시예에 따르면, 안테나 모듈(197)은 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다. 이런 경우, 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 상기 복수의 안테나들로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부의 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시예에 따르면, 방사체 이외에 다른 부품(예: RFIC(radio frequency integrated circuit))이 추가로 안테나 모듈(197)의 일부로 형성될 수 있다.
일 실시 예에 따르면, 안테나 모듈(197)은 mmWave 안테나 모듈을 형성할 수 있다. 일 실시예에 따르면, mmWave 안테나 모듈은 인쇄 회로 기판, 상기 인쇄 회로 기판의 제 1 면(예: 아래 면)에 또는 그에 인접하여 배치되고 지정된 고주파 대역(예: mmWave 대역)을 지원할 수 있는 RFIC, 및 상기 인쇄 회로 기판의 제 2 면(예: 윗 면 또는 측 면)에 또는 그에 인접하여 배치되고 상기 지정된 고주파 대역의 신호를 송신 또는 수신할 수 있는 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다.
상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))을 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일 실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부 전자 장치(103) 간에 송신 또는 수신될 수 있다. 외부 전자 장치(102, 103) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일 실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부 전자 장치들(외부 전자 장치(102, 103) 또는 서버(108)) 중 하나 이상의 외부의 전자 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부의 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부의 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 모바일 에지 컴퓨팅(MEC: mobile edge computing), 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다. 전자 장치(101)는, 예를 들어, 분산 컴퓨팅 또는 모바일 에지 컴퓨팅을 이용하여 초저지연 서비스를 제공할 수 있다. 다른 실시예에 있어서, 외부의 전자 장치(103)는 IoT(internet of things) 기기를 포함할 수 있다. 서버(108)는 기계 학습 및/또는 신경망을 이용한 지능형 서버일 수 있다. 일 실시예에 따르면, 외부의 전자 장치(103) 또는 서버(108)는 제 2 네트워크(199) 내에 포함될 수 있다. 전자 장치(101)는 5G 통신 기술 및 IoT 관련 기술을 기반으로 지능형 서비스(예: 스마트 홈, 스마트 시티, 스마트 카, 또는 헬스 케어)에 적용될 수 있다.
도 2는, 일 실시 예에 따른, 전자 장치(101)의 전면을 나타내는 도면이다.
도 3은, 일 실시 예에 따른, 전자 장치(101)의 후면을 나타내는 도면이다.
도 2 및 도 3을 참조하면, 일 실시예에서, 하우징의 제 1 면(210) 상에는 VST(video see through)를 위한 VST 카메라 모듈(211, 212), 복수의 카메라 모듈들(213, 214, 215, 216), 및/또는 뎁스 센서(217)가 배치될 수 있다. 예를 들어, 하우징의 제 1 면(210)에 형성된 개구를 통하여 VST 카메라 모듈(211, 212), 복수의 카메라 모듈들(213, 214, 215, 216), 및/또는 뎁스 센서(217)가 노출될 수 있다.
일 실시예에서, VST 카메라 모듈들(211, 212)은, 전자 장치 주변 환경과 관련된 이미지를 획득할 수 있다. VST 카메라 모듈들(211, 212)에 의해 획득된 이미지는, VST 컨텐츠의 적어도 일부로서 사용자에게 제공될 수 있다.
일 실시예에서, 복수의 카메라 모듈들(213, 214, 215, 216)은, 전자 장치가 사용자에 의해 착용된 상태에서, 이미지를 획득할 수 있다. 복수의 카메라 모듈들(213, 214, 215, 216)을 통하여 획득된 이미지는, SLAM(simultaneous localization and mapping), 6DoF(6 degrees of freedom), 피사체 인식, 및/또는 트래킹에 이용될 수 있다. 일 실시예에서, 뎁스 센서(217)는, TOF(time of flight)와 같이 물체와의 거리 확인을 위한 용도로 사용될 수 있다. 뎁스 센서(217)를 대체하여 또는 추가적으로, 복수의 카메라 모듈들(213, 214, 215, 216)이 물체와의 거리를 확인할 수 있다.
일 실시예에 따라서, 하우징의 제 2 면(220) 상에는 얼굴 인식용 카메라 모듈(215, 216) 및/또는 디스플레이(221)(및/또는 렌즈)가 배치될 수 있다.
일 실시예에서, 얼굴 인식용 카메라 모듈(225, 226)은, 사용자의 얼굴을 인식하기 위한 용도로 사용될 수 있다.
일 실시예에서, 디스플레이(221)(및/또는 렌즈)는, 전자 장치(101)가 사용자의 얼굴에 착용되는 동안, 얼굴에 대향하는 전자 장치(101)의 제 2 면(220)에 배치될 수 있다. 일 실시예에서, 디스플레이(221)(및/또는 렌즈)는, 전자 장치(101)가 사용자에 착용된 상태에서, 다양한 정보를 포함하는 화면을 표시할 수 있다.
일 실시예에서, 도 2 및 도 3에 도시하지는 않았지만, 전자 장치(101)는, 하나 이상의 구성들(components)을 더 포함할 수 있다. 예를 들어, 전자 장치(101)는, 전자 장치가 사용자(예: 사용자의 얼굴)에 착용됨을 검출하기 위한 근접 센서, 터치 센서, 및/또는 압력 센서를 더 포함할 수 있다. 예를 들어, 전자 장치(101)는 지문 센서(광학 또는 초음파 방식의 지문 센서)를 더 포함할 수 있다. 예를 들어, 전자 장치(101)는 적어도 하나의 키(또는 버튼)를 더 포함할 수 있다.
일 실시예에서, 전자 장치(101)는 도 2 및 도 3에 도시된 구성들 중에서 일부를 포함하지 않을 수 있다. 예를 들어, 전자 장치(101)는, 복수의 카메라 모듈들(213, 214, 215, 216) 중에서, 카메라 모듈들(215, 216)을 포함하지 않을 수 있다.
일 실시예에서, 전자 장치(101)는, 도 1에 도시된 전자 장치(101)의 구성들 중 적어도 하나의 구성을 더 포함할 수 있다.
일 실시예에서, 도 2 및 도 3은, VST 방식을 이용한 전자 장치(101)를 예시하고 있지만, 이에 제한되지 않는다, 예를 들어, 이하에서 설명할 비네팅 기능을 수행하는 동작은, VR 컨텐츠 제공이 가능한 모든 웨어러블 전자 장치에 적용될 수 있다. 예를 들어, 이하에서 설명할 비네팅 기능을 수행하는 동작은 VST를 위한 VST 카메라 모듈(211, 212)를 포함하지 않는 VR 전자 장치에 적용될 수 있다. 또한, 이하에서 설명할 비네팅 기능을 수행하는 동작은 AR 글래스에 적용될 수 있다.
일 실시예에 따른 웨어러블 전자 장치(101)는 디스플레이(221) 및 적어도 하나의 프로세서(120)를 포함할 수 있다. 적어도 하나의 프로세서(120)는 VR 어플리케이션을 실행하도록 구성될 수 있다. 적어도 하나의 프로세서(120)는 상기 VR 어플리케이션이 실행되는 동안 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동을 검출하도록 구성될 수 있다. 적어도 하나의 프로세서(120)는 상기 아바타의 이동이 검출됨에 기반하여, 상기 디스플레이(221)를 통하여, 변경 가능한 비네팅 효과가 적용된 상기 VR 컨텐츠의 화면을 표시하도록 구성될 수 있다.
일 실시예에서, 상기 적어도 하나의 프로세서(120)는, 타이머에 설정된 시간에 대한 카운팅(counting)을 시작하고, 및 상기 카운팅을 수행하는 동안 상기 VR 컨텐츠의 상기 화면에 대하여 상기 비네팅 효과를 적용하도록 구성될 수 있다.
일 실시예에서, 상기 적어도 하나의 프로세서(120)는, 상기 카운팅을 수행하는 동안 상기 화면 내에서 상기 비네팅 효과가 적용되는 비네팅 영역을 점진적으로 축소시키도록 구성될 수 있다.
일 실시예에서, 상기 적어도 하나의 프로세서(120)는, 상기 가상 공간이 제 1 가상 공간으로부터 제 2 가상 공간으로 변경되는지 여부를 확인하고, 및 상기 가상 공간이 제 1 가상 공간으로부터 제 2 가상 공간으로 변경됨을 확인함에 기반하여, 상기 타이머를 초기화하도록 구성될 수 있다.
일 실시예에서, 상기 적어도 하나의 프로세서(120)는, 상기 타이머에 설정된 시간을 복수의 시간 구간들로 분류하고, 복수의 시간 구간들 중에서 상기 타미어에 현재 설정된 시간이 속하는 시간 구간을 확인하고, 및 상기 확인된 시간 구간에 대응하는 크기를 가진 비네팅 영역에 대하여 상기 비네팅 효과를 적용하도록 구성될 수 있다.
일 실시예에서, 상기 적어도 하나의 프로세서(120)는, 상기 아바타가 상기 가상 공간 내에서 이동하는 속도를 결정하고, 및 상기 결정된 속도에 기반하여, 상기 화면 내에서 상기 비네팅 효과가 적용되는 비네팅 영역을 결정하도록 구성될 수 있다.
일 실시예에서, 상기 웨어러블 전자 장치(101)는 센서를 더 포함하고, 상기 적어도 하나의 프로세서(120)는, 상기 센서를 통하여 상기 사용자의 움직임을 검출하고, 상기 아바타의 이동이 상기 사용자의 움직임에 대응하는지 여부를 확인하고, 및 상기 아바타의 이동이 상기 사용자의 움직임에 대응하지 않음을 확인함에 기반하여, 상기 비네팅 효과를 적용하도록 구성되고, 상기 아바타의 이동이 상기 사용자의 움직임에 대응하는 경우 상기 비네팅 효과가 적용되지 않을 수 있다.
일 실시예에서, 상기 적어도 하나의 프로세서(120)는, 상기 아바타의 이동이 상기 가상 공간의 지정된 범위 내에서 발생하는지 여부를 확인하고, 및 상기 아바타의 이동에 의해 상기 아바타가 상기 가상 공간의 상기 지정된 범위 외부로 이동함을 확인함에 기반하여 상기 비네팅 효과를 적용하도록 구성되고, 상기 아바타의 이동이 상기 가상 공간의 지정된 범위 내에서 발생하는 경우, 상기 비네팅 효과가 적용되지 않을 수 있다.
일 실시예에서, 상기 적어도 하나의 프로세서(120)는, 상기 사용자의 생체 신호를 획득하고, 상기 생체 신호에 기반하여, 상기 사용자의 멀미 정도를 결정하고, 및 상기 사용자의 멀미 정도에 기반하여, 비네팅 기능을 제어하도록 구성될 수 있다.
일 실시예에서, 상기 적어도 하나의 프로세서(120)는, 상기 아바타는 컨트롤러에 의해 이동되거나 상기 아바타가 상기 가상 공간에서 타는 가상 이동 수단에 의해 이동될 수 있다.
도 4는, 일 실시 예에 따른, 비네팅 기능을 수행하는 방법을 설명하기 위한 흐름도(400)이다.
도 5는, 일 실시 예에 따른, 비네팅 효과를 설명하기 위한 예시도(500)이다.
도 4 및 도 5를 참조하면, 동작 401에서, 일 실시예에서, 프로세서(120)는 VR 어플리케이션을 실행할 수 있다.
일 실시예에서, VR 어플리케이션은, 가상 환경(또는 "가상 세계"로도 지칭됨)의 가상 공간에서 제공되는 VR 컨텐츠를 제공할 수 있는, 게임 어플리케이션, 영상 어플리케이션을 포함할 수 있다. 다만, VR 어플리케이션은 전술한 게임 어플리케이션, 영상 어플리케이션에 제한되지 않는다.
일 실시예에서, VR 컨텐츠는 가상 공간 상에서 사용자에 대응하는 아바타(또는 캐릭터)(이하, 사용자에 대응하는 아바타를 "사용자에 대응하는 아바타" 또는 "아바타"로 지칭함)의 관점에서 바라보는 장면을 나타낼 수 있는 컨텐츠를 포함할 수 있다. 예를 들어, VR 컨텐츠는, 전자 장치(101)가 향하는 방향(또는 사용자의 시선)에 대응하는 1인칭 시점의 장면을 나타낼 수 있는 컨텐츠를 포함할 수 있다. 일 실시예에서, 1인칭 시점의 장면은, 사용자에 대응하는 아바타를 포함하지 않거나, 아바타의 신체의 일부(예: 아바타의 손) 또는 아바타가 착용한 아이템(item)을 포함할 수 있다.
일 실시예에서, 프로세서(120)는, VR 어플리케이션이 실행된 경우, 비네팅 기능을 실행할 수 있다. 예를 들어, 프로세서(120)는, VR 어플리케이션 실행 시 비네팅 기능이 실행되도록 설정된 경우, VR 어플리케이션을 실행함에 기반하여, 비네팅 기능("멀미 저감 기능"으로도 지칭됨)을 활성화(activate)(또는 턴 온(turn on))할 수 있다.
일 실시예에서, 비네팅 기능은, VR 컨텐츠의 화면에 대하여 비네팅 효과("터널링(tunnelling) 효과"로도 지칭됨)를 적용하는 기능일 수 있다. 예를 들어, 비네팅 기능은 VR 컨텐츠의 화면에 대하여 사용자가 볼 수 있는 시야의 범위(field of view)(또는 시야 각)를 좁히는 기능일 수 있다. 예를 들어, 비네팅 기능은, VR 컨텐츠의 화면의 외곽(또는 가장 자리) 부분을 어둡게 하는 기능일 수 있다. 이하, 도 5를 참조하여, 비네팅 기능 또는 비네팅 효과에 대하여 보다 상세히 설명하도록 한다.
일 실시예에서, 도 5를 참조하면, 이미지(510)는 비네팅 효과가 적용되기 전 화면을 나타내고, 이미지(520)는 비네팅 효과가 적용된 후 화면을 나타낼 수 있다. 이미지(510) 및 이미지(520)을 비교하면, 이미지(520)의 중심을 포함하는 영역(511)은, 대응하는 이미지(510)의 영역과 동일하게 표현될 수 있다. 반면, 이미지(520)의 가장 자리 부분에 해당하는 영역(512)은 어둡게 표현될 수 있다. 이미지(510)에 대하여 비네팅 효과가 적용된 경우, 이미지(520)와 같이, 사용자가 볼 수 있는 VR 컨텐츠의 화면에 대한 시야의 범위는 좁혀질 수 있다. 이하에서, VR 컨텐츠의 화면 내에서 비네팅 효과가 적용되는 영역(예: 비네팅 효과에 의해 어둡게 표현되는 영역(512))을 "비네팅 영역"으로 지칭하기로 한다.
도 4를 다시 참조하면, 동작 403에서, 일 실시예에서, 프로세서(120)는, VR 어플리케이션이 실행되는 동안 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동을 검출할 수 있다.
일 실시예에서, VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타는 이동될 수 있다. 예를 들어, VR 컨텐츠의 가상 공간을 나타내는 가상 맵(virtual map) 상에서 사용자에 대응하는 아바타의 위치는 변경될 수 있다.
일 실시예에서, 프로세서(120)는, 전자 장치(101)와 무선으로(또는 유선으로) 연결된 컨트롤러(예: 조이스틱, 키보드, 마우스)에 대한 입력에 기반하여, 전자 장치(101)를 통하여 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타를 이동시킬 수 있다.
일 실시예에서, 프로세서(120)는, 전자 장치(101)에 포함된 입력 모듈(150)(예: 터치 패드, 키(key), 버튼(button))에 대한 입력에 기반하여, 전자 장치(101)를 통하여 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타를 이동시킬 수 있다.
일 실시예에서, 프로세서(120)는, VR 컨텐츠의 가상 공간에서 표현되는 오브젝트(object)의 이동에 의해 사용자에 대응하는 아바타를 이동시킬 수 있다. 예를 들어, VR 컨텐츠에서 사용자에 대응하는 아바타는, 상기 아바타를 이동시킬 수 있는 가상 이동 수단(예: 가상 차량, 가상 비행기, 가상 롤러코스터)(또는 가상 이동 수단을 나타내는 오브젝트)에 탑승할 수 있다. 프로세서(120)는, 상기 가상 이동 수단을 이동시키는 입력이 획득된 경우, 가상 이동 수단과 함께, 상기 가상 이동 수단에 탑승한 상기 아바타를 이동시킬 수 있다.
다만, 아바타를 이동시키는 방법은 전술한 예시들에 제한되지 않는다. 또한, 전술한 아바타를 이동시키는 예시들은, 사용자가 실제 이동 없이(예: 사용자의 위치가 변경됨 없이), VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타를 이동시키는 예시들일 수 있다.
일 실시예에서, 프로세서(120)는, 사용자에 대응하는 아바타가 이동되는 경우, 가상 공간에 대응하는 가상 맵에서 사용자에 대응하는 아바타의 위치를 업데이트(update)할 수 있다.
동작 405에서, 일 실시예에서, 프로세서(120)는, 사용자에 대응하는 아바타의 이동이 검출됨에 기반하여, 디스플레이(221)를 통하여, 변경 가능한 비네팅 효과가 적용된 VR 컨텐츠의 화면을 표시할 수 있다.
일 실시예에서, 프로세서(120)는, 사용자에 대응하는 아바타의 이동이 검출되는 동안, 디스플레이(221)를 통하여 표시될 VR 컨텐츠의 화면에 대하여, 변경 가능한 비네팅 효과를 적용할 수 있다. 예를 들어, 프로세서(120)는, 사용자에 대응하는 아바타를 이동시키는 입력이 획득된 경우, 디스플레이(221)를 통하여 표시될, 사용자에 대응하는 아바타의 이동을 나타내는 화면에 대하여 변경 가능한 비네팅 효과를 적용할 수 있다. 예를 들어, 프로세서(120)는, 사용자에 대응하는 아바타의 이동이 검출되는 시간 마다, 디스플레이(221)를 통하여 표시될 VR 컨텐츠의 화면에 대하여, 변경 가능한 비네팅 효과를 적용할 수 있다. 다만, 이에 제한되지 않는다. 예를 들어, 프로세서(120)는, 비네팅 기능(멀미 저감 기능)이 활성화된 후, 지정된 시간 동안 또는 VR 어플리케이션을 종료하기 전까지, 사용자에 대응하는 아바타의 이동과 관계 없이, 디스플레이(221)를 통하여 표시될 VR 컨텐츠에 대하여 변경 가능한 비네팅 효과를 적용할 수도 있다.
일 실시예에서, 프로세서(120)는, 디스플레이(221)를 통하여 표시될 VR 컨텐츠의 화면에 대하여, 변경 가능한 비네팅 효과를 적용할 수 있다. 예를 들어, 프로세서(120)는 VR 컨텐츠에 대하여 비네팅 효과가 적용되는 시간 및/또는 비네팅 효과가 적용되는 비네팅 영역(예: 비네팅 영역의 크기)을 변경할 수 있다. 이하, 도 6 내지 도 15를 참조하여, 변경 가능한 비네팅 효과를 적용하는 방법에 대하여 상세히 설명하도록 한다.
도 6은, 일 실시 예에 따른, 타이머 설정에 기반하여 비네팅 영역을 변경하는 방법을 설명하기 위한 흐름도(600)이다.
도 7은, 일 실시 예에 따른, 타이머 설정에 기반하여 비네팅 영역을 변경하는 방법을 설명하기 위한 예시도(700)이다.
도 6 및 도 7을 참조하면, 동작 601에서, 일 실시예에서, 프로세서(120)는 VR 어플리케이션을 실행할 수 있다.
동작 601은, 도 4의 동작 401과 적어도 일부가 동일 또는 유사하므로, 상세한 설명은 생략하기로 한다.
동작 603에서, 일 실시예에서, 프로세서(120)는, 타이머(timer)에 설정된 시간에 대한 카운팅(counting)을 시작할 수 있다.
일 실시예에서, 프로세서(120)는, VR 어플리케이션에 대하여 비네팅 기능이 활성화된 상태에서 VR 어플리케이션이 실행되는 경우, VR 어플리케이션이 실행되는 시점부터 타이머에 설정된 시간(예: 수행될 비네팅 기능을 위하여 설정된 초기 설정 시간)(이하, "타이머의 초기 설정 시간"으로도 지칭됨)을 카운팅하는 동작을 시작할 수 있다. 일 실시예에서, 프로세서(120)는, VR 어플리케이션이 실행된 후 비네팅 기능이 활성화된 경우, 비네팅 기능이 활성화된 시점부터 타이머에 설정된 시간을 카운팅하는 동작을 시작할 수 있다.
일 실시예에서, 프로세서(120)는, VR 어플리케이션이 실행되고 비네팅 기능이 활성화 상태에서, VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동이 최초로 검출된 시점부터, 타이머에 설정된 시간을 카운팅하는 동작을 시작할 수 있다. 예를 들어, 도 6에서는 동작 603의 타이머에 설정된 시간에 대한 카운팅을 시작한 후 동작 605의 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동이 검출하는 동작을 수행하는 것으로 예시하고 있지만 이에 제한되지 않으며, 프로세서(120)는, VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동이 최초로 검출됨에 응답하여, 타이머에 설정된 시간에 대한 카운팅을 시작할 수 있다.
일 실시예에서, 프로세서(120)는, 사용자 입력에 기반하여, 타이머의 초기 설정 시간을 설정할 수 있다. 예를 들어, 프로세서(120)는, 1000초와 같이 타이머의 초기 설정 시간을 입력하는 사용자 입력에 기반하여, 타이머가 카운팅할 시간을 1000초로 설정할 수 있다. 예를 들어, 프로세서(120)는, 강(예: 1500초), 중(예: 1000초), 및 약(예: 500초)과 같이, 비네팅 기능이 적용되는 강도들(intensities)(또는 비네팅 기능이 수행될 시간들을 나타내는 정보(또는 아이콘들)) 중 하나의 강도를 선택하는 사용자 입력에 기반하여, 타이머가 카운팅할 시간을 설정(예: "강"을 선택하는 경우 비네팅 기능이 수행될 시간이 1500초로 설정됨)할 수 있다. 다만, 타이머의 초기 설정 시간을 설정하는 방법은 전술한 예시들에 제한되지 않는다.
동작 605에서, 일 실시예에서, 프로세서(120)는, VR 어플리케이션이 실행되는 동안 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동을 검출할 수 있다.
동작 605는, 도 4의 동작 403과 적어도 일부가 동일 또는 유사하므로, 동작 403과 중복되는 설명은 생략하기로 한다.
일 실시예에서, 프로세서(120)는, VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동이 검출되는 시간 동안, 타이머에 설정된 시간을 카운팅할 수 있다. 예를 들어, 프로세서(120)는, VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동이 검출되는 시간 마다(예: 시간 동안 마다) 타이머에 설정된 시간을 카운팅하고, 상기 아바타의 이동이 검출되지 않는 시간 동안 타이머에 설정된 시간을 카운팅하는 동작을 중지(예: 일시 중지)할 수 있다. 프로세서(120)는, 타이머에 설정된 시간(예: 타이머가 카운팅할 남은 시간)(이하에서, 타이머가 카운팅할 남은 시간은 "타이머에 현재 설정된 시간"으로도 지칭함)을 카운팅하는 동작이 중지된 후, 상기 아바타의 이동이 검출된 경우 아바타의 이동이 검출되는 시간부터 중지된 카운팅 동작을 다시 수행할 수 있다. 예를 들어, 프로세서(120)는, 1000초의 초기 설정 시간이 설정된 타이머가 100초가 경과된 시점에 타이머가 일시 중지된 후 아바타의 이동이 검출된 경우, 이바타의 이동이 검출된 시점부터 900초에 대한 카운팅 동작을 시작할 수 있다. 다만, 이에 제한되지 않으며, 일 실시예에서, 프로세서(120)는, VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동과 관계 없이, 타이머에 설정된 시간에 대한 카운팅 동작을 계속적으로 수행할 수도 있다.
동작 607에서, 일 실시예에서, 프로세서(120)는, 디스플레이(221)를 통하여, 타이머에 설정된 시간으로부터 카운팅된 시간의 경과에 따라(예: 타이머에 설정된 시간에 대한 카운팅 동작이 수행됨에 따라) 비네팅 영역이 축소되는 VR 컨텐츠의 화면을 표시할 수 있다.
일 실시예에서, 프로세서(120)는, 타이머에 설정된 시간에 대한 카운팅 동작이 수행됨에 따라(예: VR 컨텐츠의 화면이 비네팅 효과가 적용되는 시간이 경과됨에 따라), 점진적으로, VR 컨텐츠의 화면에 대하여 적용되는 비네팅 영역을 축소시킬 수 있다. 예를 들어, 도 7에서, 프로세서(120)는, 타이머에 설정된 시간(타이머의 초기 설정 시간)에 대한 카운팅을 시작하는 제 1 시점에 제 1 라인(721)의 외부와 VR 컨텐츠의 화면(710)이 중첩하는 영역을 비네팅 영역으로 결정할 수 있다. 프로세서(120)는, 타이머에 설정된 시간이 카운팅됨에 따라, 점진적으로(또는 순차적으로), 제 1 시점 이후의 제 2 시점 및 제 2 시점 이후의 제 3 시점에, 각각, 제 2 라인(722)의 외부와 VR 컨텐츠의 화면(710)이 중첩하는 영역 및 제 3 라인(723)의 외부와 VR 컨텐츠의 화면(710)이 중첩하는 영역을 비네팅 영역으로 결정할 수 있다. 도 7에서는, 비네팅 영역을 결정하기 위하여 이용되는 라인(예: 제 1 라인(721), 제 2 라인(722), 및 제 3 라인(723))이 원 형태인 것으로 예시하고 있지만, 이에 제한되지 않으며, 다양한 형태로 구현될 수 있다.
일 실시예에서, 프로세서(120)는, 타이머에 설정된 시간에 대한 카운팅 동작이 수행됨에 따라(예: VR 컨텐츠의 화면이 비네팅 효과가 적용되는 시간이 경과됨에 따라), 점진적으로, 축소된 비네팅 영역이 적용된 VR 컨텐츠의 화면을 디스플레이(221)를 통하여 표시할 수 있다.
일 실시예에서, 프로세서(120)는, 타이머에 설정된 시간(예: 시간 길이)에 따라, 비네팅 영역이 축소되는 속도(예: 시간 당 비네팅 영역의 크기(또는 면적)의 축소량)를 설정(또는 조정)할 수 있다. 예를 들어, 프로세서(120)는, 제 1 초기 설정 시간(예: 1000초)이 타이머에 설정된 경우 제 1 초기 시간에 대한 카운팅이 수행되는 동안 비네팅 영역이 제 1 속도로 축소되고, 타이머에 제 1 초기 설정 시간 보다 짧은 제 2 초기 설정 시간(예: 500초)이 설정된 경우, 상기 제 1 속도 보다 빠른 제 2 속도로 축소되도록, 타미어에 설정된 시간에 대한 카운팅을 수행하는 동안 비네팅 영역이 축소되는 속도를 설정할 수 있다.
일 실시예에서, 프로세서(120)는, 타이머가 만료된 경우(예: 타이머에 설정된 시간에 대한 카운팅이 완료된 경우), VR 컨텐츠의 화면에 대한 비네팅 동작을 종료할 수 있다. 예를 들어, 프로세서(120)는, 타이머가 만료된 경우, VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동이 검출되더라도 VR 컨텐츠의 화면에 대한 비네팅 동작을 종료할 수 있다. 일 실시예에서, VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타가 이동됨에 의해 사용자가 멀미를 체감한 경우에도, 사용자는 일정 시간(예: 타이머에 설정된 시간)이 경과된 후에는, VR 컨텐츠에 적응할 수 있다. 예를 들어, 사용자는, 멀미를 체감한 후 VR 컨텐츠를 일정 시간 시청함으로써 VR 컨텐츠에 적응하여 더이상 멀미를 체감하지 않을 수 있다. 이에 따라, 프로세서(120)는, 타이머가 만료된 후, VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동이 검출되더라도 VR 컨텐츠의 화면에 대한 비네팅 동작을 종료할 수 있다. 다만, 이에 제한되지 않는다.
도 8은, 일 실시 예에 따른, 가상 공간의 변경에 기반하여, 타이머를 설정하는 방법을 설명하기 위한 흐름도(800)이다.
도 9는, 일 실시 예에 따른, 가상 공간의 변경에 기반하여, 타이머를 설정하는 방법을 설명하기 위한 예시도(900)이다.
도 8 및 도 9를 참조하면, 동작 801에서, 일 실시예에서, 프로세서(120)는 VR 어플리케이션을 실행할 수 있다.
동작 801은, 도 4의 동작 401과 적어도 일부가 동일 또는 유사하므로, 상세한 설명은 생략하기로 한다.
동작 803에서, 일 실시예에서, 프로세서(120)는, 타이머에 설정된 시간에 대한 카운팅을 시작할 수 있다. 예를 들어, 프로세서(120)는, 타이머의 초기 설정 시간을 1000초를 설정할 수 있다.
동작 803은, 도 6의 동작 603과 적어도 일부가 동일 또는 유사하므로, 상세한 설명은 생략하기로 한다.
동작 805에서, 일 실시예에서, 프로세서(120)는, VR 어플리케이션이 실행되는 동안 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동을 검출할 수 있다.
동작 805는, 도 6의 동작 605와 적어도 일부가 동일 또는 유사하므로, 상세한 설명은 생략하기로 한다.
동작 807에서, 일 실시예에서, 프로세서(120)는, 디스플레이(221)를 통하여, 타이머에 설정된 시간으로부터 카운팅되는 시간의 경과(시간의 흐름)에 따라, 변경 가능한 비네팅 효과가 적용된 VR 컨텐츠의 화면을 표시할 수 있다.
동작 807은, 도 4의 동작 405와 적어도 일부가 동일 또는 유사하므로, 상세한 설명은 생략하기로 한다.
동작 809에서, 일 실시예에서, 프로세서(120)는 VR 컨텐츠의 가상 공간이 변경되는지 여부를 확인할 수 있다.
일 실시예에서, 프로세서(120)는, 사용자에 대응하는 아바타의 이동에 기반하여, 상기 아바타가 위치하는 가상 공간을 제 1 가상 공간으로부터 제 2 가상 공간으로 변경할 수 있다. 예를 들어, 도 9에서, 프로세서(120)는, 사용자에 대응하는 아바타의 이동에 의해, 아바타가 위치하는 가상 공간을, 화면(910)과 같이 실내를 나타내는 제 1 가상 공간으로부터, 화면(920)과 같이 실외를 나타내는 제 2 가상 공간으로 변경할 수 있다.
일 실시예에서, 프로세서(120)는, 사용자에 대응하는 아바타의 이동에 기반하여, VR 컨텐츠의 가상 공간이 변경되는지 여부를 확인할 수 있다.
일 실시예에서, 프로세서(120)는, VR 컨텐츠(예: VR 게임) 내에서 씬(scene), 스테이지(stage), 또는 시나리오(scenario)의 변경에 따라, VR 컨텐츠의 가상 공간을 변경할 수 있다.
일 실시예에서, 프로세서(120)는, VR 컨텐츠 내에서 씬, 스테이지, 또는 시나리오의 변경에 기반하여, VR 컨텐츠의 가상 공간이 변경되는지 여부를 확인할 수 있다.
일 실시예에서, 프로세서(120)는, 사용자 입력에 기반하여, 상기 아바타가 위치하는 가상 공간이 제 1 가상 공간으로부터 제 2 가상 공간으로 순간적으로 변경되도록 할 수 있다.
일 실시예에서, 전술한 가상 공간의 변경은, 사용자에 대응하는 아바타의 위치 및/또는 상기 아바타의 시점에서 보이는 가상 공간의, 급격한(또는 순간적인) 변경을 포함할 수 있다.
동작 809에서 VR 컨텐츠의 가상 공간이 변경됨이 확인된 경우, 동작 811에서, 일 실시예에서, 프로세서(120)는 타이머를 초기화할 수 있다.
일 실시예에서, 프로세서(120)는, VR 컨텐츠의 가상 공간이 변경됨이 확인된 경우(예: 사용자에 대응하는 아바타가 이전 가상 공간과 다른 가상 공간에 위치함을 확인한 경우), 타이머에 설정되는 시간을 타이머에 현재 설정된 시간(예: 타이머가 카운팅할 남은 시간)으로부터 타이머의 초기 설정 시간으로 변경(예: 타이머를 초기화)할 수 있다. 예를 들어, 프로세서(120)는, 타이머의 초기 설정 시간이 1000초이고 타이머의 현재 설정된 시간이 995초인 경우, 타이머의 설정 시간을 초기 설정 시간 1000초로 설정할 수 있다.
일 실시예에서, 프로세서(120)는 타이머를 초기화한 후, 동작 803을 수행할 수 있다. 예를 들어, 프로세서(120)는, 타이머를 초기화한 후 타이머에 설정된 시간에 대한 카운팅을 다시 시작할 수 있다.
동작 809에서 VR 컨텐츠의 가상 공간이 변경되지 않음을 확인된 경우, 동작 813에서, 일 실시예에서, 프로세서(120)는 타이머가 만료되는지 여부를 확인할 수 있다.
동작 813에서 타이머가 만료되는지 않은 경우, 일 실시예에서, 프로세서(120)는, 동작 805를 수행할 수 있다. 예를 들어, 프로세서(120)는, 타이머가 만료되지 않은 경우, 타이머가 현재 설정된 시간에 대한 카운팅을 수행하는 동안 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동을 검출할 수 있다.
도 8에 도시하지는 않았지만, 일 실시예에서, 프로세서(120)는, VR 컨텐츠의 변경된 가상 공간이 사용자에 대응하는 아바타가 이전에 위치하였던 제 1 가상 공간임을 확인한 경우, 상기 제 1 가상 공간으로부터 상기 가상 공간과 다른 가상 공간으로 변경되었던 제 1 시점에 타이머에 설정된 시간(예: 상기 제 1 시점에 타이머에 남은 시간)을, 타미머의 시간(예: 타이머가 카운팅할 남은 시간)으로 설정할 수 있다. 예를 들어, 사용자에 대응하는 아바타가 제 1 가상 공간으로부터 제 2 가상 공간으로 이동하는 제 1 시점에 타이머에 설정된 시간은 300초일 수 있다. 사용자에 대응하는 아바타가 제 2 가상 공간으로부터 다시 제 1 가상 공간으로 이동된 경우, 프로세서(120)는, 제 1 가상 공간으로부터 제 2 가상 공간으로 이동하는 시점에 타이머에 설정되었던 남은 시간 300초를 타이머가 카운팅할 시간으로 설정할 수 있다.
일 실시예에서, 프로세서(120)는, VR 컨텐츠의 변경된 가상 공간이 사용자에 대응하는 아바타가 이전에 위치하였던 제 1 가상 공간임을 확인한 경우, 및 제 1 가상 공간으로부터 상기 가상 공간과 다른 가상 공간으로 변경되었던 제 1 시점으로부터 지정된 시간이 경과한 후 다시 제 1 가상 공간으로 가상 공간이 변경된 경우, 타이머의 시간을 타이머의 초기 설정 시간으로 설정(예: 타이머를 초기화)할 수 있다.
일 실시예에서, 프로세서(120)는, VR 컨텐츠의 변경된 가상 공간이 사용자에 대응하는 아바타가 이전에 위치하였던 제 1 가상 공간임을 확인한 경우, 및 제 1 가상 공간으로부터 상기 가상 공간과 다른 가상 공간으로 변경되었던 제 1 시점으로부터 지정된 시간이 경과하기 전 다시 제 1 가상 공간으로 가상 공간이 변경된 경우, 이전에 제 1 가상 공간으로부터 제 1 가상 공간과 다른 가상 공간으로 변경되었던 시점에 타이머에 설정되었던 시간을, 타미머의 시간으로 설정할 수 있다.
도 10은, 일 실시 예에 따른, 타이머에 설정된 시간에 기반하여 비네팅 영역을 결정하는 방법을 설명하기 위한 흐름도(1000)이다.
도 10을 참조하면, 동작 1001에서, 일 실시예에서, 프로세서(120)는, 타이머를 초기화할 수 있다. 예를 들어, 프로세서(120)는, VR 어플리케이션이 실행됨으로써 VR 컨텐츠를 표시하는 경우 또는 전술한 바와 같이 가상 공간이 변경된 경우, 타이머에 비네팅 기능이 수행되도록 설정된 시간(예: 타이머의 초기 설정 시간)을 설정할 수 있다.
동작 1003에서, 일 실시예에서, 프로세서(120)는, VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동이 검출되는 동안, 타이머에 설정된 시간에 대한 카운팅을 시작할 수 있다. 다만, 이에 제한되지 않으며, 프로세서(120)는, VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동이 검출되지 않는 시간에도, 타이머에 설정된 시간을 카운팅을 계속적으로 수행할 수 있다.
동작 1005에서, 일 실시예에서, 프로세서(120)는, 타이머에 설정된 현재 시간에 기반하여, 비네팅 영역을 결정할 수 있다.
일 실시예에서, 프로세서(120)는, 타이머에 설정된 현재 시간이 속하는 시간 구간에 기반하여, 비네팅 영역을 결정할 수 있다.
일 실시예에서, 프로세서(120)는 타이머의 초기 설정 시간을 복수의 시간 구간들로 분류할 수 있다. 예를 들어, 프로세서(120)는, 타이머의 최초 설정 시간이 1000초인 경우, 1000초를 10개의 100초의 시간 구간들로 분류할 수 있다.
일 실시예에서, 프로세서(120)는, 타이머에 설정된 현재 시간이 속하는 시간 구간에 대응하는 비네팅 영역의 크기(또는 화면에 대한 비네팅 영역의 비율)를 가진 비네팅 영역을, 디스플레이(221)를 통하여 표시될 화면에 적용할 것을 결정할 수 있다. 예를 들어, 프로세서(120)는, 타이머의 초기 설정 시간이 10개의 100초의 시간 구간들로 분류되는 1000초인 경우, 타이머에 설정된 현재 설정된 시간이 제 1 시간 구간(예: 900초 내지 1000초의 시간 구간)에 해당하면 화면(예: 화면의 면적)의 대한 비네팅 영역(예: 비네팅 영역의 면적)의 비율이 약 50%인 비네팅 영역을 디스플레이(221)를 통하여 표시될 화면에 적용할 것을 결정할 수 있다. 프로세서(120)는, 제 2 시간 구간(예: 800초 내지 900초의 시간 구간)에 해당하면 화면(예: 화면의 면적)의 대한 비네팅 영역(예: 비네팅 영역의 면적)의 비율이 약 40%인 비네팅 영역을 디스플레이(221)를 통하여 표시될 화면에 적용할 것을 결정할 수 있다. 프로세서(120)는, 제 3 시간 구간(예: 700초 내지 800초의 시간 구간)에 해당하면 화면(예: 화면의 면적)의 대한 비네팅 영역(예: 비네팅 영역의 면적)의 비율이 약 30%인 비네팅 영역을 디스플레이(221)를 통하여 표시될 화면에 적용할 것을 결정할 수 있다. 일 실시예에서, 전술한 바와 같이, 프로세서(120)는, 타이머에 설정된 시간이 흐름에 따라 타이머에 설정된 현재 시간이 속하는 시간 구간을 확인하고, 확인된 시간 구간에 대응하는 비네팅 영역의 크기(또는 화면에 대한 비네팅 영역의 비율)가 감소되는 비네팅 영역을, 디스플레이(221)를 통하여 표시될 화면에 적용할 것을 결정할 수 있다.
동작 1007에서, 일 실시예에서, 프로세서(120)는, 상기 결정된 비네팅 영역에 기반하여, 디스플레이(221)를 통하여 표시될 VR 컨텐츠의 화면에 비네팅 효과를 적용할 수 있다. 프로세서(120)는, 디스플레이(221)를 통하여, 비네팅 효과가 적용된 VR 컨텐츠의 화면을 표시할 수 있다.
도 11은, 일 실시 예에 따른, 아바타의 이동 속도에 기반하여 비네팅 영역을 결정하는 방법을 설명하기 위한 흐름도(1100)이다.
도 11을 참조하면, 동작 1101에서, 일 실시예에서, 프로세서(120)는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동 속도를 결정할 수 있다.
일 실시예에서, 프로세서(120)는, 전자 장치(101)와 무선으로(또는 유선으로) 연결된 컨트롤러(예: 조이스틱, 키보드, 마우스)(또는 입력 모듈)에 대한 입력에 기반하여, 전자 장치(101)를 통하여 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타를 이동시킬 수 있다. 프로세서(120)는, 상기 입력에 따라, 가상 공간 내에서 사용자에 대응하는 아바타를 다른 속도로 이동시킬 수 있다. 예를 들어, 프로세서(120)는, 상기 컨트롤러에 대한 제 1 입력에 기반하여, 가상 공간 내에서 사용자에 대응하는 아바타를 제 1 속도로 이동시킬 수 있다. 프로세서(120)는, 상기 컨트롤러에 대한 제 2 입력에 기반하여, 가상 공간 내에서 사용자에 대응하는 아바타를 제 1 속도 보다 빠르거나(또는 느린) 제 2 속도로 이동시킬 수 있다. 프로세서(120)는, 상기 입력에 기반하여, 가상 공간에서 사용자에 대응하는 아바타의 이동 속도(예: 아바타의 위치가 변경되는 속도)를 결정할 수 있다.
일 실시예에서, 프로세서(120)는, VR 컨텐츠의 가상 공간에서 오브젝트의 이동의 의해 사용자에 대응하는 아바타를 이동시킬 수 있다. 예를 들어, VR 컨텐츠에서 사용자에 대응하는 아바타는, 상기 아바타를 이동시킬 수 있는 가상 이동 수단(예: 가상 차량, 가상 비행기, 가상 롤러코스터)에 탑승할 수 있다. 프로세서(120)는, 상기 가상 이동 수단을 이동시키는 입력이 획득된 경우, 가상 이동 수단과 함께, 상가 가상 이동 수단에 탑승한 상기 아바타를 이동시킬 수 있다. 프로세서(120)는, 상기 아바타가 탑승한 상기 가상 이동 수단의 이동 속도를, VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동 속도를 결정할 수 있다. 일 실시예에서, 프로세서(120)는, 상기 가상 이동 수단 및/또는 상기 아바타를 이동시키기 위한 입력에 기반하여, 가상 공간에서 사용자에 대응하는 아바타의 이동 속도를 결정할 수 있다.
동작 1103에서, 일 실시예에서, 프로세서(120)는, 아바타의 이동 속도에 기반하여, 비네팅 영역(예: 비네팅 영역의 크기)을 결정할 수 있다.
일 실시예에서, 프로세서(120)는, 사용자에 대응하는 아바타의 이동 속도가 속하는 속도 범위에 기반하여, 비네팅 영역을 결정할 수 있다. 예를 들어, 프로세서(120)는, 사용자에 대응하는 아바타의 이동 속도가 제 1 속도 범위에 포함된 경우, 화면에 대한 비네팅 영역의 비율이 약 80%가 되도록, 비네팅 영역을 결정할 수 있다. 프로세서(120)는, 사용자에 대응하는 아바타의 이동 속도가 제 2 속도 범위(예: 제 2 속도 범위의 최대 속도가 제 1 속도 범위의 최소 속도 보다 작은, 제 2 속도 범위)에 포함된 경우, 화면에 대한 비네팅 영역의 비율이 약 50%가 되도록, 비네팅 영역을 결정할 수 있다.
일 실시예에서, 프로세서(120)는, 사용자에 대응하는 아바타의 이동 속도에 기반하여, 비네팅 영역의 크기를 증가 또는 축소시킬 수 있다. 예를 들어, 프로세서(120)는, 사용자에 대응하는 아바타의 이동 속도가 빨라지는 경우, 비네팅 영역의 크기를 증가시킬 수 있다. 예를 들어, 프로세서(120)는, 사용자에 대응하는 아바타의 이동 속도가 감소되는 경우, 비네팅 영역을 감소시킬 수 있다.
일 실시예에서, 프로세서(120)는, 사용자에 대응하는 아바타의 이동 속도가 지정된 속도 이상인지 여부에 기반하여, 비네팅 영역의 크기를 결정할 수 있다. 예를 들어, 프로세서(120)는, 사용자에 대응하는 아바타의 이동 속도가 지정된 속도 이상인 경우, 화면에 대한 비네팅 영역의 비율이 약 80%가 되도록, 비네팅 영역을 결정할 수 있다. 프로세서(120)는, 사용자에 대응하는 아바타의 이동 속도가 지정된 속도 미만인 경우, 화면에 대한 비네팅 영역의 비율이 약 50%가 되도록, 비네팅 영역을 결정할 수 있다.
일 실시예에서, 프로세서(120)는, 사용자에 대응하는 아바타의 이동 속도에 기반하여, 비네팅 효과를 적용할지 여부를 결정할 수 있다. 예를 들어, 프로세서(120)는, 사용자에 대응하는 아바타의 이동 속도가 지정된 속도 이상인 경우, 화면에 대하여 비네팅 효과를 적용할 것을 결정할 수 있다. 프로세서(120)는, 사용자에 대응하는 아바타의 이동 속도가 지정된 속도 미만인 경우, 화면에 대하여 비네팅 효과를 적용하지 않을 것을 결정할 수 있다.
일 실시예에서, 프로세서(120)는, 사용자에 대응하는 아바타의 이동 속도의 증가 또는 감소에 비례하여 비네팅 영역의 크기가 증가 또는 축소되도록, 비네팅 영역을 결정할 수 있다.
동작 1105에서, 일 실시예에서, 프로세서(120)는, 상기 결정된 비네팅 영역에 기반하여, 디스플레이(221)를 통하여 표시될 VR 컨텐츠의 화면에 비네팅 효과를 적용할 수 있다. 프로세서(120)는, 디스플레이(221)를 통하여, 비네팅 효과가 적용된 VR 컨텐츠의 화면을 표시할 수 있다.
도 12는, 일 실시 예에 따른, 사용자의 움직임에 기반하여 비네팅 효과를 적용하는 방법을 설명하기 위한 흐름도(1200)이다.
도 12를 참조하면, 동작 1201에서, 일 실시예에서, 프로세서(120)는, 사용자에 대응하는 아바타의 이동이 사용자의 움직임에 대응하는지 여부를 확인할 수 있다.
일 실시예에서, 프로세서(120)는, 전자 장치(101)와 무선으로(또는 유선으로) 연결된 컨트롤러(예: 조이스틱, 키보드, 마우스)에 대한 입력에 기반하여, 전자 장치(101)를 통하여 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타를 이동시킬 수 있다.
일 실시예에서, 프로세서(120)는, 전자 장치(101)에 포함된 입력 모듈(예: 터치 패드, 키(key), 버튼(button))에 대한 입력에 기반하여, 전자 장치(101)를 통하여 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타를 이동시킬 수 있다.
일 실시예에서, 프로세서(120)는, VR 컨텐츠의 가상 공간에서 오브젝트의 이동의 의해 사용자에 대응하는 아바타를 이동시킬 수 있다. 예를 들어, VR 컨텐츠에서 사용자에 대응하는 아바타는, 상기 아바타를 이동시킬 수 있는 가상 이동 수단(예: 가상 차량, 가상 비행기, 가상 롤러코스터)에 탑승할 수 있다. 프로세서(120)는, 상기 가상 이동 수단을 이동시키는 입력이 획득된 경우, 가상 이동 수단과 함께, 상기 가상 이동 수단에 탑승한 상기 아바타를 이동시킬 수 있다.
다만, 전술한 아바타를 이동시키는 예시들은, 사용자가 실제 이동을 위한 행위를 수행함 없이(예: 사용자의 위치가 변경됨 없이), VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타를 이동시키는 예시들일 수 있다.
일 실시예에서, 프로세서(120)는, 센서(예: 6DOF(degree of freedom)를 지원하는 센서)를 통하여, 사용자의 움직임에 대응하는 전자 장치(101)의 움직임을 검출할 수 있다. 예를 들어, 사용자의 위치가 변경되는 경우, 프로세서(120)는, 상기 센서를 통하여, 사용자에 착용된 전자 장치(101)의 위치가 변경됨을 확인할 수 있다.
일 실시예에서, 프로세서(120)는, 외부 센서를 통하여, 사용자에 대응하는 아바타를 이동시킬 수 있는 사용자의 움직임을 검출할 수 있다. 예를 들어, 사용자는, 전자 장치(101)를 머리에 착용하고, 사용자의 실제 이동 없이(예: 사용자가 실질적으로 제자리에서) 사용자의 걷는 동작(또는 뛰는 동작)을 감지하는 외부 센서(및 사용자가 걷는 동작을 수행하는 동안 사용자가 제자리에 머물도록 회전하는 전동 바퀴)를 포함하는 VR 신발(또는 VR 부츠)를 발(또는 다리)에 착용할 수 있다. 프로세서(120)는, VR 컨텐츠가 제공되는 동안, 통신 모듈(190)을 통하여, 상기 VR 신발에 포함된 외부 센서로부터 사용자의 걷는 동작에 대한 정보를 수신할 수 있다. 프로세서(120)는, 상기 정보에 기반하여, 상기 사용자의 걷는 동작에 대응하는 사용자에 대응하는 아바타를 이동시킬 수 있다. 예를 들어, 프로세서(120)는, 사용자가 VR 런닝 머신(VR 트레드밀) 상에서 VR 컨텐츠를 이용하는 경우, VR 런닝 머신 상에서의 사용자의 움직임에 기반하여, 사용자에 대응하는 아바타를 이동시킬 수 있다.
일 실시예에서, 프로세서(120)는, 사용자의 움직임에 대응하는 전자 장치(101)의 움직임에 기반하여, VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타를 이동시킬 수 있다. 예를 들어, 프로세서(120)는, 전자 장치(101)가 이동하는 방향 및/거리에 대응하는 방향 및/거리로, 사용자에 대응하는 아바타를 이동시킬 수 있다.
일 실시예에서, 사용자의 실제 이동에 대응하여 사용자에 대응하는 아바타가 이동된 경우는, 사용자가 멀미를 체감하지 않는 경우일 수 있다.
일 실시예에서, 프로세서(120)는, VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동이 발생한 경우, 상기 아바타의 이동이 사용자의 실제 이동에 의해 발생했는지 여부를 확인할 수 있다. 예를 들어, 프로세서(120)는, 사용자의 이동에 대응하는 전자 장치(101)의 이동에 기반하여, VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타가 이동하였는지 여부를 확인할 수 있다.
동작 1201에서 상기 아바타의 이동이 사용자의 움직임에 대응하지 않는 경우, 동작 1203에서, 일 실시예에서, 프로세서(120)는 디스플레이(221)를 통하여 표시될 VR 컨텐츠의 화면에 대하여 비네팅 효과를 적용할 수 있다.
동작 1201에서 상기 아바타의 이동이 사용자의 움직임에 대응하는 경우, 일 실시예에서, 프로세서(120)는 디스플레이(221)를 통하여 표시될 VR 컨텐츠의 화면에 대하여 비네팅 효과를 적용하지 않을 수 있다.
일 실시예에서, 프로세서(120)는, 타이머에 설정된 시간에 대한 카운팅이 수행되는 동안, 사용자에 대응하는 아바타의 이동이 사용자의 움직임에 대응함을 확인한 경우, 사용자의 움직임에 기반하여 상기 아바타가 이동하는 시간 동안, 타이머의 카운팅 동작을 일시 중단시킬 수 있다. 타이머의 카운팅 동작이 일시 중단된 후, 프로세서(120)는, 사용자의 움직임(예: 사용자의 실제 이동 동작)에 대응하지 않는 상기 아바타의 이동이 검출된 경우(또는 사용자의 움직임 없이 상기 아바타의 이동이 검출된 경우), 일시 중단되었던 타이머가 카운팅 동작을 수행하도록 할 수 있다.
일 실시예에서, 전자 장치(101)가 6DOF를 지원하는 센서를 포함하지 않는 경우(예: 전자 장치(101)가 3DOF를 지원하는 센서만을 포함하는 경우), 전자 장치(101)가 전자 장치(101)를 착용한 사용자의 머리의 회전 움직임을 센싱하는 반면 상기 사용자의 위치 변경은 센싱할 수 없기 때문에, 사용자에 대응하는 아바타의 움직임이 발생하는 경우, 사용자의 이동과 무관하게, 비네팅 효과를 적용할 수 있다.
도 13은, 일 실시 예에 따른, 가상 공간의 지정된 범위에 대한 아바타의 이동에 기반하여 비네팅 효과를 적용하는 방법을 설명하기 위한 예시도(1300)이다.
도 13을 참조하면, 일 실시예에서, 프로세서(120)는, 사용자에 대응하는 아바타의 이동이 가상 공간의 지정된 범위(또는 지정된 바운더리(boundary)) 내에서 발생한 경우, 디스플레이(221)를 통하여 표시되는 VR 컨텐츠의 화면에 대하여 비네팅 효과를 적용하지 않을 수 있다. 일 실시예에서, 가상 공간의 지정된 범위는 아바타의 현재 위치를 기준으로 하는 지정될 수 있다.
일 실시예에서, 도 13에 도시된 바와 같이, 프로세서(120)는, 사용자에 대응하는 아바타(1311)가 가상 공간 내에서 지정된 범위(예: 라인(1312) 내부 영역) 내에서 이동하는 경우, VR 컨텐츠의 화면에 대하여 비네팅 효과를 적용하지 않을 수 있다. 예를 들어, 프로세서(120)는, 가상 공간 내에서 사용자에 대응하는 아바타(1311)가 연속적으로 이동할 위치(예: 컨트롤러를 통한 한 번의 입력에 의해 아바타(1311)가 이동할 위치)가, 가상 공간 내에서 아바타(1311)의 현재 위치를 기준으로 지정된 범위(예: 라인(1312) 내부 영역) 내에서 포함된 경우, VR 컨텐츠의 화면에 대하여 비네팅 효과를 적용하지 않을 수 있다. 프로세서(120)는, 가상 공간 내에서 사용자에 대응하는 아바타(1311)가 연속적으로 이동할 위치가, 가상 공간 내에서 아바타(1311)의 현재 위치를 기준으로 지정된 범위 외부에 포함된 경우, VR 컨텐츠의 화면에 대하여 비네팅 효과를 적용할 수 있다.
일 실시예에서, 프로세서(120)는, 가상 공간 내에서 사용자에 대응하는 아바타가 연속적으로 이동할 거리(예: 컨트롤러를 통한 한 번의 입력에 의해 아바타(1311)가 이동할 거리)가 지정된 거리 이하인 경우, VR 컨텐츠의 화면에 대하여 비네팅 효과를 적용하지 않을 수 있다. 프로세서(120)는, 가상 공간 내에서 사용자에 대응하는 아바타가 연속적으로 이동할 거리가 지정된 거리를 초과하는 경우, VR 컨텐츠의 화면에 대하여 비네팅 효과를 적용할 수 있다.
도 14는, 일 실시 예에 따른, 사용자의 멀미 정도에 기반하여 비네팅 기능을 제어하는 방법을 설명하기 위한 흐름도(1400)이다.
도 14를 참조하면, 동작 1401에서, 일 실시예에서, 프로세서(120)는, 생체 센서를 통하여, 전자 장치(101)를 착용한 사용자의 생체 신호를 획득할 수 있다.
일 실시예에서, 프로세서(120)는, 생체 센서를 통하여, 멀미(VR 멀미)와 관련된 사용자의 생체 신호를 획득할 수 있다. 예를 들어, 프로세서(120)는, 생체 센서를 통하여, 뇌파(Electroencephalogram, EEG) 신호, 심장 박동수(heart rate; HR), 근전도(Electromyography; EMG) 신호, 및/또는 사용자의 눈동자의 움직임과 같이, 멀미와 관련된 사용자의 생체 신호를 획득할 수 있다. 다만, 멀미와 관련된 사용자의 생체 신호는 전술한 예시들에 제한되지 않는다.
동작 1403에서, 일 실시예에서, 프로세서(120)는, 생체 신호에 기반하여, 비네팅 기능을 제어할 수 있다.
일 실시예에서, 프로세서(120)는, 상기 생체 신호에 기반하여, 사용자의 멀미 정도(예: 멀미와 관련된 인덱스(index), 멀미와 관련된 레벨(level))를 결정할 수 있다.
일 실시예에서, 프로세서(120)는, 사용자의 멀미 정도에 기반하여, 비네팅 기능을 제어할 수 있다.
일 실시예에서, 프로세서(120)는, VR 컨텐츠가 제공되는 동안, 사용자의 멀미 정도가 지정된 정도 이상인 경우, 비네팅 기능을 강화할 수 있다. 예를 들어, 프로세서(120)는, VR 컨텐츠가 제공되는 동안, 사용자의 멀미 정도가 지정된 정도 이상인 경우, 비네팅 영역의 크기를 증가시킬 수 있다. 예를 들어, 프로세서(120)는, VR 컨텐츠가 제공되는 동안, 사용자의 멀미 정도가 지정된 정도 이상인 경우, 타이머에 현재 설정된 시간(예: 타이머가 카운팅할 시간)을 증가시킬 수 있다.
일 실시예에서, 프로세서(120)는, VR 컨텐츠가 제공되는 동안, 사용자의 멀미 정도가 지정된 정도 미만인 경우, 비네팅 기능을 약화할 수 있다. 예를 들어, 프로세서(120)는, VR 컨텐츠가 제공되는 동안, 사용자의 멀미 정도가 지정된 정도 미만인 경우, 비네팅 영역의 크기를 축소시킬 수 있다. 예를 들어, 프로세서(120)는, VR 컨텐츠가 제공되는 동안, 사용자의 멀미 정도가 지정된 정도 이상인 경우, 타이머에 현재 설정된 시간을 감소시킬 수 있다. 다만, 이에 제한되지 않으며, 예를 들어, 프로세서(120)는, VR 컨텐츠가 제공되는 동안, 사용자의 멀미 정도가 지정된 정도 미만인 경우, 비네팅 기능을 비활성화할 수 잇다.
도 14에 도시하지는 않았지만, 일 실시예에서, 프로세서(120)는, 사용자의 멀미 정도에 대한 피드백(feedback)에 기반하여, 비네팅 기능을 제어할 수 있다. 예를 들어, 프로세서(120)는, VR 컨텐트가 제공되는 동안, 멀미를 느끼는지 여부를 사용자에게 문의하는 정보를 디스플레이(221)를 통하여 표시할 수 있다. 프로세서(120)는, 사용자로부터 멀미를 느낀다는 피드백에 기반하여, 비네팅 기능을 지속적으로 수행하거나 비네팅 기능을 강화할 수 있다. 프로세서(120)는, 사용자로부터 멀미를 느끼지 않는다는 피드백에 기반하여, 비네팅 기능을 종료하거나 비네팅 기능을 약화시킬 수 있다.
일 실시예에서, 프로세서(120)는, 도 14의 사용자의 멀미 정도에 기반하여 비네팅 기능을 제어하는 동작을, 아바타의 이동 속도가 지정된 속도 이상인 경우, 수행할 수 있다.
도 15는, 일 실시 예에 따른, 비네팅 기능을 설정하는 방법을 설명하기 위한 예시도(1500)이다.
도 15를 참조하면, 일 실시예에서, 프로세서(120)는, 어플리케이션(또는 프로그램) 별로 비네팅 기능을 설정하거나, 어플리케이션 전체에 대하여 비네팅 기능을 설정할 수 있다.
일 실시예에서, 도 15는 비네팅 기능을 설정하기 위한 화면을 나타낼 수 있다.
일 실시예에서, 프로세서(120)는, 디스플레이(221)를 통하여, 어플리케이션들 각각에 대하여 비네팅 기능을 온(on) 또는 오프(off)하기 위한 오브젝트들(1531, 1532, 1533, 1534, 1535, 1536, 1537, 1538) 및 어플리케이션들 전체의 비네팅 기능을 온 또는 오프하기 위한 오브젝트(1521)를 표시할 수 있다. 프로세서(120)는, 오브젝트들(1531, 1532, 1533, 1534, 1535, 1536, 1537, 1538) 중 적어도 하나에 대한 사용자 입력에 기반하여, 비네팅 기능을 온 또는 오프할 수 있다. 프로세서(120)는, 오브젝트(1521)에 대한 사용자 입력에 기반하여, 어플리케이션들 전체의 비네팅 기능을 온 또는 오프할 수 있다.
일 실시예에 따른 웨어러블 전자 장치(101)에서 비네팅 기능을 수행하는 방법은, VR 어플리케이션을 실행하는 동작을 포함할 수 있다. 상기 방법은, 상기 VR 어플리케이션이 실행되는 동안 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동을 검출하는 동작을 포함할 수 있다. 상기 방법은 상기 아바타의 이동이 검출됨에 기반하여, 상기 웨어러블 전자 장치(101)의 디스플레이(221)를 통하여, 변경 가능한 비네팅 효과가 적용된 상기 VR 컨텐츠의 화면을 표시할 수 있다.
일 실시예에서, 상기 방법은, 타이머에 설정된 시간에 대한 카운팅을 시작하는 동작 및 상기 카운팅을 수행하는 동안 상기 VR 컨텐츠의 상기 화면에 대하여 상기 비네팅 효과를 적용하는 동작을 더 포함할 수 있다.
일 실시예에서, 상기 비네팅 효과를 적용하는 동작은, 상기 카운팅을 수행하는 동안 상기 화면 내에서 상기 비네팅 효과가 적용되는 비네팅 영역을 점진적으로 축소시키는 동작을 포함할 수 있다.
일 실시예에서, 상기 방법은, 상기 가상 공간이 제 1 가상 공간으로부터 제 2 가상 공간으로 변경되는지 여부를 확인하는 동작 및 상기 가상 공간이 제 1 가상 공간으로부터 제 2 가상 공간으로 변경됨을 확인함에 기반하여, 상기 타이머를 초기화하는 동작을 더 포함할 수 있다.
일 실시예에서, 상기 비네팅 효과를 적용하는 동작은, 상기 타이머에 설정된 시간을 복수의 시간 구간들로 분류하는 동작, 복수의 시간 구간들 중에서 상기 타미어에 현재 설정된 시간이 속하는 시간 구간을 확인하는 동작, 및 상기 확인된 시간 구간에 대응하는 크기를 가진 비네팅 영역에 대하여 상기 비네팅 효과를 적용하는 동작을 포함할 수 있다.
일 실시예에서, 상기 비네팅 효과를 적용하는 동작은, 상기 아바타가 상기 가상 공간 내에서 이동하는 속도를 결정하는 동작 및 상기 결정된 속도에 기반하여, 상기 화면 내에서 상기 비네팅 효과가 적용되는 비네팅 영역을 결정하는 동작을 포함할 수 있다.
일 실시예에서, 상기 비네팅 효과를 적용하는 동작은, 상기 센서를 통하여 상기 사용자의 움직임을 검출하는 동작, 상기 아바타의 이동이 상기 사용자의 움직임에 대응하는지 여부를 확인하는 동작 및 상기 아바타의 이동이 상기 사용자의 움직임에 대응하지 않음을 확인함에 기반하여, 상기 비네팅 효과를 적용하는 동작을 포함하고, 상기 아바타의 이동이 상기 사용자의 움직임에 대응하는 경우 상기 비네팅 효과가 적용되지 않을 수 있다.
일 실시예에서, 상기 비네팅 효과를 적용하는 동작은, 상기 아바타의 이동이 상기 가상 공간의 지정된 범위 내에서 발생하는지 여부를 확인하는 동작 및 상기 아바타의 이동에 의해 상기 아바타가 상기 가상 공간의 상기 지정된 범위 외부로 이동함을 확인함에 기반하여 상기 비네팅 효과를 적용하는 동작을 포함하고, 상기 아바타의 이동이 상기 가상 공간의 지정된 범위 내에서 발생하는 경우, 상기 비네팅 효과가 적용되지 않을 수 있다.
일 실시예에서, 상기 방법은, 상기 사용자의 생체 신호를 획득하는 동작, 상기 생체 신호에 기반하여, 상기 사용자의 멀미 정도를 결정하는 동작, 및 상기 사용자의 멀미 정도에 기반하여, 비네팅 기능을 제어하는 동작을 더 포함할 수 있다.
일 실시예에서, 상기 아바타는 컨트롤러에 의해 이동되거나 상기 아바타가 상기 가상 공간에서 타는 가상 이동 수단에 의해 이동될 수 있다.
일 실시예에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 개시의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
본 개시의 일 실시예 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 본 개시에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.
본 문서의 일 실시예에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로와 같은 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일 실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.
본 문서의 일 실시예는 기기(machine)(예: 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 메모리(130))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(140))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(101))의 프로세서(예: 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, "비일시적"은 저장 매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일 실시예에 따르면, 본 문서에 개시된 일 실시예에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory(CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트 폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
일 실시예에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있으며, 복수의 개체 중 일부는 다른 구성요소에 분리 배치될 수도 있다. 일 실시예에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 일 실시예에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.
Claims (15)
- 웨어러블 전자 장치(101)에 있어서,디스플레이(221); 및상기 디스플레이(221)와 작동적으로 연결된 적어도 하나의 프로세서(120)를 포함하고,상기 적어도 하나의 프로세서(120)는,VR(virtual reality) 어플리케이션을 실행하고,상기 VR 어플리케이션이 실행되는 동안 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타(avatar)의 이동을 검출하고, 및상기 아바타의 이동이 검출됨에 기반하여, 상기 디스플레이(221)를 통하여, 변경 가능한 비네팅(vignetting) 효과가 적용된 상기 VR 컨텐츠의 화면을 표시하도록 구성된 웨어러블 전자 장치(101).
- 제 1 항에 있어서,상기 적어도 하나의 프로세서(120)는,타이머에 설정된 시간에 대한 카운팅(counting)을 시작하고, 및상기 카운팅을 수행하는 동안 상기 VR 컨텐츠의 상기 화면에 대하여 상기 비네팅 효과를 적용하도록 구성된 웨어러블 전자 장치(101).
- 제 1 항 또는 제 2 항에 있어서,상기 적어도 하나의 프로세서(120)는,상기 카운팅을 수행하는 동안 상기 화면 내에서 상기 비네팅 효과가 적용되는 비네팅 영역을 점진적으로 축소시키도록 구성된 웨어러블 전자 장치(101).
- 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,상기 적어도 하나의 프로세서(120)는,상기 가상 공간이 제 1 가상 공간으로부터 제 2 가상 공간으로 변경되는지 여부를 확인하고, 및상기 가상 공간이 제 1 가상 공간으로부터 제 2 가상 공간으로 변경됨을 확인함에 기반하여, 상기 타이머를 초기화하도록 구성된 웨어러블 전자 장치(101).
- 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,상기 적어도 하나의 프로세서(120)는,상기 타이머에 설정된 시간을 복수의 시간 구간들로 분류하고,복수의 시간 구간들 중에서 상기 타미어에 현재 설정된 시간이 속하는 시간 구간을 확인하고, 및상기 확인된 시간 구간에 대응하는 크기를 가진 비네팅 영역에 대하여 상기 비네팅 효과를 적용하도록 구성된 웨어러블 전자 장치(101).
- 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,상기 적어도 하나의 프로세서(120)는,상기 아바타가 상기 가상 공간 내에서 이동하는 속도를 결정하고, 및상기 결정된 속도에 기반하여, 상기 화면 내에서 상기 비네팅 효과가 적용되는 비네팅 영역을 결정하도록 구성된 웨어러블 전자 장치(101).
- 제 1 항 내지 제 6 항 중 어느 한 항에 있어서,센서를 더 포함하고,상기 적어도 하나의 프로세서(120)는,상기 센서를 통하여 상기 사용자의 움직임을 검출하고,상기 아바타의 이동이 상기 사용자의 움직임에 대응하는지 여부를 확인하고, 및상기 아바타의 이동이 상기 사용자의 움직임에 대응하지 않음을 확인함에 기반하여, 상기 비네팅 효과를 적용하도록 구성되고,상기 아바타의 이동이 상기 사용자의 움직임에 대응하는 경우 상기 비네팅 효과가 적용되지 않는 웨어러블 전자 장치(101).
- 제 1 항 내지 제 7 항 중 어느 한 항에 있어서,상기 적어도 하나의 프로세서(120)는,상기 아바타의 이동이 상기 가상 공간의 지정된 범위 내에서 발생하는지 여부를 확인하고, 및상기 아바타의 이동에 의해 상기 아바타가 상기 가상 공간의 상기 지정된 범위 외부로 이동함을 확인함에 기반하여 상기 비네팅 효과를 적용하도록 구성되고,상기 아바타의 이동이 상기 가상 공간의 지정된 범위 내에서 발생하는 경우, 상기 비네팅 효과가 적용되지 않는 웨어러블 전자 장치(101).
- 제 1 항 내지 제 8 항 중 어느 한 항에 있어서,상기 적어도 하나의 프로세서(120)는,상기 사용자의 생체 신호를 획득하고,상기 생체 신호에 기반하여, 상기 사용자의 멀미 정도를 결정하고, 및상기 사용자의 멀미 정도에 기반하여, 비네팅 기능을 제어하도록 구성된 웨어러블 전자 장치(101).
- 제 1 항 내지 제 9 항 중 어느 한 항에 있어서,상기 적어도 하나의 프로세서(120)는,상기 아바타의 이동은 컨트롤러에 의해 제어되거나 상기 아바타가 상기 가상 공간에서 타는(ride) 가상 이동 수단에 의해 제어되는 웨어러블 전자 장치(101).
- 웨어러블 전자 장치(101)에서 비네팅 기능을 수행하는 방법에 있어서,VR 어플리케이션을 실행하는 동작;상기 VR 어플리케이션이 실행되는 동안 표시되는 VR 컨텐츠의 가상 공간에서 사용자에 대응하는 아바타의 이동을 검출하는 동작; 및상기 아바타의 이동이 검출됨에 기반하여, 상기 웨어러블 전자 장치(101)의 디스플레이(221)를 통하여, 변경 가능한 비네팅 효과가 적용된 상기 VR 컨텐츠의 화면을 표시하는 동작을 포함하는 방법.
- 제 11 항에 있어서,타이머에 설정된 시간에 대한 카운팅을 시작하는 동작; 및상기 카운팅을 수행하는 동안 상기 VR 컨텐츠의 상기 화면에 대하여 상기 비네팅 효과를 적용하는 동작을 더 포함하는 방법.
- 제 11 항 또는 제 12 항에 있어서,상기 비네팅 효과를 적용하는 동작은,상기 카운팅을 수행하는 동안 상기 화면 내에서 상기 비네팅 효과가 적용되는 비네팅 영역을 점진적으로 축소시키는 동작을 포함하는 방법.
- 제 11 항 내지 제 13 항 중 어느 한 항에 있어서,상기 가상 공간이 제 1 가상 공간으로부터 제 2 가상 공간으로 변경되는지 여부를 확인하는 동작; 및상기 가상 공간이 제 1 가상 공간으로부터 제 2 가상 공간으로 변경됨을 확인함에 기반하여, 상기 타이머를 초기화하는 동작을 더 포함하는 방법.
- 제 11 항 내지 제 14 항 중 어느 한 항에 있어서,상기 비네팅 효과를 적용하는 동작은,상기 타이머에 설정된 시간을 복수의 시간 구간들로 분류하는 동작;복수의 시간 구간들 중에서 상기 타미어에 현재 설정된 시간이 속하는 시간 구간을 확인하는 동작; 및상기 확인된 시간 구간에 대응하는 크기를 가진 비네팅 영역에 대하여 상기 비네팅 효과를 적용하는 동작을 포함하는 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/364,876 US20240078642A1 (en) | 2022-09-01 | 2023-08-03 | Method for performing vignetting function and wearable electronic device supporting the same |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220110972A KR20240031770A (ko) | 2022-09-01 | 2022-09-01 | 비네팅 기능을 수행하는 방법 및 이를 지원하는 웨어러블 전자 장치 |
KR10-2022-0110972 | 2022-09-01 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US18/364,876 Continuation US20240078642A1 (en) | 2022-09-01 | 2023-08-03 | Method for performing vignetting function and wearable electronic device supporting the same |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024049005A1 true WO2024049005A1 (ko) | 2024-03-07 |
Family
ID=90098111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2023/010673 WO2024049005A1 (ko) | 2022-09-01 | 2023-07-24 | 비네팅 기능을 수행하는 방법 및 이를 지원하는 웨어러블 전자 장치 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR20240031770A (ko) |
WO (1) | WO2024049005A1 (ko) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101855863B1 (ko) * | 2017-10-18 | 2018-05-09 | (주)이노시뮬레이션 | 멀미를 방지하는 실시간 시뮬레이션 시스템 |
KR20190027354A (ko) * | 2016-04-08 | 2019-03-14 | 비짜리오 인코포레이티드 | 비전 성능 데이터를 획득, 분석 및 생성하고 비전 성능 데이터에 기반하여 미디어를 수정하기 위한 방법 및 시스템 |
KR102097908B1 (ko) * | 2019-07-25 | 2020-05-27 | 남성모 | 대상체 촬영시스템 |
KR102316327B1 (ko) * | 2017-04-04 | 2021-10-22 | 엘지전자 주식회사 | 가상 공간의 캡쳐 방법 및 그 전자장치 |
KR20220078192A (ko) * | 2020-12-03 | 2022-06-10 | 삼성전자주식회사 | 플랙서블 전자 장치 및 이의 아바타 서비스 운용 방법 |
-
2022
- 2022-09-01 KR KR1020220110972A patent/KR20240031770A/ko unknown
-
2023
- 2023-07-24 WO PCT/KR2023/010673 patent/WO2024049005A1/ko unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190027354A (ko) * | 2016-04-08 | 2019-03-14 | 비짜리오 인코포레이티드 | 비전 성능 데이터를 획득, 분석 및 생성하고 비전 성능 데이터에 기반하여 미디어를 수정하기 위한 방법 및 시스템 |
KR102316327B1 (ko) * | 2017-04-04 | 2021-10-22 | 엘지전자 주식회사 | 가상 공간의 캡쳐 방법 및 그 전자장치 |
KR101855863B1 (ko) * | 2017-10-18 | 2018-05-09 | (주)이노시뮬레이션 | 멀미를 방지하는 실시간 시뮬레이션 시스템 |
KR102097908B1 (ko) * | 2019-07-25 | 2020-05-27 | 남성모 | 대상체 촬영시스템 |
KR20220078192A (ko) * | 2020-12-03 | 2022-06-10 | 삼성전자주식회사 | 플랙서블 전자 장치 및 이의 아바타 서비스 운용 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20240031770A (ko) | 2024-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022065722A1 (ko) | 외부 물체에 대한 알림을 디스플레이하는 전자 장치 및 그 방법 | |
WO2022131549A1 (ko) | 전자 장치 및 전자 장치의 동작 방법 | |
WO2022098204A1 (ko) | 가상현실 서비스를 제공하는 전자 장치 및 방법 | |
WO2022025444A1 (ko) | 화면을 표시하는 방법 및 그 장치 | |
WO2022059968A1 (ko) | 증강 현실 콘텐츠를 제공하는 전자 장치 및 그의 동작 방법 | |
WO2023132459A1 (ko) | Ar 객체를 표시하는 전자 장치 및 그 방법 | |
WO2023008854A1 (ko) | 디스플레이 내장형 광학 센서를 포함하는 전자 장치 | |
WO2022177166A1 (ko) | 화면 재생률을 제어하는 방법 및 이를 지원하는 전자 장치 | |
WO2024049005A1 (ko) | 비네팅 기능을 수행하는 방법 및 이를 지원하는 웨어러블 전자 장치 | |
WO2022124561A1 (ko) | 복수의 센서를 이용한 전자 장치의 제어 방법 및 그 전자 장치 | |
WO2020159320A1 (ko) | 밀리미터 웨이브를 이용한 객체 인식 방법 및 이를 지원하는 전자 장치 | |
WO2024058446A1 (ko) | 가상 현실 컨텐츠를 제어하는 방법 및 이를 지원하는 웨어러블 전자 장치 | |
WO2023048466A1 (ko) | 전자 장치 및 컨텐츠 표시 방법 | |
WO2024071718A1 (ko) | 증강현실 기능을 지원하는 전자 장치 및 이의 동작 방법 | |
WO2024043519A1 (ko) | 복수의 디스플레이들을 제어하는 방법 및 이를 지원하는 전자 장치 | |
WO2024058434A1 (ko) | 사용자의 외부 환경을 촬영하는 컨트롤 장치 및 그 동작 방법 및 컨트롤 장치와 연결된 머리 착용형 전자 장치 | |
WO2024049178A1 (ko) | 하나 이상의 외부 객체들 중 적어도 하나의 외부 객체의 표시를 제어하기 위한 전자 장치 및 방법 | |
WO2024063253A1 (ko) | 카메라로부터 획득한 이미지 내에 포함된 복수의 영역들 각각의 해상도들을 제어하기 위한 전자 장치 및 그 방법 | |
WO2023003224A1 (ko) | 증강 현실 또는 가상 현실을 제공하는 전자 장치 및 전자 장치의 동작 방법 | |
WO2022050638A1 (ko) | 디스플레이의 설정 변경 방법 및 전자 장치 | |
WO2024063330A1 (ko) | 웨어러블 전자 장치 및 상기 웨어러블 전자 장치를 이용하여 컨트롤러를 식별하는 방법 | |
WO2024085436A1 (ko) | 진동을 제공하는 방법 및 이를 지원하는 웨어러블 전자 장치 | |
WO2024010220A1 (ko) | 거리 센서 활성화 방법 및 전자 장치 | |
WO2022231160A1 (ko) | 손 제스처에 기반하여 기능을 실행하는 전자 장치 및 그 작동 방법 | |
WO2024029740A1 (ko) | 입력 장치를 이용하여 드로잉 데이터를 출력하는 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23860687 Country of ref document: EP Kind code of ref document: A1 |