Method for providing three-dimensional object, and electronic device for supporting same

By determining the start position of 3D object animations based on crosstalk prevention and object type/movement, the method enhances three-dimensional displays by preventing image overlap and maximizing animation effect.

WO2026024085A1PCT designated stage Publication Date: 2026-01-29SAMSUNG ELECTRONICS CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/KR2025/010892
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-08-21
Filing Date
2025-07-23
Publication Date
2026-01-29

AI Technical Summary

Technical Problem

Crosstalk occurs in three-dimensional animations due to overlapping left and right images, and the animation effect is not maximized without considering the type and movement of the 3D object, leading to suboptimal user experience.

Method used

The method determines the start position of a three-dimensional object's animation by considering the range of potential crosstalk and the object's type and movement, using a virtual plane and 3D coordinate system based on user input to prevent crosstalk and enhance animation effect.

Benefits of technology

Prevents crosstalk and maximizes the animation effect by optimizing the start position of 3D object animations, ensuring clear and immersive three-dimensional displays without double images.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2025010892_29012026_PF_FP_ABST
    Figure KR2025010892_29012026_PF_FP_ABST
Patent Text Reader

Abstract

An electronic device according to one embodiment may comprise: a display capable of displaying a 3D image by using autostereoscopy; at least one processor including a processing circuit; and a memory for storing instructions. When executed individually or collectively by the at least one processor, the instructions can instruct the electronic device to: display, in a 2D form, through the display, a first screen including a first object in which a first animation can be executed; generate a virtual plane and a 3D coordinate system on the basis of a user input for the first object; arrange, on the generated virtual plane, a second screen including an area that excludes the first object in the first screen; and, on the basis of the size of the movement of the first object on a first axis of the 3D coordinate system and / or the size of the first object, which corresponds to the depth when the first animation is executed, and the depth at which crosstalk can occur from the display, determine a first position of the first object, which includes first coordinates on the first axis at which the first animation is to be start, and / or a second position of the virtual plane, which includes second coordinates on the first axis at which the virtual plane is to be displayed.
Need to check novelty before this filing date? Find Prior Art

Description

Method for providing a three-dimensional object and electronic device supporting the same

[0001] The present disclosure relates to a method for providing a three-dimensional object and an electronic device supporting the same.

[0002] Electronic devices can provide three-dimensional images (e.g., three-dimensional stereoscopic images). For example, the electronic devices can provide three-dimensional images using glasses (e.g., shutter glasses, polarized glasses) or using a glasses-free method.

[0003] The glasses-free method may be a method of implementing a 3D screen by using a lenticular lens or parallax barrier placed in front of the display to allow the user's left and right eyes to see different image information.

[0004] Electronic devices can convey the user's emotions (and / or intentions) to a counterpart (e.g., the counterpart's electronic device) using objects (e.g., emoticons) while an application (e.g., a messenger application) is running. Electronic devices can provide three-dimensional objects (e.g., stereoscopic objects) through a display using a glasses-free method.

[0005] The above information may be provided as background art to aid in understanding the present disclosure. No claim or determination is made as to whether any of the above-described matters constitute prior art related to the present disclosure.

[0006] An electronic device can display a three-dimensional object that can be executed as an animation (e.g., a three-dimensional animation) through a display using a glasses-free method. The three-dimensional object can move and rotate in three-dimensional space when executed (played) as an animation within the electronic device. Furthermore, the three-dimensional object can change size in three-dimensional space when executed as an animation.

[0007] While the above 3D object is being executed as an animation within the electronic device, crosstalk may occur, in which the left and right images overlap and appear to overlap in the user's left and right eyes, respectively, due to movement, rotation, and / or size changes of the 3D object. In the present invention, crosstalk is defined to include all instances where the 3D image appears as a double image due to separation in any form, such as when the 3D image is displayed outside the field of view or outside the limits of the stereoscopic expression range.

[0008] In addition, since the animation of the 3D object starts at a set location within a 3D space set in the electronic device without considering the type of the 3D object (e.g., the emotion expressed by the object and the type according to the movement of the object), the effect of the animation may not be maximized.

[0009] Various embodiments of the present disclosure relate to a method for providing a three-dimensional object and an electronic device supporting the same, which can prevent crosstalk from occurring while the animation of the three-dimensional object is being executed by determining a start position of the animation of the three-dimensional object in consideration of a range in which crosstalk may occur.

[0010] In addition, various embodiments of the present disclosure can maximize the effect of animation of an object by determining the starting position of animation of a 3D object by considering the type of the 3D object (e.g., the emotion expressed by the object and the type according to the movement of the object).

[0011] The technical problems to be solved by the present disclosure are not limited to the technical problems mentioned above, and other technical problems not mentioned can be clearly understood by a person having ordinary skill in the technical field to which the present invention belongs from the description below.

[0012] An electronic device according to one embodiment may include a display capable of displaying a 3D image using a glasses-free method, at least one processor including a processing circuit, and a memory storing instructions. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to display a first screen including a first object capable of executing a first animation in a 2D format through the display. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to generate a virtual plane and a 3D coordinate system based on a user input for the first object. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to place a second screen including an area excluding the first object within the first screen on the generated virtual plane. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to determine at least one of a first position of the first object including a first coordinate on the first axis at which execution of the first animation is to begin or a second position of the virtual plane including a second coordinate on the first axis at which the virtual plane is to be displayed, based on at least one of a magnitude of movement of the first object on a first axis of the 3D coordinate system corresponding to a depth when executing the first animation or a size of the first object, and a 3D displayable distance from the display.

[0013] According to one embodiment, a method for providing a 3D object in an electronic device may include an operation of displaying a first screen including a first object capable of executing a first animation in a 2D format through a display of the electronic device capable of displaying a 3D image using a glasses-free method. The method may include an operation of generating a virtual plane and a 3D coordinate system based on a user input for the first object. The method may include an operation of placing a second screen including an area excluding the first object within the first screen on the generated virtual plane. The method may include an operation of determining at least one of a first position of the first object including a first coordinate on the first axis at which execution of the first animation is to start or a second position of the virtual plane including a second coordinate on the first axis at which the virtual plane is to be displayed, based on at least one of a magnitude of movement of the first object on the first axis of the 3D coordinate system corresponding to depth when the first animation is executed or a size of the first object, and a 3D displayable distance from the display.

[0014] In one embodiment, a non-transitory computer-readable storage medium having recorded thereon computer-executable instructions, wherein the computer-executable instructions, when individually or collectively executed by at least one processor, cause an electronic device to display a first screen in a 2D format, the first screen including a first object capable of executing a first animation, through a display of the electronic device capable of displaying 3D images using a glasses-free manner. The computer-executable instructions, when individually or collectively executed by at least one processor, cause the electronic device to generate a virtual plane and a 3D coordinate system based on a user input for the first object. The computer-executable instructions, when individually or collectively executed by at least one processor, cause the electronic device to place a second screen including an area excluding the first object within the first screen on the generated virtual plane. The computer-executable instructions, when executed individually or collectively by at least one processor, may cause the electronic device to determine at least one of a first position of the first object including a first coordinate on the first axis at which execution of the first animation is to begin or a second position of the virtual plane including a second coordinate on the first axis at which the virtual plane is to be displayed, based on at least one of a magnitude of movement of the first object along a first axis of the 3D coordinate system corresponding to a depth when executing the first animation or a size of the first object, and a 3D displayable distance from the display.

[0015] FIG. 1 is a block diagram of an electronic device within a network environment, according to one embodiment.

[0016] FIG. 2 is a block diagram of an electronic device according to one embodiment.

[0017] FIG. 3 is a drawing for explaining binocular disparity according to one embodiment.

[0018] FIG. 4 is a flowchart illustrating a method for providing a 3D object according to one embodiment.

[0019] FIG. 5 is a drawing for explaining a screen including an object according to one embodiment.

[0020] FIG. 6 is a drawing for explaining a method for generating a virtual plane and a 3D coordinate system on which a second screen is arranged, according to one embodiment.

[0021] FIG. 7 is a drawing for explaining changes in a first object when a first animation of the first object is executed according to one embodiment.

[0022] FIG. 8 is a drawing for explaining a method for determining a first coordinate on a first axis at which execution of a first animation is to begin, according to one embodiment.

[0023] FIG. 9 is a drawing for explaining a 3D displayable distance from a display according to one embodiment.

[0024] FIG. 10 is a drawing for explaining a method for determining a first position of a first object at which execution of a first animation is to begin, according to one embodiment.

[0025] FIG. 11 is a flowchart illustrating a method for determining at least one of a first position of a first object or a second position of a virtual plane, according to one embodiment.

[0026] FIG. 12 is a drawing for explaining a method for determining at least one of a first position of a first object or a second position of a virtual plane, according to one embodiment.

[0027] FIG. 13 is a drawing for explaining a method for determining at least one of a first position of a first object or a second position of a virtual plane, according to one embodiment.

[0028] FIG. 14 is a drawing for explaining a method for determining at least one of a first position of a first object or a second position of a virtual plane, according to one embodiment.

[0029] FIG. 15 is a flowchart illustrating a method for determining at least one of a first position of a first object or a second position of a virtual plane, according to one embodiment.

[0030] FIG. 16 is a drawing for explaining a method for determining at least one of a first position of a first object or a second position of a virtual plane, according to one embodiment.

[0031] FIG. 17 is a drawing for explaining a method for determining at least one of a first position of a first object or a second position of a virtual plane, according to one embodiment.

[0032] FIG. 18 is a drawing for explaining a method for providing a 3D object according to one embodiment.

[0033] FIG. 19 is a drawing for explaining a method for providing a 3D object according to one embodiment.

[0034] FIG. 20 is a drawing for explaining a method for providing a 3D object according to one embodiment.

[0035] FIG. 21 is a drawing for explaining a method for providing a 3D object according to one embodiment.

[0036] FIG. 22 is a flowchart illustrating a method for providing a 3D object according to one embodiment.

[0037] FIG. 23 is a drawing for explaining a method for providing a 3D object according to one embodiment.

[0038] FIG. 24 is a drawing for explaining a method for providing a 3D object according to one embodiment.

[0039] FIG. 1 is a block diagram of an electronic device (101) within a network environment (100), according to one embodiment.

[0040] Referring to FIG. 1, in a network environment (100), an electronic device (101) may communicate with an electronic device (102) via a first network (198) (e.g., a short-range wireless communication network), or may communicate with at least one of an electronic device (104) or a server (108) via a second network (199) (e.g., a long-range wireless communication network). According to one embodiment, the electronic device (101) may communicate with the electronic device (104) via the server (108). According to one embodiment, the electronic device (101) may include a processor (120), a memory (130), an input module (150), an audio output module (155), a display module (160), an audio module (170), a sensor module (176), an interface (177), a connection terminal (178), a haptic module (179), a camera module (180), a power management module (188), a battery (189), a communication module (190), a subscriber identification module (196), or an antenna module (197). In some embodiments, the electronic device (101) may omit at least one of these components (e.g., the connection terminal (178)), or may have one or more other components added. In some embodiments, some of these components (e.g., the sensor module (176), the camera module (180), or the antenna module (197)) may be integrated into one component (e.g., the display module (160)).

[0041] The processor (120) may, for example, execute software (e.g., a program (140)) to control at least one other component (e.g., a hardware or software component) of the electronic device (101) connected to the processor (120) and perform various data processing or calculations. According to one embodiment, as at least a part of the data processing or calculations, the processor (120) may store commands or data received from other components (e.g., a sensor module (176) or a communication module (190)) in a volatile memory (132), process the commands or data stored in the volatile memory (132), and store result data in a non-volatile memory (134). According to one embodiment, the processor (120) may include a main processor (121) (e.g., a central processing unit or an application processor) or a secondary processor (123) (e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor)) that can operate independently or together therewith. For example, if the electronic device (101) includes a main processor (121) and a secondary processor (123), the secondary processor (123) may be configured to use less power than the main processor (121) or to be specialized for a specified function. The secondary processor (123) may be implemented separately from the main processor (121) or as a part thereof.

[0042] The auxiliary processor (123) may control at least a portion of functions or states associated with at least one component (e.g., a display module (160), a sensor module (176), or a communication module (190)) of the electronic device (101), for example, on behalf of the main processor (121) while the main processor (121) is in an inactive (e.g., sleep) state, or together with the main processor (121) while the main processor (121) is in an active (e.g., application execution) state. In one embodiment, the auxiliary processor (123) (e.g., an image signal processor or a communication processor) may be implemented as a part of another functionally related component (e.g., a camera module (180) or a communication module (190)). In one embodiment, the auxiliary processor (123) (e.g., a neural network processing unit) may include a hardware structure specialized for processing artificial intelligence models. The artificial intelligence models may be generated through machine learning. This learning can be performed, for example, on the electronic device (101) itself where the artificial intelligence model is executed, or can be performed through a separate server (e.g., server (108)). The learning algorithm can include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but is not limited to the examples described above. The artificial intelligence model can include multiple artificial neural network layers.The artificial neural network may be one of a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), a deep Q-network, or a combination of two or more of the above, but is not limited to the examples described above. In addition to, or alternatively to, a hardware structure, an artificial intelligence model may include a software structure.

[0043] The memory (130) can store various data used by at least one component (e.g., processor (120) or sensor module (176)) of the electronic device (101). The data can include, for example, software (e.g., program (140)) and input data or output data for commands related thereto. The memory (130) can include volatile memory (132) or non-volatile memory (134).

[0044] The program (140) may be stored as software in the memory (130) and may include, for example, an operating system (142), middleware (144), or an application (146).

[0045] The input module (150) can receive commands or data to be used in a component of the electronic device (101) (e.g., a processor (120)) from an external source (e.g., a user) of the electronic device (101). The input module (150) can include, for example, a microphone, a mouse, a keyboard, a key (e.g., a button), or a digital pen (e.g., a stylus pen).

[0046] The audio output module (155) can output audio signals to the outside of the electronic device (101). The audio output module (155) can include, for example, a speaker or a receiver. The speaker can be used for general purposes, such as multimedia playback or recording playback. The receiver can be used to receive incoming calls. In one embodiment, the receiver can be implemented separately from the speaker or as part of the speaker.

[0047] The display module (160) can visually provide information to an external party (e.g., a user) of the electronic device (101). The display module (160) may include, for example, a display, a holographic device, or a projector and a control circuit for controlling the device. In one embodiment, the display module (160) may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of a force generated by the touch.

[0048] The audio module (170) can convert sound into an electrical signal, or vice versa, convert an electrical signal into sound. According to one embodiment, the audio module (170) can acquire sound through the input module (150), output sound through the sound output module (155), or an external electronic device (e.g., electronic device (102)) (e.g., speaker or headphone) directly or wirelessly connected to the electronic device (101).

[0049] The sensor module (176) can detect the operating status (e.g., power or temperature) of the electronic device (101) or the external environmental status (e.g., user status) and generate an electrical signal or data value corresponding to the detected status. According to one embodiment, the sensor module (176) can include, for example, a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.

[0050] The interface (177) may support one or more designated protocols that may be used to directly or wirelessly connect the electronic device (101) with an external electronic device (e.g., the electronic device (102)). In one embodiment, 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.

[0051] The connection terminal (178) may include a connector through which the electronic device (101) may be physically connected to an external electronic device (e.g., electronic device (102)). According to one embodiment, the connection terminal (178) may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).

[0052] A haptic module (179) can convert electrical signals into mechanical stimuli (e.g., vibration or movement) or electrical stimuli that a user can perceive through tactile or kinesthetic sensations. In one embodiment, the haptic module (179) can include, for example, a motor, a piezoelectric element, or an electrical stimulation device.

[0053] The camera module (180) can capture still images and videos. According to one embodiment, the camera module (180) may include one or more lenses, image sensors, image signal processors, or flashes.

[0054] The power management module (188) can manage power supplied to the electronic device (101). According to one embodiment, the power management module (188) can be implemented, for example, as at least a part of a power management integrated circuit (PMIC).

[0055] A battery (189) may power at least one component of the electronic device (101). In one embodiment, the battery (189) may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.

[0056] The communication module (190) may support the establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device (101) and an external electronic device (e.g., electronic device (102), electronic device (104), or server (108)), and the performance of communication through the established communication channel. The communication module (190) may operate independently from the processor (120) (e.g., application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module (190) may include a wireless communication module (192) (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module (194) (e.g., a local area network (LAN) communication module, or a power line communication module). Among these communication modules, the corresponding communication module can communicate with an external electronic device (104) via a first network (198) (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network (199) (e.g., a long-range communication network such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a LAN or WAN)). These various types of communication modules can be integrated into a single component (e.g., a single chip) or implemented as multiple separate components (e.g., multiple chips). The wireless communication module (192) can verify or authenticate the electronic device (101) within a communication network such as the first network (198) or the second network (199) by using subscriber information (e.g., an international mobile subscriber identity (IMSI)) stored in the subscriber identification module (196).

[0057] The wireless communication module (192) can support 5G networks and next-generation communication technologies following the 4G network, such as NR access technology (new radio access technology). The NR access technology can support high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and connection of multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low-latency communications)). The wireless communication module (192) can support, for example, a high-frequency band (e.g., mmWave band) to achieve a high data transmission rate. The wireless communication module (192) can support various technologies for securing performance in a high-frequency band, such as beamforming, massive multiple-input and multiple-output (MIMO), full dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module (192) can support various requirements specified in the electronic device (101), an external electronic device (e.g., the electronic device (104)), or a network system (e.g., the second network (199)). According to one embodiment, the wireless communication module (192) can support a peak data rate (e.g., 20 Gbps or more) for eMBB realization, a loss coverage (e.g., 164 dB or less) for mMTC realization, or a U-plane latency (e.g., 0.5 ms or less for downlink (DL) and uplink (UL), or 1 ms or less for round trip) for URLLC realization.

[0058] The antenna module (197) can transmit or receive signals or power to or from an external device (e.g., an external electronic device). In one embodiment, the antenna module (197) may include an antenna including a radiator formed of a conductor or a conductive pattern formed on a substrate (e.g., a PCB). In one embodiment, the antenna module (197) may include a plurality of antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network, such as the first network (198) or the second network (199), may be selected from the plurality of antennas by, for example, the communication module (190). A signal or power may be transmitted or received between the communication module (190) and an external electronic device through the selected at least one antenna. In some embodiments, in addition to the radiator, another component (e.g., a radio frequency integrated circuit (RFIC)) may be additionally formed as a part of the antenna module (197).

[0059] According to various embodiments, the antenna module (197) may form a mmWave antenna module. According to one embodiment, the mmWave antenna module may include a printed circuit board, an RFIC disposed on or adjacent a first side (e.g., a bottom side) of the printed circuit board and capable of supporting a designated high frequency band (e.g., a mmWave band), and a plurality of antennas (e.g., an array antenna) disposed on or adjacent a second side (e.g., a top side or a side side) of the printed circuit board and capable of transmitting or receiving signals in the designated high frequency band.

[0060] At least some of the above components can be interconnected and exchange signals (e.g., commands or data) with each other via a communication method between peripheral devices (e.g., a bus, GPIO (general purpose input and output), SPI (serial peripheral interface), or MIPI (mobile industry processor interface)).

[0061] According to one embodiment, commands or data may be transmitted or received between the electronic device (101) and an external electronic device (104) via a server (108) connected to a second network (199). Each of the external electronic devices (102 or 104) may be the same or a different type of device as the electronic device (101). According to one embodiment, all or part of the operations executed in the electronic device (101) may be executed in one or more of the external electronic devices (102, 104, or 108). For example, when the electronic device (101) is to perform a certain function or service automatically or in response to a request from a user or another device, the electronic device (101) may, instead of or in addition to executing the function or service itself, request one or more external electronic devices to perform the function or at least a part of the service. One or more external electronic devices that receive 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 a portion of a response to the request. For this purpose, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used, for example. The electronic device (101) may provide an ultra-low latency service by using distributed computing or mobile edge computing, for example. In another embodiment, the external electronic device (104) may include an Internet of Things (IoT) device. The server (108) may be an intelligent server utilizing machine learning and / or a neural network. According to one embodiment, the external electronic device (104) or the server (108) may be included in the second network (199).The electronic device (101) can be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.

[0062] Electronic devices according to the various embodiments disclosed in this document may take various forms. 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 the embodiments of this document are not limited to the aforementioned devices.

[0063] The various embodiments of this document and the terminology used therein are not intended to limit the technical features described in this document to specific embodiments, but should be understood to include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the items, unless the context clearly indicates otherwise. In this document, each of the phrases "A or B", "at least one of A and B", "at least one of A or B", "A, B, or C", "at least one of A, B, and C", and "at least one of A, B, or C" can include any one of the items listed together in the corresponding phrase among those phrases, or all possible combinations thereof. Terms such as "first," "second," or "first" or "second" may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order). When a component (e.g., a first component) is referred to as "coupled" or "connected" to another component (e.g., a second component), with or without the terms "functionally" or "communicatively," it means that the component can be connected to the other component directly (e.g., wired), wirelessly, or through a third component.

[0064] The term "module" used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. A module may be an integral component, or a minimum unit or part of such a component that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).

[0065] Various embodiments of the present document may be implemented as software (e.g., a program (140)) including one or more instructions stored in a storage medium (e.g., an internal memory (136) or an external memory (138)) readable by a machine (e.g., an electronic device (101)). For example, a processor (e.g., a processor (120)) of the machine (e.g., an electronic device (101)) may call at least one instruction among the one or more instructions stored from the storage medium and execute it. This enables the machine to operate to perform at least one function according to the at least one called instruction. The one or more instructions may include code generated by a compiler or code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' simply means that the storage medium is a tangible device and does not contain signals (e.g., electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently or temporarily on the storage medium.

[0066] According to one embodiment, the method according to various embodiments disclosed in this document may be provided as a computer program product. The computer program product may be traded between sellers and buyers as a product. The computer program product may be distributed in the form of a device-readable storage medium (e.g., compact disc read-only memory (CD-ROM)) or may be provided through an application store (e.g., Play Store). TM ) or directly between two user devices (e.g., smart phones), online distribution (e.g., downloading or uploading). In the case of online distribution, at least 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 an intermediary server.

[0067] According to various embodiments, each component (e.g., a module or a program) of the above-described components may include one or more entities, and some of the entities may be separated and placed in other components. According to various embodiments, one or more components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (e.g., a module or a program) may be integrated into a single component. In such a case, the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to the integration. According to various embodiments, the 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 one or more other operations may be added.

[0068] FIG. 2 is a block diagram of an electronic device (201) according to one embodiment.

[0069] Referring to FIG. 2, in one embodiment, an electronic device (201) may be included in the electronic device (101) of FIG. 1.

[0070] In one embodiment, the electronic device (201) may include communication circuitry (210), a display (220), a sensor (230), memory (240), and / or a processor (250).

[0071] In one embodiment, the communication circuit (210) may be included in the communication module (190) of FIG. 1.

[0072] In one embodiment, the display (220) may be included in the display module (160) of FIG. 1.

[0073] In one embodiment, the display (220) may be a display configured to support (e.g., display) a three-dimensional (3D) image using a glasses-free method. For example, the display (220) may be a display capable of displaying 3D images using a glasses-free method.

[0074] In one embodiment, the display (220) may be a display capable of supporting a two-dimensional (hereinafter also referred to as “2D”) and / or three-dimensional (hereinafter also referred to as “3D”) screen.

[0075] In one embodiment, the display (220) may be a light field display. For example, the display (220) may display a 3D screen by generating a light field expressed as a vector distribution of light (e.g., intensity and direction of light) in space by a flat display and optical elements.

[0076] In one embodiment, the display (220) may be configured to display a 3D screen using a lenticular lens (also referred to as a “lenticular screen” or a “lenticular sheet”) disposed on the display (220) (e.g., disposed on or attached to the front of the display panel). For example, the display (220) may separate left and right binocular screens (e.g., left and right binocular images) using the lenticular lens. The left and right screens separated by the lenticular lens may be incident on the left and right eyes of the user, respectively, to provide a 3D screen.

[0077] In one embodiment, the display (220) may be configured to display a 3D image using a parallax barrier disposed on the display (220). For example, the display (220) may display a 3D image using an optical configuration (e.g., an optical plate) in which barriers and apertures are disposed at regular intervals.

[0078] However, the display (220) may display a three-dimensional screen using a glasses-free method, but is not limited to the examples described above. For example, the display (220) may be implemented using a volumetric display method that creates a three-dimensional image in a physical three-dimensional space using voxels (Voxels: Volumetric pixels), which are pixels in space.

[0079] In one embodiment, the display (220) may be a display capable of simultaneously displaying a 2D screen and a 3D screen. For example, the display (220) may be a display capable of displaying a portion of the screen in 2D and another portion of the screen in 3D. For example, the display may be capable of simultaneously displaying a 2D screen and a 3D screen such that at least a portion of the 2D screen and at least a portion of the 3D screen overlap.

[0080] In one embodiment, the sensor (230) may be included in the sensor module (176) of FIG. 1.

[0081] In one embodiment, the sensor (230) may include an eye tracking (ET) sensor (also referred to as an “ET camera”). For example, the sensor (230) (e.g., an ET sensor) may be configured to acquire (e.g., calculate) (or track) the positions of the user’s eyes (e.g., the positions of the user’s eyes relative to the position of the electronic device (201).

[0082] In one embodiment, the memory (240) may be included in the memory (130) of FIG. 1.

[0083] In one embodiment, the memory (240) may store information necessary to perform an operation to provide an object.

[0084] In one embodiment, the memory (240) may store instructions that, when executed individually or collectively by at least one processor (250) included in the electronic device (201), cause the object to be provided.

[0085] In one embodiment, the processor (250) may perform the overall operation of providing an object. In one embodiment, the processor (250) may include one or more processors for providing an object. Hereinafter, with reference to the drawings, the operation of the processor (250) for providing an object will be described.

[0086] In FIG. 2, the electronic device (201) is illustrated as including a communication circuit (210), a display (220), a sensor (230), a memory (240), and a processor (250), but is not limited thereto. For example, the electronic device (201) may further include at least one of the components included in the electronic device (101) of FIG. 1. For example, the electronic device (201) may not include some components (e.g., the communication circuit (210)) among the communication circuit (210), the display (220), the sensor (230), the memory (240), and the processor (250).

[0087] FIG. 3 is a drawing for explaining binocular disparity according to one embodiment.

[0088] Referring to FIG. 3, in one embodiment, when a left-eye image and a right-eye image are simultaneously output on a screen (e.g., display (220)), binocular parallax may occur due to the distance between the left-eye image and the right-eye image, the position of the left-eye image, and the position of the right-eye image.

[0089] In one embodiment, reference numeral 301 may represent zero parallax. As illustrated in reference numeral 301, in zero parallax, left and right eye images (312, 313) are output at substantially the same points within the screen (311), such that the left eye (332) and right eye (333) of the user (331) may perceive (see) 3D images corresponding to the left and right eye images (312, 313) as being displayed within the screen (311) (e.g., at a depth equal to the depth of the screen (311)).

[0090] In one embodiment, reference numeral 302 may represent positive parallax. As illustrated in reference numeral 302, in positive parallax, by outputting the left eye image (312) on the screen (311) at a left position relative to the right eye image (313), the 3D image (321) may be perceived as being displayed behind the screen (311) (e.g., behind or below the display (220)).

[0091] In one embodiment, reference numeral 303 may represent negative parallax. As illustrated in reference numeral 303, in negative parallax, by outputting the left-eye image (312) to the right relative to the right-eye image (313) on the screen (311), the 3D image (321) may be perceived as being displayed in front of the screen (311) (e.g., in front of the display (220)) (e.g., as protruding in front of the screen (311).

[0092] Hereinafter, by positive parallax, the space formed behind the screen (311) (e.g., the depth of the screen (311)) based on the plane of the screen (e.g., the display (220)) may also be referred to as "positive parallax space." In addition, by negative parallax, the space formed in front of the screen based on the plane of the screen may also be referred to as "negative parallax space."

[0093] Hereinafter, an operation of an electronic device (201) outputting a 3D image (3D image data) through a display (220) so that the 3D image (e.g., a 3D object) (or a 2D image) is perceived or shown to the user as being located in a 3D space may be referred to as an operation of displaying a 3D image through the display (220).

[0094] FIG. 4 is a flowchart (400) for explaining a method of providing a 3D object according to one embodiment.

[0095] Referring to FIG. 4, in operation 401, in one embodiment, the processor (250) may display a first screen including a first object on which a first animation is executable in a 2D format through the display (220).

[0096] In one embodiment, the first object may be an object that is displayable (or displayed) in 2D or 3D form, and the first animation may be an animation of the first object that is executable (or is executed) in 2D or 3D form (a first animation corresponding to the first object).

[0097] In one embodiment, the first animation may include frames of a first object (e.g., a set of frames of the first object) that are displayed over time (sequentially) when executed (played back).

[0098] Hereinafter, operation 401 will be described in detail with reference to FIG. 5.

[0099] FIG. 5 is a drawing for explaining a screen including an object according to one embodiment.

[0100] Referring to FIG. 5, in one embodiment, the processor (250) may display a first screen (510) in which an application (e.g., a chatting application) is executed in a 2D format through the display (220).

[0101] In one embodiment, the first screen (510) may include objects (522, 524) (e.g., emoticons) displayed based on a user's input of the electronic device (201) and chat bubbles (522-1, 524-1) including texts entered based on the user's input, and objects (521, 523) and chat bubbles (521-1, 523-1) including texts generated based on information received from the other party (e.g., the other party's electronic device) through the communication circuit (210).

[0102] In one embodiment, objects (521, 522) may be objects that are displayed only in 2D form. Objects (523, 524) may be objects that can be displayed in 2D or 3D form. For convenience of explanation below, an object that can be displayed only in 2D form will be referred to as a "2D object," and an object that can be displayed in 2D or 3D form will be referred to as a "3D object."

[0103] In one embodiment, among the objects (521, 522, 523, 524) included in the screen (510), the objects (522, 523, 524) may be objects capable of executing (or “playing”) animation. For example, the object (522) may be a 2D object capable of executing 2D animation. For example, each of the objects (523, 524) may be a 3D object capable of executing 2D animation or 3D animation.

[0104] In one embodiment, when displaying a 3D object (an object that can be displayed in 2D or 3D form), the processor (250) may display an indication (also referred to as a “guide” or an “indicator”) indicating that the object is a 3D object through the display (220). For example, as illustrated in FIG. 5, the processor (250) may display indications (531, 532) indicating that the objects (523, 524) are 3D objects through the display (220) at locations adjacent to the objects (523, 524).

[0105] In operation 403, in one embodiment, the processor (250) may generate a virtual plane and a 3D coordinate system based on user input for the first object.

[0106] In operation 405, in one embodiment, the processor (250) may place a second screen including an area excluding the first object within the first screen on the generated virtual plane.

[0107] In one embodiment, the processor (250) may generate a virtual plane and a 3D coordinate system based on receiving a user input for a first object. For example, in FIG. 5, the processor (250) may execute a 2D animation of the first object based on receiving a user input (e.g., a first user input) for a first object (e.g., a 3D object (524) capable of executing 2D or 3D animation) among objects (521, 522, 523, 524) included in a first screen (510) (e.g., a conversation window). The processor (250) may execute a 2D animation of the first object when a user inputs a 3D object (524), and may move (and / or rotate) an indication (532) corresponding to the 3D object (524) to guide that the 3D animation of the 3D object (524) can be executed while the 2D animation of the first object is being executed. The processor (250) may generate a virtual plane and a 3D coordinate system based on a user input for the first object (e.g., a second user input input subsequent to the first user input) while the 2D animation of the first object is being executed. In the examples described above, the 2D animation of the 3D object (524) is executed based on a first user input for the 3D object (524) included in the first screen (510), and the virtual plane and the 3D coordinate system are generated based on a second user input while the 2D animation of the 3D object (524) is executed, but the present invention is not limited thereto. For example, the processor (250) may also generate the virtual plane and the 3D coordinate system based on the first user input for the 3D object (524) included in the first screen (510) without receiving the second user input.

[0108] In one embodiment, the processor (250) may, based on receiving a user input for a first object, cause the electronic device (201) to enter a mode (hereinafter referred to as a “stereoscopic display mode”) in which a first animation of the first object is executed using the operations described below.

[0109] Hereinafter, with reference to FIG. 6, operations 403 and 405 will be described in more detail.

[0110] FIG. 6 is a drawing for explaining a method for generating a virtual plane and a 3D coordinate system on which a second screen is arranged, according to one embodiment.

[0111] Referring to FIG. 6, in one embodiment, reference numeral 601 of FIG. 6 may represent a first screen (510) including a first object (524).

[0112] In one embodiment, at reference numeral 602 of FIG. 6, the processor (250) may generate a virtual plane (620) having a horizontal and vertical ratio substantially equal to the horizontal and vertical ratio of the surface of the display (220) and parallel to the surface of the display (220), based on user input for the first object (524).

[0113] In one embodiment, at reference numeral 602, the processor (250) may generate a 3D coordinate system (621) including a first axis corresponding to depth (hereinafter referred to as “first axis” or “z-axis”), a second axis corresponding to the width of the display (220) (e.g., the width of the display (220)) (hereinafter referred to as “second axis” or “x-axis”), and a third axis corresponding to the height of the display (220) (e.g., the height of the display (220)) (hereinafter referred to as “third axis” or “y-axis”), based on user input for the first object (524).

[0114] In one embodiment, the x-axis coordinate and the y-axis coordinate of the origin (0) of the 3D coordinate system (621) may be the same as the x-axis coordinate and the y-axis coordinate of the center of the display (220). The z-axis coordinate (z=0) of the origin (0) of the 3D coordinate system (621) may be the same as the depth of the surface of the display (220) (e.g., the depth at which zero parallax occurs). However, the method of setting the 3D coordinate system (621) is not limited to the above-described example.

[0115] In one embodiment, the processor (250) may place (include) a second screen (hereinafter referred to as “the second screen”) including an area excluding the first object (524) from the first screen (510) on the virtual plane (620). For example, the processor (250) may obtain data for the first screen (510) displayed in 2D form through the display (220) from the memory (240). As illustrated in reference numeral 603 of FIG. 6, the processor (250) may generate a virtual plane (620) on which the second screen (630) is placed by texture mapping the second screen (630), including an area excluding the first object (524) from the first screen (510), to the virtual plane (620) based on the data for the first screen (510). For convenience of explanation below, the virtual plane on which the second screen is placed will be referred to as “the virtual plane on which the second screen is placed,” “the virtual plane,” or “the virtual plane including the second screen.”

[0116] In operation 407, in one embodiment, the processor (250) may determine at least one of a magnitude of movement of the first object on a first axis of a 3D coordinate system corresponding to a depth when executing the first animation or a size of the first object, and a 3D displayable distance from the display (220), a first position of the first object including a first coordinate on the first axis at which execution of the first animation will start (hereinafter, referred to as the “first coordinate”) (hereinafter, the position at which execution of the first animation will start, including the first coordinate, is referred to as the “first position”) and a second position of a virtual plane including a second coordinate on the first axis at which the virtual plane will be displayed (hereinafter, the position at which the virtual plane is displayed, including the second coordinate, is referred to as the “second position”).

[0117] In one embodiment, the processor (250) may perform operation 407 upon user input for the first object or after creating a virtual plane (a virtual plane on which the second screen is placed).

[0118] In one embodiment, the processor (250) may obtain (e.g., calculate) at least one of a magnitude of movement of the first object on a first axis (z-axis) of a 3D coordinate system corresponding to depth or a size of the first object based on data of the first object (e.g., a file of a first animation of the first object) (e.g., by analyzing data of the first animation) when the first animation is executed. For example, assuming that the first animation is executed, the processor (250) may obtain at least one of a magnitude of movement of the first object on a first axis of the 3D coordinate system (e.g., a change in movement of the first object) or a size of the first object (e.g., a change in size of the first object) based on data of the first object.

[0119] However, it is not limited thereto. In one embodiment, assuming that the first animation is executed, the processor (250) may analyze at least one of the magnitude of the movement of the first object (e.g., change in the movement of the first object), the size of the first object (e.g., change in the size of the first object), or the rotation of the first object (e.g., direction in which the first object is facing) of the first object in each of the first axis, the second axis, and the third axis of the 3D coordinate system based on the data of the first object. Hereinafter, with reference to FIG. 7, a description will be given of the change of the first object when the first animation of the first object is executed.

[0120] FIG. 7 is a drawing for explaining changes in a first object when a first animation of the first object is executed according to one embodiment.

[0121] Referring to FIG. 7, in one embodiment, reference numeral 701 of FIG. 7 may indicate movement of the first object (710) in the left-right direction (change in movement, size of movement) and movement of the first object (710) in the up-down direction when the first animation is executed. For example, in reference numeral 701, an arrow (711) may indicate movement of the first object (710) on the x-axis in a 3D coordinate system over time (e.g., playback time of the first animation) when the first animation is executed. In reference numeral 701, an arrow (712) may indicate movement of the first object (710) on the y-axis in a 3D coordinate system over time when the first animation is executed.

[0122] In one embodiment, reference numeral 702 of FIG. 7 may indicate movement (change in movement, magnitude of movement) along a first axis (z-axis) corresponding to the depth of the first object (710) when the first animation is executed. For example, in reference numeral 702, an arrow (713) may indicate movement of the first object (710) along the z-axis in a 3D coordinate system over time when the first animation is executed.

[0123] In one embodiment, reference numeral 703 of FIG. 7 may indicate a size (e.g., a change in size) of a first object (710) when the first animation is executed. For example, the first object may change from a size indicated by object (710-1) at a first point in time to a size indicated by object (710-2) when the first animation is executed, as indicated by arrow (714).

[0124] Although not shown in FIG. 7, in one embodiment, when the first animation is executed, the direction in which the first object (710) is facing may change as the first object (710) rotates.

[0125] In one embodiment, the processor (250) may obtain (e.g., calculate) a space (e.g., a union of spaces occupied by the first object) formed by movement of the first object (e.g., movement of the first object along the x-axis, y-axis, and / or z-axis), change in size of the first object, and / or rotation of the first object over time (e.g., playback time of the first animation) when the first animation is executed (hereinafter referred to as “3D space of the first animation” or “space formed by the first object when the first animation is executed”).

[0126] In one embodiment, the processor (250) may obtain a first coordinate on the first axis at which the execution of the first animation is to begin, based on at least one of a size of the movement of the first object on the first axis of the 3D coordinate system corresponding to the depth when the first animation is executed, or a size of the first object, and a 3D displayable distance from the display (220). Hereinafter, a method of obtaining the first coordinate on the first axis at which the execution of the first animation is to begin will be described with reference to FIG. 8.

[0127] FIG. 8 is a drawing for explaining a method for determining a first coordinate on a first axis at which execution of a first animation is to begin, according to one embodiment.

[0128] Referring to FIG. 8, in one embodiment, the 3D displayable distance (hereinafter also referred to as “3D displayable distance”) from the display (220) may be a distance (or depth) at which crosstalk may occur from the display (220) (e.g., a plane corresponding to the display (220)). A method for determining the 3D displayable distance from the display (220) will be described later with reference to FIG. 9.

[0129] In one embodiment, in FIG. 8, line (841) may represent a plane whose coordinate along the first axis (e.g., the z-axis) of the 3D coordinate system is 0 (e.g., a plane including coordinates along the z-axis of the same plane as the plane of the display (220)), and line (831) may represent a plane spaced apart from the plane represented by line (841) by a 3D displayable distance (e.g., a depth indicated by arrow (831-1)).

[0130] In one embodiment, in FIG. 8, an arrow (811-2) may indicate a magnitude of movement of the first object (811) when the first animation of the first object (811) is executed, and a line (811-1) may indicate a plane corresponding to coordinates on the first axis of the first object (811) when the first animation starts to be executed. A point (852) may indicate a point having coordinates on the first axis of the first object (e.g., positions representing a surface of the first object) that are closest to the coordinates on the first axis of the plane indicated by the line (831) when the first animation is executed, and the line (851) may indicate a plane including the closest coordinates.

[0131] In one embodiment, the processor (250) may determine a first coordinate on the first axis of the first object (811) at which execution of the first animation is to start (a start coordinate on the first axis of the first animation) such that the coordinates on the first axis formed by the first object (811) during execution of the first animation (e.g., the entire coordinates of the surface of the 3D model of the first object (811)) are smaller than the coordinates on the first axis corresponding to a 3D displayable distance from the display (220) (e.g., the coordinates on the z-axis corresponding to the line (831)).

[0132] For example, the processor (250) may determine the first coordinate on the first axis of the first object at which the execution of the first animation is to start, such that the maximum value of the coordinates on the first axis of at least some of the first objects (811) during the execution of the first animation is less than the coordinate on the first axis of the plane indicated by the line (831) (e.g., such that the maximum value has a z-axis coordinate that is less than the z-axis coordinate corresponding to the line (831).

[0133] For example, in FIG. 8, the processor (250) can obtain (e.g., confirm) the largest coordinate among the coordinates on the first axis of the point (852) of the first object (811) (e.g., the point having the largest coordinate among the coordinates on the first axis of the first object (811)) based on the magnitude of the movement of the first object (811) (e.g., the distance indicated by the arrow (811-2)) and the size of the first object (811) while the first animation is being executed (e.g., the z-axis coordinate of the point located at the far left within the first object (811) in FIG. 8). The processor (250) can determine the first coordinate on the first axis of the first object at which the execution of the first animation is to start (the start coordinate on the first axis of the first animation) so that the largest coordinate is smaller than the coordinate on the first axis of the plane indicated by the line (831) while the first animation is being executed.

[0134] In one embodiment, the processor (250) may determine a second location of the virtual plane (821) including a second coordinate on a first axis of the virtual plane (821) based on the first coordinate of the first object (811). For example, the processor (250) may determine the second location including the second coordinate on the first axis of the virtual plane (821) such that the first object (811) is displayed protruding from the virtual plane (821) while the first animation is being executed (e.g., such that the second coordinate on the first axis of the virtual plane (821) is smaller than the first coordinate of the first object (811). However, the present invention is not limited thereto.

[0135] Although the above examples describe an operation of determining at least one of a first position of a first object or a second position of a virtual plane with respect to a 3D displayable distance formed in a negative parallax space, the present invention is not limited thereto. For example, an operation of determining at least one of a first position of a first object or a second position of a virtual plane with respect to a 3D displayable distance formed in a positive parallax space may be performed using operations similar to the above-described operations.

[0136] In the above examples, the first coordinate of the first object on the first axis or the second coordinate of the virtual plane on the first axis is determined based on at least one of the magnitude of the movement of the first object on the first axis or the size of the first object and the 3D displayable distance from the display (220), but is not limited thereto. FIG. 9 is a drawing for explaining the 3D displayable distance from the display (220) according to one embodiment.

[0137] Referring to FIG. 9, in one embodiment, reference numeral 901 of FIG. 9 may be a diagram for explaining the relationship between the width of the display (220), the distance from the display (220) to the user's eyes, and the 3D displayable distance in negative parallax space. For example, in reference numeral 901, it may be assumed that the distance between the user's two eyes (911-1, 911-2) is about 65 (mm). In reference numeral 901, points (912-1, 912-2) may represent left and right end points of the display (220), respectively, and point (912-3) may represent a point where the line of sight of the user's right eye (911-1) and the line of sight of the left eye (911-2) intersect.

[0138] In one embodiment, the relationship between the width of the display (220), the distance from the display (220) to the user's eyes, and the 3D displayable distance can be expressed by [Mathematical Formula 1] below.

[0139] [Mathematical Formula 1]

[0140] x = (d1* d2) / (65 + d1)

[0141] In one embodiment, in [Mathematical Formula 1], x (unit = mm) represents a 3D displayable distance from the display (220), d1 represents a width of the display, d2 represents a distance from the display to the eyes (911-1, 911-2), and 65 represents a distance between the eyes (911-1, 911-2).

[0142] In one embodiment, as in [Mathematical Formula 1], the 3D displayable distance (x) from the display (220) may vary depending on the width of the display (220) and the distance between the display (220) and the user's eyes (e.g., the eyes (911-1, 911-2)). For example, when the width of the display (220) is about 76 (mm) and the distance from the display (220) to the user's eyes is 200 (mm), the 3D displayable distance (x) from the display (220) may be about 107 (mm). For example, when the width of the display (220) is about 265 (mm) and the distance from the display (220) to the user's eyes is 500 (mm), the 3D displayable distance (x) from the display (220) may be about 400 (mm).

[0143] In one embodiment, the processor (250) may determine (e.g., set) a 3D displayable distance from the display (220) based on the width of the display (220) and / or the positions of the user's eyes.

[0144] In one embodiment, the processor (250) may obtain the position of the user's eyes through the sensor (230) (e.g., ET camera). For example, when a user inputs a first object for executing a first animation, the processor (250) may obtain the distance from the display (220) to the user's eyes through the sensor (230). In one embodiment, the processor (250) may obtain the width of the display (220) (e.g., the horizontal length of the display (220)) from the memory (240). In one embodiment, the processor (250) may obtain a 3D displayable distance from the display (220) based on the width of the display (220) (the width of the display (220) obtained from the memory (240)) and the distance from the display (220) to the user's eyes using [Mathematical Formula 1]. In one embodiment, the processor (250) can set the 3D displayable distance from the acquired display (220) to the 3D displayable distance from the display (220).

[0145] In one embodiment, the processor (240) may determine (e.g., set) a 3D displayable distance from the display (220), assuming that the distance between the display (220) and the user's eyes is a specified distance. For example, the processor (250) may set the 3D displayable distance from the display (220) based on the specified distance of about 20 (mm) and the width of the display (220).

[0146] In one embodiment, the processor (250) may, before performing the operations of FIG. 4, obtain a 3D displayable distance based on the specified distance and the width of the display (220), assuming that the distance between the display (220) and the user's eyes is a specified distance. The processor (250) may store the obtained 3D displayable distance in the memory (240). When performing the operations of FIG. 4, the processor (250) may use the 3D displayable distance stored in the memory.

[0147] In one embodiment, the processor (250) may determine (e.g., set) a 3D displayable distance from the display (220) based on the width of the display (220), the positions of the user's eyes, and / or the size of the object. For example, at reference numeral 902 of FIG. 9 , the processor (250) may determine (e.g., set) a 3D displayable distance from the display (220) by further considering the width (b) of the 3D object (921) in addition to the width (a) of the display (920) and the positions of the user's eyes. For example, at reference numeral 903 of FIG. 9 , the processor (250) may determine a 3D displayable distance from the display (220) by further considering the width (d) of the 3D object (931) in addition to the width (c) of the display (930) and the positions of the user's eyes.

[0148] However, the method for determining the 3D displayable distance from the display (220) is not limited to the examples described above. For example, since the user's left and right eyes have limitations in recognizing the left-eye image and the right-eye image as a single image, the processor (250) may determine the 3D displayable distance so as not to exceed a distance less than about 200 (mm) at most. For example, the processor (250) may determine the 3D displayable distance to be about 1 (m) when the distance between the display (220) and the user's eyes is about 2 (m), determine the 3D displayable distance to be about 0.3 (m) when the distance between the display (220) and the user's eyes is about 1 (m), and determine the 3D displayable distance to be about 0.1 (m) when the distance between the display (220) and the user's eyes is about 0.5 (m), based on experiments or statistics related to the 3D displayable distance.

[0149] In Fig. 9, a method for determining a 3D displayable distance with respect to a negative parallax space is described, but the above-described examples can be applied identically or similarly to a method for determining a 3D displayable distance with respect to a positive parallax space.

[0150] In one embodiment, the processor (250) may determine at least one of the first position of the first object or the second position of the virtual plane by further considering at least one of the magnitude of the movement of the first object on the first axis when executing the first animation, the magnitude of the movement of the first object on the second axis of the 3D coordinate system corresponding to the horizontal of the display (220), the magnitude of the movement of the first object on the third axis of the 3D coordinate system corresponding to the vertical of the display (220), or the space in which the animation can be displayed in 3D without crosstalk when executing the animation of the object (hereinafter referred to as “3D displayable space”, “stereoscopic expression range”, or “stereoscopic expression allowable range”). Hereinafter, with reference to FIG. 10, an operation of determining at least one of the first position of the first object or the second position of the virtual plane by further considering the magnitude of the movement of the first object on the second axis, the magnitude of the movement of the first object on the third axis of the 3D coordinate system corresponding to the vertical direction of the display (220), and / or the 3D displayable space will be described.

[0151] FIG. 10 is a drawing for explaining a method for determining a first position of a first object at which execution of a first animation is to begin, according to one embodiment.

[0152] Referring to FIG. 10, in one embodiment, reference numeral 1001 of FIG. 10 may represent a 3D space of a first animation of a first object. As described above, the 3D space of the first animation may be a space (e.g., a set of spaces) formed (e.g., occupied by the first object) by movement of the first object (e.g., movement of the first object along the x-axis, y-axis, and / or z-axis), change in size of the first object, and / or rotation of the first object over time (e.g., playback time of the first animation) when the first animation is executed.

[0153] In one embodiment, the processor (250) may generate a bounding box that includes the 3D space of the first animation (hereinafter referred to as “bounding box of the first animation”).

[0154] In one embodiment, as illustrated in reference numeral 1001, the bounding box (1016) of the first animation may be a hexahedral 3D space that includes spaces occupied by the first object (1011) due to the magnitude of movement of the first object (1011) while the first animation is being executed (e.g., changes in up / down / left / right movement indicated by arrows (1012, 1013, 1014, 1015) and / or changes in movement along the first axis), the size (and / or changes in size) of the first object (1011), and / or the rotation of the first object (1011).

[0155] In one embodiment, reference numeral 1002 of FIG. 10 may represent a space (1021) in which an object's animation can be displayed in 3D without crosstalk.

[0156] In one embodiment, the depth (c) of the 3D displayable space (1021) may be substantially equal to the 3D displayable distance from the surface of the display (220). The width (a) of the 3D displayable space (1021) may be substantially equal to the width of the display (220), and the height (b) of the 3D displayable space (1021) may be substantially equal to the height of the display (220).

[0157] Although reference numeral 1002 illustrates the 3D displayable space as having a hexahedral shape, it is not limited thereto, and the 3D displayable space may be one of a variety of shapes.

[0158] Although reference numeral 1002 illustrates that a 3D displayable space is formed in negative parallax space, the present invention is not limited thereto, and a 3D displayable space may be formed in negative parallax space and positive parallax space.

[0159] In one embodiment, the processor (250) may determine a first position of the first object such that, while the first animation is being executed, a bounding box of the first animation is located within a 3D displayable space. For example, the processor (250) may determine a first position of the first object at which execution of the first animation is to begin such that, while the first animation is being executed, at least a portion of the bounding box of the first animation (e.g., coordinates forming a surface of the first object while the first animation is being executed) does not exist outside the 3D displayable space.

[0160] Referring again to FIG. 4, in one embodiment, the processor (250) may execute the first animation after determining at least one of a first position of a first object at which execution of the first animation is to begin or a first position of a virtual plane on which a virtual plane (the virtual plane on which the second screen is arranged) is to be displayed.

[0161] In one embodiment, the processor (250) may perform an operation of displaying a first screen including the first object of operation 401 in a 2D format through the display (220) after the playback of the first animation is finished.

[0162] In one embodiment, the processor (250) may terminate the stereoscopic display (220) mode after the playback of the first animation ends. For example, the processor (250) may cause the electronic device (201) to enter the stereoscopic display (220) mode based on receiving a user input for the first object in operation 403. The processor (250) may perform operations 403 to 407 in the stereoscopic display (220) mode. The processor (250) may terminate the stereoscopic display (220) mode after the playback of the first animation ends.

[0163] In one embodiment, the processor (250) may terminate the stereoscopic display (220) mode in response to the termination of playback of the first animation. However, the present invention is not limited thereto. For example, the processor (250) may terminate the stereoscopic display (220) mode in response to user input after playback of the first animation has ended.

[0164] FIG. 11 is a flowchart (1100) illustrating a method for determining at least one of a first position of a first object or a second position of a virtual plane, according to one embodiment.

[0165] FIG. 12 is a drawing for explaining a method for determining at least one of a first position of a first object or a second position of a virtual plane, according to one embodiment.

[0166] Referring to FIGS. 11 and 12, in one embodiment, the operations of FIG. 11 may be included in operation 407 of FIG. 4. For example, the operations of FIG. 11 may be performed on the premise that, while the first animation is being executed, an operation is performed to determine a first position including a first coordinate on a first axis of a first object where the first animation is to be started, taking into account a 3D displayable distance and / or a 3D displayable space (e.g., a bounding box (1016) of the first animation).

[0167] In operation 1101, in one embodiment, the processor (250) may determine whether a magnitude of movement of a first object on a first axis of a 3D coordinate system (e.g., 3D coordinate system (621)) is greater than or equal to a threshold (e.g., a threshold magnitude).

[0168] In one embodiment, the processor (250) may obtain (e.g., calculate) a maximum value and a minimum value among coordinates on a first axis of the first object according to the movement of the first object when the first animation of the first object is executed. The processor (250) may determine whether a difference value between the maximum value and the minimum value (e.g., a value obtained by subtracting the minimum value from the maximum value) is greater than or equal to a threshold value.

[0169] In operation 1103, in one embodiment, the processor (250) can determine at least one of a first position of the first object or a second position of a virtual plane (a virtual plane on which the second screen is arranged) based on whether a magnitude of movement of the first object on a first axis of the 3D coordinate system is greater than or equal to a threshold.

[0170] In one embodiment, the processor (250) may determine the first position of the first object such that execution of the first animation begins at a coordinate on the first axis corresponding to a 3D space formed behind the display (220) or a surface of the display (220) based on a magnitude of movement of the first object on the first axis of the 3D coordinate system being greater than or equal to a threshold. For example, the processor (250) may determine the first position of the first object such that execution of the first animation begins at a coordinate on the first axis in a positive parallax space (e.g., a coordinate on the z-axis having a - sign in the 3D coordinate system) or a coordinate on the first axis corresponding to zero parallax (e.g., 0 as the z-axis coordinate in the 3D coordinate system) based on a magnitude of movement of the first object on the first axis of the 3D coordinate system being greater than or equal to a threshold.

[0171] In one embodiment, in reference numeral 1201 of FIG. 12, line (1221) may represent a plane having a coordinate of 0 on a first axis (e.g., a z-axis) of a 3D coordinate system (e.g., a plane including coordinates on the z-axis of the same plane as the plane of the display (220). Line (1212) may represent a plane spaced apart from the plane represented by line (1221) by a 3D displayable distance. The processor (250) may determine a first coordinate on the first axis of the first object such that execution of the first animation starts at the coordinate on the first axis represented by line (1221) or the coordinate on the first axis in positive parallax space, based on a magnitude of movement of the first object on the first axis of the 3D coordinate system being greater than or equal to a threshold.

[0172] In one embodiment, as illustrated in reference numeral 1201, the processor (250) may determine a second position including a second coordinate on the first axis of the virtual plane (1231) such that the virtual plane (1231) (e.g., the virtual plane on which the second screen is arranged) is displayed in positive parallax space based on a magnitude of movement of the first object on the first axis of the 3D coordinate system being greater than or equal to a threshold.

[0173] In one embodiment, the processor (250) may determine the first position of the first object such that execution of the first animation begins at a coordinate on the first axis within a 3D space formed in front of the display (220) based on a magnitude of movement of the first object along the first axis of the 3D coordinate system being less than a threshold. For example, the processor (250) may determine the first position of the first object such that execution of the first animation begins at a coordinate on the first axis within a negative parallax space (e.g., a coordinate on the z-axis having a + sign in the 3D coordinate system) based on a magnitude of movement of the first object along the first axis of the 3D coordinate system being less than a threshold.

[0174] In one embodiment, at reference numeral 1202 of FIG. 12, a line (1221) may represent a plane having a coordinate of 0 on a first axis (e.g., a z-axis) of a 3D coordinate system (e.g., a plane including coordinates on the z-axis of the same plane as the plane of the display (220). The processor (250) may determine a first coordinate on the first axis of the first object such that execution of a first animation of the first object (1211) starts at a coordinate on the first axis of negative parallax space based on a magnitude of movement of the first object on the first axis of the 3D coordinate system being less than a threshold.

[0175] In one embodiment, as illustrated in reference numeral 1202, the processor (250) can determine a second position including a second coordinate on the first axis of the virtual plane (1231) such that the virtual plane (1231) (e.g., the virtual plane on which the second screen is arranged) is displayed at a coordinate on the first axis corresponding to zero parallax (e.g., 0 as the z-axis coordinate in the 3D coordinate system) based on whether the magnitude of the movement of the first object on the first axis of the 3D coordinate system is less than a threshold. Hereinafter, with reference to FIGS. 13 and 14, a method of determining at least one of the first position of the first object or the second position of the virtual plane (the virtual plane on which the second screen is arranged) based on whether the magnitude of the movement of the first object on the first axis of the 3D coordinate system is greater than or equal to a threshold will be described.

[0176] FIG. 13 is a drawing for explaining a method for determining at least one of a first position of a first object or a second position of a virtual plane, according to one embodiment.

[0177] FIG. 14 is a drawing for explaining a method for determining at least one of a first position of a first object or a second position of a virtual plane, according to one embodiment.

[0178] Referring to FIGS. 13 and 14, in one embodiment, FIG. 13 may represent a first object and a virtual plane (a virtual plane on which a second screen is arranged) displayed through a display (220) when the magnitude of the movement of the first object on the first axis of the 3D coordinate system is greater than or equal to a threshold when the first animation is executed.

[0179] In one embodiment, as illustrated in reference numeral 1301 of FIG. 13, the processor (250) determines a first coordinate on the first axis of the first object (1311) so that the execution of the first animation starts at a coordinate on the first axis corresponding to zero parallax (e.g., a coordinate on the first axis corresponding to a surface (1312) of the display (220)) (or a coordinate on the first axis in a positive parallax space), based on a magnitude of movement of the first object on the first axis of the 3D coordinate system being greater than or equal to a threshold when the first animation is executed, and displays a virtual plane (1321) in the positive parallax space.

[0180] In one embodiment, reference numeral 1302 of FIG. 13 may represent a screen displayed through the display (220) when the user looks in the -z-axis direction. As illustrated in reference numeral 1302, a virtual plane (1321) may be displayed behind the display (220), and a first object (1311) (e.g., the first object (1311) within the dotted line (1311-1)) may be seen (or perceived) as being displayed as protruding from the virtual plane (1321).

[0181] In one embodiment, FIG. 14 may represent a first object and a virtual plane (a virtual plane on which a second screen is arranged) displayed through a display (220) when the magnitude of the movement of the first object on the first axis of the 3D coordinate system is less than a threshold when the first animation is executed.

[0182] In one embodiment, as illustrated in reference numeral 1401 of FIG. 14, the processor (250) may determine a first coordinate on the first axis of the first object (1411) so that the execution of the first animation starts at a coordinate on the first axis in a negative parallax space based on a magnitude of movement of the first object on the first axis of the 3D coordinate system being less than a threshold when the first animation is executed, and may display a virtual plane (1421) at a coordinate on the first axis corresponding to zero parallax.

[0183] In one embodiment, reference numeral 1402 of FIG. 14 may represent a screen displayed through the display (220) when the user looks in the -z-axis direction. As illustrated in reference numeral 1402, a virtual plane (1421) may be displayed on the same plane as the display (220), and a first object (1411) (e.g., the first object (1411) within the dotted line (1411-1)) may be viewed (or perceived) as being displayed by protruding from the virtual plane (1421).

[0184] FIG. 15 is a flowchart (1500) illustrating a method for determining at least one of a first position of a first object or a second position of a virtual plane, according to one embodiment.

[0185] FIG. 16 is a drawing for explaining a method for determining at least one of a first position of a first object or a second position of a virtual plane, according to one embodiment.

[0186] FIG. 17 is a drawing for explaining a method for determining at least one of a first position of a first object or a second position of a virtual plane, according to one embodiment.

[0187] Referring to FIGS. 15 to 17, in one embodiment, the operations of FIG. 15 may be included in operation 407 of FIG. 4. For example, the operations of FIG. 15 may be performed on the premise that, while the first animation is being executed, an operation is performed to determine a first position including a first coordinate on a first axis of a first object where the first animation is to be started, taking into account a 3D displayable distance and / or a 3D displayable space (e.g., a bounding box (1016) of the first animation).

[0188] In operation 1501, in one embodiment, the processor (250) may determine whether the first object is an object expressing a negative emotion.

[0189] In one embodiment, objects (e.g., emoticons) can express different types of emotions.

[0190] In one embodiment, the types of emotions that an object can express may include a first type, a second type, and a third type.

[0191] In one embodiment, the first type of emotion that an object can express may include positive emotions (e.g., joy, love, happiness, laughter). For example, in FIG. 16 , the emotion of object (1611) may be laughter, and the emotion of object (1612) may be love.

[0192] In one embodiment, the second type of emotion that an object can express may include neutral (e.g., surprise, curiosity, blank expression, thinking). For example, in FIG. 16 , the emotion of object (1621) may be surprise, and the emotion of object (1622) may be curiosity.

[0193] In one embodiment, a third type of emotion that an object can express may include negative emotions (e.g., sadness, tears, disappointment, anger). For example, in FIG. 16 , the emotion of object (1631) may be sadness, and the emotion of object (1632) may be disappointment.

[0194] However, the types of emotions that an object can express are not limited to the first type, the second type, and the third type.

[0195] In one embodiment, the processor (250) can determine whether the emotion expressed by the first object is negative as a third type.

[0196] In operation 1503, in one embodiment, the processor (250) may determine at least one of a first position of the first object or a second position of a virtual plane (a virtual screen including a second screen) at which execution of the first animation is to begin, based on the first object being an object expressing a negative emotion.

[0197] In one embodiment, the processor (250) may determine a first coordinate on a first axis of the first object so that execution of the first animation begins at a coordinate on a first axis in positive parallax space based on the first object being an object expressing a negative emotion, and may display a virtual plane at a coordinate on the first axis corresponding to zero parallax.

[0198] In one embodiment, as illustrated in reference numeral 1701 of FIG. 17, the processor (250) may determine a first coordinate on a first axis of the first object such that execution of the first animation starts at a coordinate on a first axis in positive parallax space based on the emotion expressed by the first object (1711) being negative (e.g., sadness), and may determine a virtual plane (1721) as a second coordinate on the first axis corresponding to zero parallax (e.g., a coordinate on the first axis corresponding to a surface of the display (220) indicated by line (1721-1)) at which the virtual plane (1721) will be displayed.

[0199] In one embodiment, reference numeral 1702 of FIG. 17 may represent a screen displayed through the display (220) when the user looks in the -z-axis direction. As illustrated in reference numeral 1702, a virtual plane (1721) may be displayed on the same plane as the display (220), and the first object (1711) may be viewed (or perceived) as being displayed behind the virtual plane (1721).

[0200] FIG. 18 is a drawing for explaining a method for providing a 3D object according to one embodiment.

[0201] Referring to FIG. 18, in one embodiment, the processor (250) may generate an object corresponding to the shadow of the first object based on whether a virtual plane (e.g., a virtual screen on which a second screen is arranged) is located behind the first object while the first animation is being executed. For example, the processor (250) may determine whether a virtual plane (e.g., a virtual screen on which a second screen is arranged) is located behind the first object while the first animation is being executed (e.g., whether a smallest coordinate among coordinates of the first object on the first axis is greater than a coordinate of the virtual plane on the first axis). The processor (250) may generate an object corresponding to the shadow of an object (an object corresponding to the shadow of the first object) to be included in the virtual plane using an artificial intelligence model learned to generate an object corresponding to the shadow of an object based on whether the virtual plane is located behind the first object while the first animation is being executed. The processor (250) can display an object corresponding to the generated shadow on a virtual plane (e.g., an area within a second screen placed on the virtual plane) through the display (220).

[0202] In one embodiment, the processor (250) may generate an object corresponding to the shadow of the first object based on the position of a virtual light source located within a 3D space corresponding to a 3D coordinate system, the position of the first object, and the position of a virtual plane when generating an object corresponding to the shadow of the first object.

[0203] In one embodiment, at reference numeral 1801 of FIG. 18, the processor (250) may display a first object (1811) in a negative parallax space through the display (220) while the first animation is being executed, and may display an object (1831) corresponding to a shadow of the first object (1811) in an area corresponding to an area of ​​the first object (1811) (e.g., areas on the second and third axes of the first object (1811)) within a second screen (e.g., a dialog window) of a virtual plane (1821) located at coordinates on the first axis corresponding to zero parallax.

[0204] In one embodiment, at reference numeral 1802 of FIG. 18, the processor (250) may display a first object (1811) at a coordinate on a first axis corresponding to zero parallax through the display (220) while the first animation is being executed, and may display an object (1831) corresponding to a shadow of the first object (1811) within a virtual plane (1821) located in positive parallax space.

[0205] FIG. 19 is a drawing for explaining a method for providing a 3D object according to one embodiment.

[0206] Referring to FIG. 19, in one embodiment, the processor (250) may display the virtual plane through the display (220) such that an area corresponding to the first object within the virtual plane is transparent based on the first object being located behind the virtual plane while the first animation is being executed.

[0207] In one embodiment, at reference numeral 1901 of FIG. 19, the processor (250) may display the virtual plane (1921) through the display (220) such that an area (1931) corresponding to the first object (1911) within the virtual plane (1921) is transparent based on the first object (1911) being located behind the virtual plane (1921).

[0208] In one embodiment, as illustrated at reference numeral 1901, the shape of the area (1931) corresponding to the first object (1911) within the virtual plane (1921) may be a specified shape (e.g., an ellipse).

[0209] In one embodiment, at reference numeral 1902 of FIG. 19, the processor (250) may display the virtual plane (1921) through the display (220) such that an area (1932) corresponding to an outline of the first object (1911) within the virtual plane (1921) is transparent based on the first object (1911) being located behind the virtual plane (1921).

[0210] In one embodiment, the act of displaying the virtual plane so that an area corresponding to the first object within the virtual plane is transparent may include the act of displaying the virtual plane so that an area corresponding to the first object is transparent within a second screen (e.g., a chat window) disposed on the virtual plane.

[0211] In one embodiment, the act of displaying the virtual plane such that an area corresponding to the first object within the virtual plane is transparent may include the act of adjusting transparency of the area corresponding to the first object within the virtual plane.

[0212] In one embodiment, at reference numeral 1903 of FIG. 19, the processor (250) may display the virtual plane (1921) and the plane (1933) through the display (220) so that the background of the second screen arranged on the virtual plane (1921) is transparent and the plane (1933) (or layer) on which the first object is displayed has the color of the background of the second screen.

[0213] FIG. 20 is a drawing for explaining a method for providing a 3D object according to one embodiment.

[0214] Referring to FIG. 20, in one embodiment, the processor (250) may determine that, while the first animation is being executed, the first object is located on the same plane as the virtual plane (e.g., the virtual plane on which the second screen is arranged) on the first axis, or is located behind the virtual plane. In this case, the processor (250) may display the virtual plane through the display (220) so that a speech balloon (dialogue bubble) that overlaps the first object within the virtual plane or is located at a position corresponding to the position of the first object is transparent.

[0215] In one embodiment, reference numerals 2001, 2002, and 2003 of FIG. 20 may sequentially represent a first object (2011) moving in a direction in which the coordinates of the first object (2011) on the first axis increase while the first animation is being executed.

[0216] In one embodiment, at reference numeral 2001 of FIG. 20, the first object (2011) may be displayed in front of the virtual plane (2021) (e.g., such that the coordinates on the first axis of the first object (2011) are greater than the coordinates on the first axis of the virtual plane (2021)).

[0217] In one embodiment, as shown at reference numeral 2002 of FIG. 20, the first object (2011) may be displayed on the same plane as the virtual plane (2021). In this case, the processor (250) may display the virtual plane (2021) through the display (220) such that areas of speech bubbles (2031-1, 2031-2) overlapping the first object (2011) within the virtual plane (2021) (e.g., areas indicated by dotted lines (2032-1, 2032-2)) are transparent.

[0218] In one embodiment, as reference numeral 2003 of FIG. 20, the first object (2011) may be displayed behind the virtual plane (2021). In this case, the processor (250) may display the virtual plane (2021) through the display (220) so that the areas of the speech balloons (2031-1, 2031-2) corresponding to the position of the first object (2011) within the virtual plane (2021) are not displayed transparently (e.g., by releasing the operation of displaying the areas of the speech balloons (2031-1, 2031-2) transparently). For example, the processor (250) may make it appear as if the first object (2011) is located behind the speech balloons (2031-1, 2031-2) based on the fact that the first object (2011) is displayed behind the virtual plane (2021).

[0219] FIG. 21 is a drawing for explaining a method for providing a 3D object according to one embodiment.

[0220] Referring to FIG. 21, in one embodiment, the processor (250) may perform the aforementioned operations for each of the plurality of 3D objects based on the animations of the plurality of 3D objects being executed simultaneously.

[0221] In one embodiment, as illustrated at reference numeral 2101 of FIG. 21, the processor (250) can display, through the display (220), a 3D object (2111) whose animation is running in negative parallax space and a 3D object (2112) whose animation is running in positive parallax space while a virtual plane (2121) is displayed in zero parallax.

[0222] In one embodiment, reference numeral 2102 of FIG. 21 may represent a virtual plane (2121) displayed as zero parallax through a display (220), a 3D object (2111) in which animation is running in negative parallax space, and a 3D object (2112) in which animation is running in positive parallax space. In one embodiment, as illustrated in reference numeral 2102, depending on the position of the 3D object (2111) and the position of the 3D object (2112) in the 3D coordinate system, a portion of the 3D object (2112) and a portion of the 3D object (2111) may be displayed overlapping each other.

[0223] FIG. 22 is a flowchart (2200) for describing a method of providing a 3D object according to one embodiment.

[0224] FIG. 23 is a drawing for explaining a method for providing a 3D object according to one embodiment.

[0225] Referring to FIGS. 22 and 23, in operation 2201, in one embodiment, the processor (250) may display a third screen including a second object on which a second animation can be executed in a 2D format through the display (220). For example, in FIG. 23, the processor (250) may display a third screen (2321) including a second object (2311) through the display (220).

[0226] In one embodiment, the second object may be an object that is displayable (or displayed) in 2D or 3D form, and the second animation may be an animation of the second object that is executable (or is executed) in 2D or 3D form (a second animation corresponding to the second object).

[0227] In one embodiment, the second object may be an object that includes, as metadata, the position of the second object at which the second animation is to start running (hereinafter also referred to as the “start position of the second object”), the magnitude of the movement of the second object, the rotation of the second object, and / or the size of the second object, the bounding box of the second object, and / or the emotion expressed by the second object.

[0228] The action of displaying a third screen containing a second executable object in a 2D form in the second animation of action 2201 is at least partially identical or similar to action 401 of FIG. 4, so a detailed description thereof will be omitted.

[0229] In operation 2203, in one embodiment, the processor (250) may generate a virtual plane and a 3D coordinate system based on user input for the second object.

[0230] Since operation 2203 is at least partially identical or similar to operation 403 of FIG. 4, a detailed description thereof will be omitted.

[0231] In operation 2205, in one embodiment, the processor (250) may place a second screen including an area excluding the first object within the first screen on the generated virtual plane.

[0232] Since operation 2205 is at least partially identical or similar to operation 405 of FIG. 4, a detailed description thereof will be omitted.

[0233] In operation 2207, in one embodiment, the processor (250) may determine at least one of a third position of the second object including a third coordinate on a first axis at which execution of the second animation is to start (hereinafter, referred to as the “third coordinate”) and a fourth position of a virtual plane including a fourth coordinate on the first axis at which the virtual plane is to be displayed (hereinafter, referred to as the “fourth coordinate”) (hereinafter, referred to as the “fourth position”) based on metadata of the second object and a 3D displayable distance from the display (220).

[0234] In one embodiment, in FIG. 23, the metadata of the second object (2311) may include a bounding box (2331) of the second animation. The processor (250) may determine a third location of the second object such that the bounding box (2331) of the second animation exists within a space capable of displaying the second animation of the second object in 3D without crosstalk.

[0235] In one embodiment, the metadata of the second object (2311) may include a bounding box (2331) of the second animation and a starting position of the second object (2311). The processor (250) may determine the third position of the second object by adjusting the starting position of the second object (2311) so that the bounding box (2331) of the second animation exists within a space in which the second animation can be displayed in 3D.

[0236] Although not illustrated in FIG. 22, in one embodiment, the processor (250) may obtain a bounding box of the second object (or a 3D space of the second animation) based on metadata of the second object, such as the magnitude of the movement of the second object, the rotation of the second object, and / or the size of the second object. The processor (250) may determine a third location of the second object such that the obtained bounding box exists within a space in which the second animation can be displayed in 3D.

[0237] Although not illustrated in FIG. 22, in one embodiment, the processor (250) may perform the operations described through FIGS. 15, 16, and 17 based on the emotion expressed by the second object as metadata of the second object.

[0238] FIG. 24 is a drawing for explaining a method for providing a 3D object according to one embodiment.

[0239] Referring to FIG. 24, in one embodiment, an object capable of animation (e.g., a first object, a second object) may include an emoji. However, the object is not limited thereto, and the object may include an image, a letter, a number, and / or a symbol that can be animated. For example, an object capable of animation may include an emoji.

[0240] In one embodiment, in the examples described above, the operation of providing a 3D object is described as being performed while the execution screen of the chat application is displayed as the chat application is executed, but is not limited thereto. For example, the operation of providing a 3D object may be performed while an application capable of displaying a screen including a 3D object capable of executing an animation or an application capable of inputting a 3D object is executed. For example, FIG. 24 may show an execution screen (2410) of a live broadcasting application. The processor (250) may perform the operation of providing the 3D object described above while the execution screen (2410) is displayed and an animation (e.g., objects (2411-1, 2411-2, 2411-3, 2411-4) whose positions and sizes change while the animation is executed) is executed.

[0241] An electronic device according to one embodiment may include a display capable of displaying a 3D image using a glasses-free method, at least one processor including a processing circuit, and a memory storing instructions. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to display a first screen including a first object capable of executing a first animation in a 2D format through the display. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to generate a virtual plane and a 3D coordinate system based on a user input for the first object. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to place a second screen including an area excluding the first object within the first screen on the generated virtual plane. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to determine at least one of a first position of the first object including a first coordinate on the first axis at which execution of the first animation is to begin or a second position of the virtual plane including a second coordinate on the first axis at which the virtual plane is to be displayed, based on at least one of a magnitude of movement of the first object on a first axis of the 3D coordinate system corresponding to a depth when executing the first animation or a size of the first object, and a 3D displayable distance from the display.

[0242] In one embodiment, the instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to determine, based on at least one of: a magnitude of movement of the first object along the first axis, a magnitude of movement of the first object along the first axis, a magnitude of movement of the first object along a second axis of the 3D coordinate system corresponding to a horizontal direction of the display, or a magnitude of movement of the first object along a third axis of the 3D coordinate system corresponding to a vertical direction of the display, and at least one of the first position of the first object or the second position of the virtual plane when the first animation is executed.

[0243] In one embodiment, the instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to determine the first location of the first object such that, while the first animation is being executed, the first object is displayed within a space in which the animation can be displayed in 3D without crosstalk.

[0244] In one embodiment, the instructions, when executed individually or collectively by the at least one processor, may cause the electronic device to determine the first position of the first object, based on a magnitude of movement of the first object along the first axis of the 3D coordinate system being greater than a threshold, such that execution of the first animation begins at a position comprising coordinates along the first axis corresponding to a 3D space formed behind the display or a plane of the display. The instructions, when executed individually or collectively by the at least one processor, may cause the electronic device to determine the second position of the virtual plane, based on a magnitude of movement of the first object along the first axis of the 3D coordinate system being greater than a threshold, such that the virtual plane is displayed behind the first object while the first animation is being executed.

[0245] In one embodiment, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to determine the first position of the first object in a 3D space formed in front of the display, based on a magnitude of movement of the first object along the first axis of the 3D coordinate system being less than the threshold, such that execution of the first animation begins. The instructions, when individually or collectively executed by the at least one processor, cause the electronic device to determine the second position of the virtual plane, based on a magnitude of movement of the first object along the first axis of the 3D coordinate system being less than the threshold, such that the virtual plane is displayed at a position including coordinates on the first axis corresponding to a surface of the display while the first animation is being executed.

[0246] In one embodiment, the instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to determine the first location of the first object such that execution of the first animation in a 3D space formed behind the display begins based on the first object being an object expressing a negative emotion. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to determine the second location of the virtual plane such that the virtual plane is displayed at a location including coordinates on the first axis corresponding to a surface of the display while the first animation is being executed based on the first object being an object expressing a negative emotion.

[0247] In one embodiment, the instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to generate an object corresponding to a shadow of the first object based on the virtual plane being located behind the first object while the first animation is being executed. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to display, through the display, the virtual plane including an object corresponding to the generated shadow of the first object.

[0248] In one embodiment, the instructions, when executed individually or collectively by the at least one processor, may cause the electronic device to display the virtual plane through the display such that an area corresponding to the first object within the virtual plane is transparent based on the first object being positioned behind the virtual plane while the first animation is being executed.

[0249] In one embodiment, the instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to start executing the first animation at the first location of the first object. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to display, through the display, the first screen including the first object in a 2D format based on the termination of execution of the first animation.

[0250] In one embodiment, the instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to display, through the display, a third screen in 2D form, including a second object executable as a second animation. The metadata of the second object may include information about at least one of a location of the second object at which execution of the second animation is to begin, a movement, rotation, size, and / or a space formed by the second object when the second animation is executed, or an emotion expressed by the second object. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to generate a virtual plane and a 3D coordinate system based on a user input for the first object. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to place a fourth screen, including an area excluding the second object within the third screen, on the generated virtual plane. The instructions, when executed individually or collectively by the at least one processor, may cause the electronic device to determine, based on the metadata and the 3D displayable space of the second object, at least one of the third position of the first object including the third coordinate on the first axis at which execution of the first animation is to begin and the fourth position of the virtual plane including the fourth coordinate on the first axis at which the virtual plane on which the fourth screen is arranged is to be displayed.

[0251] According to one embodiment, a method for providing a 3D object in an electronic device may include an operation of displaying a first screen including a first object capable of executing a first animation in a 2D format through a display of the electronic device capable of displaying a 3D image using a glasses-free method. The method may include an operation of generating a virtual plane and a 3D coordinate system based on a user input for the first object. The method may include an operation of placing a second screen including an area excluding the first object within the first screen on the generated virtual plane. The method may include an operation of determining at least one of a first position of the first object including a first coordinate on the first axis at which execution of the first animation is to start or a second position of the virtual plane including a second coordinate on the first axis at which the virtual plane is to be displayed, based on at least one of a magnitude of movement of the first object on the first axis of the 3D coordinate system corresponding to depth when the first animation is executed or a size of the first object, and a 3D displayable distance from the display.

[0252] In one embodiment, the operation of determining at least one of the first position of the first object or the second position of the virtual plane may include an operation of determining at least one of the first position of the first object or the second position of the virtual plane based on at least one of a magnitude of movement of the first object on the first axis when the first animation is executed, a magnitude of movement of the first object on the first axis, a magnitude of movement of the first object on the second axis of the 3D coordinate system corresponding to the horizontal direction of the display, or a magnitude of movement of the first object on the third axis of the 3D coordinate system corresponding to the vertical direction of the display, and a 3D displayable space.

[0253] In one embodiment, the act of determining at least one of the first position of the first object or the second position of the virtual plane may include determining the first position of the first object such that the first object is displayed within a space in which the animation can be displayed in 3D without the crosstalk while the first animation is being executed.

[0254] In one embodiment, the operation of determining at least one of the first position of the first object or the second position of the virtual plane may include an operation of determining the first position of the first object such that execution of the first animation begins at a position including coordinates on the first axis corresponding to a 3D space formed behind the display or a surface of the display, based on a large magnitude of movement of the first object on the first axis of the 3D coordinate system. The operation of determining at least one of the first position of the first object or the second position of the virtual plane may include an operation of determining the second position of the virtual plane such that the virtual plane is displayed behind the first object while the first animation is being executed, based on a large magnitude of movement of the first object on the first axis of the 3D coordinate system.

[0255] In one embodiment, the operation of determining at least one of the first position of the first object or the second position of the virtual plane may include an operation of determining the first position of the first object such that execution of the first animation begins in a 3D space formed in front of the display based on a magnitude of movement of the first object along the first axis of the 3D coordinate system being less than the threshold. The operation of determining at least one of the first position of the first object or the second position of the virtual plane may include an operation of determining the second position of the virtual plane such that the virtual plane is displayed at a position including coordinates on the first axis corresponding to a surface of the display while the first animation is executed based on a magnitude of movement of the first object along the first axis of the 3D coordinate system being less than the threshold.

[0256] In one embodiment, the operation of determining at least one of the first position of the first object or the second position of the virtual plane may include an operation of determining the first position of the first object such that execution of the first animation begins in a 3D space formed behind the display based on the first object being an object expressing a negative emotion. In one embodiment, the operation of determining at least one of the first position of the first object or the second position of the virtual plane may include an operation of determining the second position of the virtual plane such that the virtual plane is displayed at a position including coordinates on the first axis corresponding to a surface of the display while the first animation is being executed based on the first object being an object expressing a negative emotion.

[0257] In one embodiment, the method may further include an operation of generating an object corresponding to a shadow of the first object based on the virtual plane being located behind the first object while the first animation is being executed. The method may further include an operation of displaying the virtual plane including the object corresponding to the shadow of the generated first object through the display.

[0258] In one embodiment, the method may further include displaying the virtual plane through the display such that an area corresponding to the first object within the virtual plane is transparent based on the first object being positioned behind the virtual plane while the first animation is being executed.

[0259] In one embodiment, the method may further include an operation of starting execution of the first animation at the first location of the first object. The method may further include an operation of displaying the first screen including the first object in a 2D format through the display based on the termination of execution of the first animation.

[0260] In one embodiment, a non-transitory computer-readable storage medium having recorded thereon computer-executable instructions, wherein the computer-executable instructions, when individually or collectively executed by at least one processor, cause an electronic device to display a first screen in a 2D format, the first screen including a first object capable of executing a first animation, through a display of the electronic device capable of displaying 3D images using a glasses-free manner. The computer-executable instructions, when individually or collectively executed by at least one processor, cause the electronic device to generate a virtual plane and a 3D coordinate system based on a user input for the first object. The computer-executable instructions, when individually or collectively executed by at least one processor, cause the electronic device to place a second screen including an area excluding the first object within the first screen on the generated virtual plane. The computer-executable instructions, when executed individually or collectively by at least one processor, may cause the electronic device to determine at least one of a first position of the first object including a first coordinate on the first axis at which execution of the first animation is to begin or a second position of the virtual plane including a second coordinate on the first axis at which the virtual plane is to be displayed, based on at least one of a magnitude of movement of the first object along a first axis of the 3D coordinate system corresponding to a depth when executing the first animation or a size of the first object, and a 3D displayable distance from the display.

[0261] Additionally, the structure of the data used in the embodiments of the present disclosure described above can be recorded on a computer-readable recording medium through various means. The computer-readable recording medium includes storage media such as magnetic storage media (e.g., ROM, floppy disk, hard disk, etc.) and optical reading media (e.g., CD-ROM, DVD, etc.).

Claims

1. In the electronic device (201), A display (220) capable of displaying 3D images using a glasses-free method; At least one processor (250) comprising processing circuitry; and Includes a memory (240) that stores instructions, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: Through the above display, a first screen including a first object capable of executing a first animation is displayed in 2D form, Based on user input for the first object, a virtual plane and a 3D coordinate system are generated, On the virtual plane created above, a second screen including an area excluding the first object within the first screen is placed, and An electronic device that causes at least one of a first position of the first object including a first coordinate on the first axis at which execution of the first animation will start or a second position of the virtual plane including a second coordinate on the first axis at which the virtual plane will be displayed to be determined based on at least one of a size of the first object or a size of the first object on the first axis of the 3D coordinate system corresponding to a depth when executing the first animation, and a 3D displayable distance from the display.

2. In paragraph 1, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: An electronic device that causes at least one of the magnitude of movement of the first object on the first axis when the first animation is executed, the magnitude of movement of the first object on the first axis, the magnitude of movement of the first object on the second axis of the 3D coordinate system corresponding to the horizontal direction of the display, or the magnitude of movement of the first object on the third axis of the 3D coordinate system corresponding to the vertical direction of the display, and based on a 3D displayable space, to determine at least one of the first position of the first object or the second position of the virtual plane.

3. In paragraph 2, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: An electronic device that causes the first object to be displayed within a 3D displayable space while the first animation is being executed, thereby determining the first position of the first object.

4. In any one of paragraphs 1 to 3, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: Based on the magnitude of the movement of the first object on the first axis of the 3D coordinate system being greater than the threshold: Determine the first position of the first object so that execution of the first animation starts at a position including coordinates on the first axis corresponding to a 3D space formed behind the display or a surface of the display, and An electronic device that causes the second position of the virtual plane to be determined so that the virtual plane is displayed behind the first object while the first animation is being executed.

5. In paragraph 4, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: Based on the magnitude of the movement of the first object on the first axis of the 3D coordinate system being less than the threshold: To start execution of the first animation in the 3D space formed in front of the display, the first position of the first object is determined, and An electronic device that causes the second position of the virtual plane to be determined so that the virtual plane is displayed at a position including coordinates on the first axis corresponding to a surface of the display while the first animation is being executed.

6. In any one of paragraphs 1 to 5, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: Based on the above first object being an object expressing negative emotions: To determine the first position of the first object so that execution of the first animation begins in the 3D space formed behind the display, and An electronic device that causes the second position of the virtual plane to be determined so that the virtual plane is displayed at a position including coordinates on the first axis corresponding to a surface of the display while the first animation is being executed.

7. In any one of paragraphs 1 to 6, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: While the first animation is running, based on the virtual plane being located behind the first object, an object corresponding to the shadow of the first object is generated, and An electronic device that causes the virtual plane including an object corresponding to the shadow of the first object generated to be displayed through the display.

8. In any one of paragraphs 1 to 7, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: An electronic device that causes the virtual plane to be displayed through the display so that an area corresponding to the first object within the virtual plane is transparent based on the first object being located behind the virtual plane while the first animation is being executed.

9. In any one of paragraphs 1 to 8, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: Start execution of the first animation at the first position of the first object, and An electronic device that causes the first screen including the first object to be displayed in a 2D form through the display based on the termination of execution of the first animation.

10. In any one of paragraphs 1 to 9, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: Through the display, a third screen including a second object executable as a second animation is displayed in a 2D format, wherein the metadata of the second object includes information about at least one of a position of the second object where the execution of the second animation is to start, movement, rotation, size, and / or space formed by the second object when the second animation is executed, or an emotion expressed by the second object, and Based on user input for the first object, a virtual plane and a 3D coordinate system are generated, A fourth screen including an area excluding the second object within the third screen is placed on the virtual plane created above, and An electronic device that causes at least one of a third position of the first object including a third coordinate on the first axis at which execution of the first animation is to start and a fourth position of the virtual plane including a fourth coordinate on the first axis at which the virtual plane on which the fourth screen is arranged is to be displayed, based on the metadata of the second object and the 3D displayable space, to be determined.

11. A method for providing a 3D object in an electronic device, An action of displaying a first screen including a first object capable of executing a first animation in a 2D form through a display of the electronic device capable of displaying a 3D image using a glasses-free method; An operation of generating a virtual plane and a 3D coordinate system based on user input for the first object; An operation of placing a second screen including an area excluding the first object within the first screen on the generated virtual plane; and A method comprising: determining at least one of a first position of the first object including a first coordinate on the first axis at which execution of the first animation is to start, or a second position of the virtual plane including a second coordinate on the first axis at which the virtual plane is to be displayed, based on at least one of a size of the first object or a size of the first object on the first axis of the 3D coordinate system corresponding to depth when the first animation is executed, and a 3D displayable distance from the display.

12. In paragraph 11, An operation of determining at least one of the first position of the first object or the second position of the virtual plane is: A method comprising: determining at least one of the magnitude of movement of the first object on the first axis when the first animation is executed, the magnitude of movement of the first object on the first axis, the magnitude of movement of the first object on the second axis of the 3D coordinate system corresponding to the horizontal direction of the display, or the magnitude of movement of the first object on the third axis of the 3D coordinate system corresponding to the vertical direction of the display, and an operation of determining at least one of the first position of the first object or the second position of the virtual plane based on a 3D displayable space.

13. In paragraph 12, An operation of determining at least one of the first position of the first object or the second position of the virtual plane is: A method comprising an action of determining a first position of the first object so as to be displayed within a 3D displayable space while the first animation is being executed.

14. In any one of paragraphs 11 to 13, An operation of determining at least one of the first position of the first object or the second position of the virtual plane is: Based on the magnitude of the movement of the first object on the first axis of the 3D coordinate system: An operation of determining the first position of the first object so that execution of the first animation starts at a position including coordinates on the first axis corresponding to a 3D space formed behind the display or a surface of the display; and A method comprising an action of determining the second position of the virtual plane so that the virtual plane is displayed behind the first object while the first animation is being executed.

15. A non-transitory computer-readable storage medium having computer-executable instructions recorded thereon, wherein the computer-executable instructions, when individually or collectively executed by at least one processor, cause an electronic device to: A first screen including a first object capable of executing a first animation is displayed in 2D form through a display of the electronic device capable of displaying a 3D image using a glasses-free method, Based on user input for the first object, a virtual plane and a 3D coordinate system are generated, On the virtual plane created above, a second screen including an area excluding the first object within the first screen is placed, and A computer-readable storage medium that causes the computer to determine at least one of a first position of the first object including a first coordinate on the first axis at which the execution of the first animation will start or a second position of the virtual plane including a second coordinate on the first axis at which the virtual plane will be displayed, based on at least one of a size of the first object or a size of the first object on the first axis of the 3D coordinate system corresponding to depth when the first animation is executed, and a 3D displayable distance from the display.

Citation Information

Patent Citations

  • Collision load distribution structure of the fuselage

    KR1020240074180A

  • Method and apparatus for generating a three dimensional image

    KR102492971B1

  • Method for manufacturing power semiconductor devices using two step thinning process

    KR102763906B1

  • Method and apparatus to resolve count error in communication system

    KR102836722B1

  • Apparatus and method for warning the opening of manhole cover

    KR102914414B1