Virtual object interaction method and apparatus, and device and medium
By detecting user input information and changing operation prompts in extended reality technology, the problem that users cannot interact with obscured virtual objects is solved, and the interactive experience and fun is improved.
Patent Information
- Application Number
- PCT/CN2024/139617
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-12-19
- Filing Date
- 2024-12-16
- Publication Date
- 2025-06-26
AI Technical Summary
In extended reality technology, users are unable to interact with obscured virtual objects, resulting in poor interactive experience.
By displaying a computer-generated three-dimensional environment on the display part of the electronic device, the user's input information is detected, and the operation prompt information is changed when a predetermined condition is met, the user can interact with the obscured virtual object.
It improves the fun and diversity of interaction between users and virtual objects and improves the interactive experience.
Smart Images

Figure CN2024139617_26062025_PF_FP_ABST
Abstract
Description
Virtual object interaction method, device, equipment and medium
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application is based on the Chinese application with application number 202311755405.1 and application date December 19, 2023, and claims its priority. The disclosed content of the Chinese application is hereby introduced as a whole into this application. Technical Field
[0003] The embodiments of the present application relate to the field of human-computer interaction technology, and in particular to a virtual object interaction method, apparatus, device, and medium. Background Art
[0004] With the widespread application of extended reality (XR) technology, users can enter different virtual spaces and interact with virtual objects in the virtual space by using XR devices.
[0005] Currently, when users interact with virtual objects in a virtual space, they typically use controller interaction (as shown in Figure 1a) or gesture interaction (as shown in Figure 1b) to select and interact with a target virtual object. However, when multiple virtual objects in the virtual space are obstructed from the user's field of view, such as virtual object C being obstructed by virtual object A and virtual object D being obstructed by virtual object B in Figure 1c, users can only interact with unobstructed virtual objects using gesture interaction or controller interaction, but cannot interact with obstructed virtual objects, resulting in a poor user experience with virtual objects. Summary of the Invention
[0006] The present application provides a virtual object interaction method, apparatus, device and medium, which enable users to interact with obscured virtual objects, thereby increasing the fun and diversity of the interaction between users and virtual objects and improving the interactive experience of users and virtual objects.
[0007] In a first aspect, an embodiment of the present application provides a virtual object interaction method, which is applied to an electronic device, wherein the electronic device includes a display component and one or more input devices. The method includes:
[0008] displaying a computer-generated three-dimensional environment on a display component;
[0009] Presenting a first virtual object in the three-dimensional environment;
[0010] displaying a second virtual object between the first virtual object and the user;
[0011] detecting first input information of the user via the input device, and displaying operation prompt information corresponding to the second virtual object;
[0012] The second input information of the user is detected via the input device, and when the second input information meets a predetermined condition, the operation prompt information is changed so that the operation prompt information corresponds to the first virtual object.
[0013] In a second aspect, an embodiment of the present application provides a virtual object interaction device, configured in an electronic device, the electronic device including a display component and one or more input devices, including:
[0014] A display module configured to display a computer-generated three-dimensional environment on a display component; present a first virtual object within the three-dimensional environment; display a second virtual object between the first virtual object and the user; and detect first input information from the user via the input device and display operation prompt information corresponding to the second virtual object;
[0015] The changing module is configured to detect second input information of the user via the input device, and when the second input information satisfies a predetermined condition, change the operation prompt information so that the operation prompt information corresponds to the first virtual object.
[0016] In a third aspect, an embodiment of the present application provides an electronic device, including:
[0017] A processor and a memory, the memory being used to store a computer program, the processor being used to call and run the computer program stored in the memory to execute the virtual object interaction method as described in the embodiment of the first aspect or its various implementations.
[0018] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium for storing a computer program, wherein the computer program enables a computer to execute the virtual object interaction method as described in the embodiment of the first aspect or its various implementations.
[0019] In a fifth aspect, an embodiment of the present application provides a computer program product comprising program instructions, which, when executed on an electronic device, enables the electronic device to execute the virtual object interaction method as described in the embodiment of the first aspect or its various implementations.
[0020] The technical solution disclosed in the embodiment of the present application is to display a computer-generated three-dimensional environment on a display component of an electronic device, present a first virtual object within the three-dimensional environment, display a second virtual object between the first virtual object and the user, detect the user's first input information via an input device, display operation prompt information corresponding to the second virtual object, detect the user's second input information via the input device, and when the second input information meets a predetermined condition, change the operation prompt information so that the operation prompt information corresponds to the first virtual object, so that the user can interact with the obscured virtual object. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0022] FIG1a is a schematic diagram of a controller-based interaction method for interacting with any virtual object in a virtual space in the related art;
[0023] FIG1b is a schematic diagram of using gesture interaction to interact with any virtual object in a virtual space in the related art;
[0024] Figure 1c is a top view of a virtual object C in a virtual space that is blocked by a virtual object A, and a virtual object D that is blocked by a virtual object B;
[0025] FIG2 is a flow chart of a virtual object interaction method provided in an embodiment of the present application;
[0026] FIG3 is a flow chart of another virtual object interaction method provided in an embodiment of the present application;
[0027] FIG4a is a side view of a first virtual object partially blocking a second virtual object provided by an embodiment of the present application;
[0028] FIG4 b is a side view of a first virtual object completely blocking a second virtual object provided by an embodiment of the present application;
[0029] FIG5a is a schematic diagram of a ray clone mode provided in an embodiment of the present application;
[0030] FIG5 b is a schematic diagram of a ray diversion mode provided in an embodiment of the present application;
[0031] FIG6 is a schematic diagram of outputting prompt information provided by an embodiment of the present application;
[0032] FIG7 is a schematic diagram of adjusting the display form of a virtual object with an occlusion relationship according to an embodiment of the present application;
[0033] FIG8 is a schematic diagram of a flow chart of another virtual object interaction method provided in an embodiment of the present application;
[0034] FIG9 is a schematic diagram of a user interacting with any virtual object using a multimodal interaction method according to an embodiment of the present application;
[0035] FIG10 is a flow chart of another virtual object interaction method provided in an embodiment of the present application;
[0036] FIG11 is a schematic block diagram of a virtual object interaction device provided in an embodiment of the present application;
[0037] FIG12 is a schematic block diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0038] The following will be combined with the accompanying drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments of this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0039] It should be noted that the terms "first", "second", etc. in the specification and claims of this application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product, or server that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products, or devices.
[0040] In the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or solution described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or solutions. Specifically, the use of words such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete manner.
[0041] In the description of the embodiments of the present application, unless otherwise specified, "a plurality of" refers to two or more than two, that is, at least two. "At least one" refers to one or more than one.
[0042] To facilitate understanding of the embodiments of the present application, before describing each embodiment of the present application, some concepts involved in all embodiments of the present application are first appropriately explained as follows:
[0043] 1) Virtual Reality (VR), a technology for creating and experiencing a virtual world, determines the generation of a virtual environment, which is a multi-source information (the virtual reality mentioned in this article includes at least visual perception, and can also include auditory perception, tactile perception, motion perception, and even taste perception, olfactory perception, etc.), realizing the fusion of virtual environments, interactive three-dimensional dynamic vision and simulation of entity behavior, allowing users to immerse themselves in a simulated virtual reality environment, and realizing applications in various virtual environments such as maps, games, videos, education, medical care, simulation, collaborative training, sales, assisted manufacturing, maintenance and repair.
[0044] 2) Virtual reality devices (VR devices), terminals that achieve virtual reality effects, can usually be provided in the form of glasses, head-mounted displays (HMDs), or contact lenses to achieve visual perception and other forms of perception. Of course, the form of virtual reality devices is not limited to this and can be further miniaturized or enlarged according to actual needs.
[0045] Optionally, the virtual reality devices described in the embodiments of this application may include but are not limited to the following types:
[0046] 2.1) PC-based virtual reality (PCVR) devices use the PC to perform calculations and output data related to virtual reality functions. External PC-based virtual reality devices use the data output by the PC to achieve virtual reality effects.
[0047] 2.2) Mobile VR devices support the configuration of mobile terminals (such as smartphones) in various ways (such as head-mounted displays with dedicated card slots). Through wired or wireless connection with the mobile terminal, the mobile terminal performs relevant calculations for VR functions and outputs data to the mobile VR device, such as viewing VR videos through the mobile terminal's app.
[0048] 2.3) All-in-one virtual reality devices have a processor for performing relevant calculations for virtual functions, and thus have independent virtual reality input and output functions. They do not need to be connected to a PC or mobile terminal and have a high degree of freedom of use.
[0049] 3) Augmented Reality (AR): A technology that uses real-time calculations of the camera's pose parameters in the real world (also known as the 3D world or the real world) as the camera captures images. Based on these pose parameters, virtual elements are added to the captured images. Virtual elements include, but are not limited to, images, videos, and 3D models. The goal of AR technology is to overlay the virtual world on the real world for interactive viewing.
[0050] 4) Mixed Reality (MR): A simulated setting that integrates computer-generated sensory input (e.g., virtual objects) with sensory input from a physical setting, or its representation. In some MR settings, the computer-generated sensory input can adapt to changes in the sensory input from the physical setting. Additionally, some electronic systems used to render MR settings can monitor the orientation and / or position relative to the physical setting to enable virtual objects to interact with real objects (i.e., physical elements from the physical setting, or their representations). For example, the system can monitor motion so that virtual plants appear stationary relative to physical buildings.
[0051] 5) Extended Reality (XR) refers to all real and virtual combined environments and human-computer interactions generated by computer technology and wearable devices, including virtual reality (VR), augmented reality (AR) and mixed reality (MR).
[0052] 6) A virtual scene is a virtual scene displayed (or provided) when an application is running on an electronic device. The virtual scene can be a simulation of the real world, a semi-simulated and semi-fictitious virtual scene, or a purely fictitious virtual scene. The virtual scene can be any of a two-dimensional virtual scene, a 2.5-dimensional virtual scene, or a three-dimensional virtual scene. The embodiment of the present application does not limit the dimensions of the virtual scene. For example, a virtual scene may include the sky, land, ocean, etc., and the land may include environmental elements such as deserts and cities, and users can control virtual objects to move in the virtual scene. It should be understood that the above-mentioned virtual scene can also be referred to as a virtual space.
[0053] 7) Virtual objects are objects that interact in virtual scenes and are controlled by users or robot programs (for example, robot programs based on artificial intelligence). They can be still, move, and perform various behaviors in the virtual scene, such as various characters in games.
[0054] When users interact with virtual objects in a virtual space, they typically use controller interaction or gesture interaction to select a target virtual object and perform various interactions with that target virtual object. However, when multiple virtual objects in the virtual space are blocked from the user's field of view, users can only interact with unobstructed virtual objects using gesture or controller interaction, but cannot interact with obstructed virtual objects, resulting in a poor user experience with virtual objects.
[0055] In order to solve the above technical problems, the invention concept of this application is: when a user interacts with a virtual object that has an occlusion relationship in a virtual space, the input device is used to detect whether the user's input information meets a predetermined condition. When the predetermined condition is met, the operation prompt information displayed on the second virtual object is changed so that the operation prompt information corresponds to the first virtual object, allowing the user to interact with the occluded virtual object, thereby improving the user's interactive experience with the virtual object.
[0056] The technical solution of the present application is described in detail below through some embodiments. The embodiments described below can be combined with each other, and the same or similar concepts or processes may not be described in detail in some embodiments.
[0057] Figure 2 is a flow chart of a virtual object interaction method provided in an embodiment of the present application. The virtual object interaction method provided in an embodiment of the present application can be performed by a virtual object interaction device. The virtual object interaction device can be composed of hardware and / or software and can be integrated into an electronic device. In the present application, electronic devices are various terminal devices including a display component and one or more input devices, such as VR devices, MR devices or XR devices. It should be understood that the above-mentioned electronic devices can also be referred to as user devices or user devices, etc., and no restrictions are imposed on the electronic devices here. In order to facilitate the explanation of the technical solution provided in the present application, the following detailed description is given by taking the electronic device as an XR device as an example.
[0058] As shown in FIG2 , the method includes the following steps:
[0059] S101, displaying a three-dimensional environment generated by a computer on a display component.
[0060] In the present application, a display is provided in the display component, and the display is used to receive three-dimensional environment data generated by a computer, so as to display a virtual three-dimensional environment to the user based on the three-dimensional environment data.
[0061] The above display can be a single display or two displays. That is, one display can be set for both eyes of the user, or one display can be set for the left eye and the right eye of the user respectively. This application does not impose any restrictions on this.
[0062] The three-dimensional environment data generated by the computer may be a virtual three-dimensional environment generated by computer simulation.
[0063] Furthermore, the virtual three-dimensional environment displayed to the user through the display in the display component can be understood as a virtual scene or a virtual space.
[0064] S102: Present a first virtual object in a three-dimensional environment.
[0065] S103: Display a second virtual object between the first virtual object and the user.
[0066] To facilitate user interaction with the three-dimensional environment displayed by the XR device, this application provides at least one virtual object within the three-dimensional environment displayed by the display component of the XR device, allowing the user to interact with the three-dimensional environment based on the virtual object. In this application, the virtual objects presented within the three-dimensional environment may include, but are not limited to, virtual characters, virtual panels, virtual interfaces, virtual controls, or virtual icons.
[0067] The first virtual object and the second virtual object may be two different virtual objects of the same type, or two different virtual objects of different types, and this application does not impose any limitation on this.
[0068] Optionally, when there are multiple virtual objects in a three-dimensional environment, it is possible that one virtual object may be blocked by another virtual object. That is, when a second virtual object is displayed between the user and a first virtual object, the second virtual object may block the first virtual object, as shown in FIG1c .
[0069] S104: Detecting first input information of the user via an input device, and displaying operation prompt information corresponding to the second virtual object.
[0070] In this application, the input device can be at least one external device that is communicatively connected to the XR device, such as a handle, a mouse, a touchpad, and a microphone, or it can be at least one sensor on the XR device, such as a gaze tracking camera for tracking the user's gaze, a gesture capture camera for capturing user gestures, and an inertial measurement unit (IMU) for obtaining user head posture data.
[0071] Correspondingly, each of the above input devices can correspond to an interaction method, such as the handle corresponds to the handle interaction method, the microphone corresponds to the voice interaction method, the gaze tracking camera corresponds to the eye movement interaction method, the IMU corresponds to the head interaction, and the gesture acquisition camera corresponds to the gesture interaction, and so on.
[0072] That is, users can perform various interactions with virtual objects in the three-dimensional scene by using input devices.
[0073] Typically, when interacting with any virtual object in a three-dimensional environment, a user can use any of the aforementioned input devices to send first input information related to interacting with the virtual object to the XR device, causing the XR device to display corresponding operation prompt information on the virtual object based on the first input information, and then use the operation prompt information to remind the user that they can interact with the virtual object. The operation prompt information can be operation prompt text or visual indication information, etc., as long as it can serve as a prompt. This application does not impose any restrictions on the specific display form of the operation prompt information.
[0074] However, when a second virtual object is displayed before a first virtual object displayed in a three-dimensional environment, that is, the first virtual object is blocked by the second virtual object, if the user wants to interact with the first virtual object by means of any input device, he can only interact with the second virtual object located in front of the first virtual object based on the first input information, that is, only the operation prompt information corresponding to the second virtual object can be displayed, thereby failing to achieve the purpose of the user interacting with the first virtual object.
[0075] S105 , detecting second input information of the user via the input device, and when the second input information meets a predetermined condition, changing the operation prompt information so that the operation prompt information corresponds to the first virtual object.
[0076] To enable normal interaction with the obscured first virtual object, the user can adjust the interaction method and send second input information related to the first virtual object to the XR device based on the adjusted interaction method. Furthermore, when the XR device determines that the user's second input information meets the predetermined conditions for interacting with the first virtual object, the operation prompt information corresponding to the second virtual object can be modified to display the operation prompt information corresponding to the first virtual object, thereby allowing the user to perform various interactions with the obscured first virtual object based on the operation prompt information corresponding to the first virtual object.
[0077] In this application, the second input information refers to information different from the first input information, such as new first input information obtained by adjusting the first input information, or adding input information different from the first input information on the basis of the first input information, or adding input information different from the first input information on the basis of the new first input information, etc. This application does not impose any restrictions on this.
[0078] Moreover, the above-mentioned predetermined conditions are related to the user's interaction intention, that is, the predetermined conditions can be flexibly set based on the user's interaction intention. For example, when the user's interaction intention is to interact with the first virtual object, then the predetermined condition is set based on the user's intention to interact with the first virtual object, such as the interaction score between the user and the first virtual object is greater than the interaction score between the user and the second virtual object, etc. This application does not impose any restrictions on the setting of the predetermined conditions.
[0079] It can be understood that when there are virtual objects that occlude each other in the three-dimensional environment presented to the user, if the user needs to interact with the occluded virtual object, the input information that can be used to interact with the unobstructed virtual object is adjusted to interact with the occluded virtual object based on the adjusted input information, so that the user can interact with the occluded virtual object, thereby improving the user's interactive experience with the virtual object.
[0080] The technical solution disclosed in the embodiment of the present application is to display a computer-generated three-dimensional environment on a display component of an electronic device, present a first virtual object within the three-dimensional environment, display a second virtual object between the first virtual object and the user, detect the user's first input information via an input device, display operation prompt information corresponding to the second virtual object, detect the user's second input information via the input device, and when the second input information meets a predetermined condition, change the operation prompt information so that the operation prompt information corresponds to the first virtual object, so that the user can interact with the obscured virtual object, thereby increasing the interest and diversity of the interaction between the user and the virtual object and improving the user's interactive experience with the virtual object.
[0081] Based on the aforementioned embodiments, it is considered that the user's second input information can be the adjusted first input information; or input information different from the first input information can be added to the first input information; or input information different from the first input information can be added to the adjusted first input information. Therefore, the following, in conjunction with Figure 3, specifically describes the process of interacting with the first virtual object based on the adjusted first input information, where the user's second input information is the adjusted first input information.
[0082] As shown in FIG3 , the method may include the following steps:
[0083] S201, displaying a three-dimensional environment generated by a computer on a display component.
[0084] S202: Present a first virtual object in a three-dimensional environment.
[0085] S203: Display a second virtual object between the first virtual object and the user.
[0086] S204: Detecting first input information of the user via the input device, and displaying operation prompt information corresponding to the second virtual object.
[0087] S205. Detect second input information of the user through the input device. If the second input information of the user detected through the input device is the adjusted first input information, determine a first intention score of the user's interaction with the first virtual object and a second intention score of the user's interaction with the second virtual object based on the adjusted first input information.
[0088] In this application, the adjusted first input information can be understood as the new first input information obtained by changing the first input information. For example, if the first input information is a user using a controller as an input device to emit an interaction ray at any virtual object at position 1, then the adjusted first input information can be the user moving the controller from position 1 to position 2 and emitting an interaction ray at the virtual object at position 2.
[0089] In some optional embodiments, the input device on the XR device detects in real time whether the user has input information. When it is detected that the user has an input operation to input information, the user's input information is obtained and sent to the processing module of the XR device, so that the processing module compares the latest input information (second input information) with the input information obtained last time (first input information) to determine whether the latest input information is consistent with the input information obtained last time. If the input device determines that the latest input information and the input information obtained last time are two different input information under the same interaction mode, the latest input information is determined to be the adjusted first input information. At this time, the XR device can determine the first intention score of the user's interaction with the first virtual object and the second intention score of the user's interaction with the second virtual object based on the adjusted first input information.
[0090] In this application, determining a first intention score for a user's interaction with a first virtual object and a second intention score for a user's interaction with a second virtual object based on the adjusted first input information may include the following implementations:
[0091] The first implementation method may include the following steps:
[0092] Step 11: Determine a first distance between visual indication information corresponding to a first virtual object and a center point position of the first virtual object, and a second distance between visual indication information corresponding to a second virtual object and a center point position of the second virtual object.
[0093] Step 12: Determine a first intention score based on the first distance, and determine a second intention score based on the second distance.
[0094] The visual indication information is the operation prompt information. In this application, visual indication information can be understood as information that can be recognized by the user's eyes. It can be graphics with different color attributes and / or graphics with different transmission frequency attributes, such as cursors of different colors or different flashing frequencies. This application does not impose any restrictions on this. The shape of the cursor can be circular, cross-shaped, or hand-shaped.
[0095] Considering the occlusion relationships between virtual objects in a 3D environment, there are two types: partial occlusion and full occlusion. Partial occlusion refers to a situation where a second virtual object occludes a small portion of a first virtual object, as shown in Figure 4a. Full occlusion refers to a situation where a second virtual object occludes a large portion of a first virtual object, or even nearly completely, as shown in Figure 4b.
[0096] Then, when a user interacts with a virtual object in an occluding relationship through a handle or gesture, the visual indication information projected onto the virtual object by the ray emitted by the handle or gesture may include the following two situations:
[0097] In scenario 1, when it is determined that the second virtual object partially blocks the first virtual object, the ray clone mode is used to project the ray emitted by the handle or gesture onto the first virtual object and the second virtual object, as shown in FIG5 a.
[0098] In the second scenario, when it is determined that the second virtual object completely blocks the first virtual object, a ray splitting mode is used to project the ray emitted by the handle or gesture to the first virtual object and the second virtual object, as shown in FIG5 b.
[0099] To determine whether the second virtual object partially or completely obscures the first virtual object, the XR device may be used to obtain a display area in which the first virtual object and the second virtual object are displayed in a three-dimensional environment, and the occlusion relationship between the first virtual object and the second virtual object may be determined based on the display area. For the specific implementation process, reference may be made to related technologies, which will not be elaborated on here.
[0100] Considering that a user projects a ray into a three-dimensional environment through an interactive method such as a handle, the ray will intersect with a first virtual object and a second virtual object that are in an occluding relationship, and each intersection will display a visual indication information on the corresponding virtual object. Therefore, the present application can obtain the intersection positions of the above ray with the first virtual object and the second virtual object respectively, and determine the intersection positions as the location of the line of sight indication information.
[0101] Furthermore, a first distance between the center point of the first virtual object and the location of the visual indication information corresponding to the first virtual object is determined, and a second distance between the center point of the second virtual object and the location of the visual indication information corresponding to the second virtual object is determined. The first distance is then determined as a first intention score for the user's interaction with the first virtual object, and the second distance is determined as a second intention score for the user's interaction with the second virtual object.
[0102] Among them, a first distance between the center point position of the first virtual object and the position of the visual indication information corresponding to the first virtual object is determined, and a second distance between the center point position of the second virtual object and the position of the visual indication information corresponding to the second virtual object is determined. Specifically, the distance between the center point position of the virtual object and the center point position of the visual indication information is determined, and a two-point distance calculation formula can be used to calculate the above-mentioned first distance and the above-mentioned second distance respectively.
[0103] The second implementation method may include the following steps:
[0104] Step 21: Determine the display position of the operation prompt information corresponding to the adjusted first input information.
[0105] Step 22: Determine a first intention score and a second intention score according to the display position of the operation prompt information.
[0106] When a first virtual object in a three-dimensional environment is blocked by a second virtual object, the user cannot directly interact with the blocked first virtual object through any interaction method. In this case, the user can move their own position or other methods to bypass the second virtual object so that the user can see the first virtual object to be interacted with. Then, the second input information (adjusted first input information) for interacting with the first virtual object is sent to the XR device through any interaction method, so that the XR device can display operation prompt information corresponding to the first virtual object based on the second input information.
[0107] That is, when the first virtual object that the user wants to interact with is blocked by the second virtual object, the user can move around the second virtual object or bypass it in other ways to see the first virtual object and then directly interact with the first virtual object.
[0108] Since the user can directly see the first virtual object after bypassing the second virtual object, the operation prompt information corresponding to the adjusted first input information can be directly displayed on the first virtual object instead of the second virtual object. Therefore, the present application can determine the first intention score and the second intention score based on the display position of the operation prompt information corresponding to the adjusted first input information.
[0109] In some embodiments, when the operation prompt information corresponding to the adjusted first input information is located on the first virtual object, the first intention score corresponding to the first virtual object can be determined to be 1, and no operation prompt information is displayed on the second virtual object, then the first intention score corresponding to the second virtual object can be determined to be 0.
[0110] S206 , determining whether the second input information meets a predetermined condition based on the first intention score and the second intention score, and executing S207 if the predetermined condition is met, otherwise executing displaying operation prompt information corresponding to the second virtual object.
[0111] In some optional embodiments, the first intention score and the second intention score can be compared. When the first intention score is greater than the second intention score, it indicates that the conditions for the user to interact with the first virtual object are met, and in this case, it is determined that the second input information meets the predetermined condition; when the first intention score is less than or equal to the second intention score, it indicates that the conditions for the user to interact with the first virtual object are not met, and in this case, it is determined that the second input information does not meet the predetermined condition.
[0112] That is, the predetermined condition in this application is determined based on the virtual object that the user actually wants to interact with. For example, when the user wants to interact with a first virtual object that is blocked, the predetermined condition is set to that the user's input information meets the rules for the user to interact with the first virtual object.
[0113] In some optional embodiments, in order to help the user interact with the first virtual object to be interacted with, the present application may also output prompt information to the user when determining that the first intention score is equal to the second intention score, so that the user can independently select the target interaction object to be interacted with from the first virtual object and the second virtual object based on the prompt information.
[0114] In the present application, the prompt information may be in the form of voice and / or text, etc. When the prompt information is in text form, the prompt information may be displayed in an area near the first virtual object and / or the second virtual object, or in a blank area within the three-dimensional scene.
[0115] For example, as shown in Figure 6, assuming that the first intention score corresponding to the first virtual object Y1 is equal to the second intention score corresponding to the second virtual object Y2, a text prompt pop-up window "Please select the target interactive object to be interacted with" is displayed near the first virtual object Y1. The pop-up window also includes: a first virtual object Y1 control and a second virtual object Y2 control, so that the user can select the first virtual object Y1 control to select the target interactive object.
[0116] S207: When the second input information satisfies a predetermined condition, modify the operation prompt information so that the operation prompt information corresponds to the first virtual object.
[0117] Optionally, the operation prompt information corresponding to the first virtual object can be adjusted from the first presentation form to the second presentation form, so that the user can determine that the first virtual object has been selected based on the adjusted operation prompt information, and then can perform various interactions with the first virtual object.
[0118] For example, assuming that virtual object X1 and virtual object X2 are in an occlusion relationship, and virtual object X1 is partially occluded by virtual object X2, then when virtual object X1 is determined to be the object to be interacted with by the user, virtual object X1 and the cursor on virtual object X1 may be highlighted, while virtual object X2 and the cursor on virtual object X2 may be defocused (see FIG7 ). Alternatively, virtual object X1 and the cursor on virtual object X1 may be highlighted, while virtual object X2 may be defocused, and the cursor may not be displayed on virtual object X2. This allows the user to intuitively identify virtual object X1 as the object to be interacted with, thereby enabling interaction with virtual object X1. It should be understood that the aforementioned cursor is a form of visual indication information, which is an operational prompt information.
[0119] The technical solution disclosed in the embodiment of the present application is to display a computer-generated three-dimensional environment on a display component of an electronic device, present a first virtual object within the three-dimensional environment, display a second virtual object between the first virtual object and the user, detect the user's first input information via an input device, display operation prompt information corresponding to the second virtual object, detect the user's second input information via the input device, and when the second input information meets a predetermined condition, change the operation prompt information so that the operation prompt information corresponds to the first virtual object, so that the user can interact with the obscured virtual object, thereby increasing the interest and diversity of the interaction between the user and the virtual object and improving the user's interactive experience with the virtual object.
[0120] 8 , the following specifically describes the process of interacting with the first virtual object based on the second input information when the second input information of the user is input information different from the first input information added to the first input information.
[0121] As shown in FIG8 , the method may include the following steps:
[0122] S301, displaying a three-dimensional environment generated by a computer on a display component.
[0123] S302: Present a first virtual object in a three-dimensional environment.
[0124] S303: Display a second virtual object between the first virtual object and the user.
[0125] S304: Detecting first input information of the user via the input device, and displaying operation prompt information corresponding to the second virtual object.
[0126] S305. Detect the user's second input information through the input device. If the second input information of the user detected through the input device is the first input information and the third input information, determine the first interaction score between the user and the first virtual object and the second interaction score between the user and the second virtual object based on the first input information and the third input information.
[0127] In this application, the third input information is of a different type than the first input information. For example, if the first input information is a ray emitted by a controller, the third input information can be the user's line of sight corresponding to the user's eye movement interaction. For another example, if the first input information is a gesture interaction, the third input information can be a head movement interaction, and so on.
[0128] In some optional embodiments, considering that there are multiple ways to interact with virtual objects, when a user interacts with a blocked first virtual object, multiple interaction methods can be superimposed to send second input information to the XR device. In this way, when the first virtual object is blocked by the second virtual object, the user can interact with the first virtual object without moving or using other methods to bypass the second virtual object that blocks the first virtual object, thereby improving the user's interaction experience with the virtual object.
[0129] As an optional implementation method, the input device on the XR device can detect in real time whether the user has input information. When it is detected that the user has an input operation to input information, the user's input information is obtained and the input information is sent to the processing module of the XR device, so that the processing module can compare the latest input information (second input information) with the input information obtained last time (first input information) to determine whether the latest input information is consistent with the input information obtained last time. If the input device determines that the latest input information includes the same input information as the last time, and also adds input information under other interaction modes, then the latest input information is determined to be the first input information + the third input information. At this time, the XR device can determine the first interaction score between the user and the first virtual object and the second interaction score between the user and the second virtual object based on the first input information and the third input information.
[0130] In some optional embodiments, the present application may determine a first interaction score between a user and a first virtual object, and a second interaction score between a user and a second virtual object based on the first input information and the third input information, which may include the following steps:
[0131] Step 31 : Determine a first input information weight value, a third input information weight value, a first virtual object weight value, and a second virtual object weight value.
[0132] In this application, the weight value of each virtual object and each input information corresponding to the interaction mode can be pre-configured in the XR device. Among them, the weight value of each interaction mode can be understood as the weight value of the input information corresponding to each interaction mode.
[0133] Furthermore, the weight value of the virtual object can be flexibly set according to the attributes of the virtual object. The attributes of the virtual object in this application may include but are not limited to: the display position of the virtual object, the content of the virtual object itself, and the practicality of the virtual object.
[0134] The weight values of the above interaction modes can be flexibly set according to the priority or attributes of the interaction modes, and this application does not impose any restrictions on this.
[0135] Furthermore, in order to meet the requirements of different application scenarios, different weight values can be set for the first virtual object, the second virtual object, and each interaction mode according to the application attributes of each application scenario, and the weight values also support update operations.
[0136] For example, when the application scenario is a live broadcast scenario, and the interaction methods include: gesture interaction, eye movement interaction, voice interaction, and head interaction, then the weight value of the first virtual object in the live broadcast scenario can be set to 1, the weight value of the second virtual object can be set to 0.5, and the following weight values can be set for each interaction method: the gesture interaction weight value is 1, the voice interaction weight value is 0.8, the eye movement interaction weight value is 0.6, and the head interaction weight value is 0.4. For another example, when the application scenario is an office scenario, and the interaction methods include: handle interaction, eye movement interaction, voice interaction, and head interaction, then the weight value of the first virtual object in the office scenario can be set to 1, the weight value of the second virtual object can be set to 0.8, and the following weight values can be set for each interaction method: the eye movement interaction weight value is 1, the handle interaction weight value is 0.9, the head interaction weight value is 0.8, and the voice interaction weight value is 0.7, and so on.
[0137] That is to say, when the present application obtains the first virtual object weight value, the second virtual object weight value, the first input information weight value and the third input information weight value, it first determines the content scene type presented in the three-dimensional environment, and then obtains the weight value of each virtual object corresponding to the scene type from the pre-configured weight value list according to the scene type, as well as the weight value of the interaction method corresponding to the first input information and the weight value of the interaction method corresponding to the third input information.
[0138] Step 32: Determine a first interaction score according to the first input information weight value, the third input information weight value, and the first virtual object weight value.
[0139] Step 33: Determine a second interaction score according to the first input information weight value, the third input information weight value, and the second virtual object weight value.
[0140] After obtaining the first input information weight value, the third input information weight value, the first virtual object weight value and the second virtual object weight value, the present application can calculate the first interaction score between the user and the first virtual object based on the first input information weight value, the third input information weight value and the first virtual object weight value, and calculate the second interaction score between the user and the second virtual object based on the first input information weight value, the third input information weight value and the second virtual object weight value.
[0141] Exemplarily, as shown in Figure 9, assuming that the interaction methods corresponding to the second input information for the first virtual object include: eye movement interaction and gesture interaction, and the interaction methods corresponding to the second input information for the second virtual object include: gesture interaction, then when the weight value of the first virtual object is 0.5, the weight value of the second virtual object is 1, the eye movement interaction weight value is 1, and the gesture interaction weight value is 0.8, the first interaction score corresponding to the first virtual object is calculated as: (1*0.5)+(1*1)+(1*0.8)=2.3, and the second interaction score corresponding to the second virtual object is: (1*1)+(1*0.8)=1.8.
[0142] In some optional embodiments, considering that the signal energy of rays corresponding to handle interaction or gesture interaction will be lost as the distance increases during transmission, the present application can also set different weight values for rays of different distances based on the ray transmission distance. For example, the weight value of rays intersecting with a close virtual object is 1, and the weight value of rays intersecting with a distant virtual object is 0.5.
[0143] Furthermore, when calculating the first interaction score corresponding to the first virtual object and the second interaction score corresponding to the second virtual object, the weight value of the ray can also be considered, thereby further improving the accuracy and reliability of the user selecting the first virtual object as the target interaction object from virtual objects with occlusion relationships.
[0144] It should be noted that the execution order of the above steps 32 and 33 can be to execute step 32 first and then step 33, or to execute step 33 first and then step 32, or to execute step 32 and step 33 simultaneously. This application does not impose any restrictions on this.
[0145] S306: Determine whether the second input information meets a predetermined condition based on the first interaction score and the second interaction score. If so, execute S307; otherwise, display operation prompt information corresponding to the second virtual object.
[0146] In some optional embodiments, the first interaction score and the second interaction score can be compared. When the first interaction score is greater than the second interaction score, it indicates that the conditions for the user to interact with the first virtual object are met, and in this case, it is determined that the second input information meets the predetermined condition; when the first interaction score is less than or equal to the second interaction score, it indicates that the conditions for the user to interact with the first virtual object are not met, and in this case, it is determined that the second input information does not meet the predetermined condition.
[0147] S307: When the second input information satisfies a predetermined condition, modify the operation prompt information so that the operation prompt information corresponds to the first virtual object.
[0148] The technical solution disclosed in the embodiment of the present application is to display a computer-generated three-dimensional environment on the display component of an electronic device, present a first virtual object in the three-dimensional environment, display a second virtual object between the first virtual object and the user, detect the user's first input information via an input device, display operation prompt information corresponding to the second virtual object, detect the user's second input information via the input device, and when the second input information meets a predetermined condition, change the operation prompt information so that the operation prompt information corresponds to the first virtual object, so that the user can interact with the obscured virtual object, thereby increasing the interactive fun and interaction diversity between the user and the virtual object and improving the interactive experience of the user and the virtual object. In addition, the present application adds other interaction methods on the basis of the single-modal interaction method to provide a multi-modal interaction method to guide the user to interact with the obscured virtual object, thereby meeting the user's demand for direct interaction with the obscured virtual object.
[0149] 10 , the following specifically describes the process of interacting with the first virtual object based on the second input information when the user's second input information is input information different from the first input information added to the adjusted first input information.
[0150] As shown in FIG10 , the method may include the following steps:
[0151] S401, displaying a three-dimensional environment generated by a computer on a display component.
[0152] S402: Present a first virtual object in a three-dimensional environment.
[0153] S403: Display a second virtual object between the first virtual object and the user.
[0154] S404: Detecting first input information of the user via the input device, and displaying operation prompt information corresponding to the second virtual object.
[0155] S405. Detect the user's second input information through the input device. If the second input information of the user detected through the input device is the adjusted first input information and third input information, determine the third interaction score between the user and the first virtual object and the fourth interaction score between the user and the second virtual object based on the adjusted first input information and the third input information.
[0156] In some optional embodiments, the input device on the XR device can detect in real time whether the user has input information. When it is detected that the user has input information, the user's input information is obtained and the input information is sent to the processing module of the XR device, so that the processing module can compare the latest acquired input information (second input information) with the input information acquired last time (first input information) to determine whether the latest acquired input information is consistent with the input information acquired last time. If the input device determines that the latest acquired input information includes the adjusted first input information and input information under other interaction modes, it is determined that the latest acquired input information is the adjusted first input information + the third input information. At this time, the XR device can determine the third interaction score between the user and the first virtual object and the fourth interaction score between the user and the second virtual object based on the adjusted first input information and the third input information.
[0157] In some optional embodiments, the present application may determine, based on the adjusted first input information and the third input information, a third interaction score between the user and the first virtual object, and a fourth interaction score between the user and the second virtual object, which may include the following steps:
[0158] Step 41, determining the adjusted first input information weight value, third input information weight value, first virtual object weight value, and second virtual object weight value;
[0159] Step 42: Determine a third interaction score according to the first input information weight value, the third input information weight value, and the first virtual object weight value.
[0160] Step 43: Determine a second interaction score according to the first input information weight value, the third input information weight value, and the second virtual object weight value.
[0161] Among them, the implementation principles of steps 41 to 43 are the same as or similar to the implementation principles of steps 31 to 33 in the aforementioned embodiment. The specific implementation process can be found in the aforementioned embodiment, and no limitation is made here.
[0162] S406: Determine whether the second input information meets a predetermined condition based on the third interaction score and the fourth interaction score. If so, execute S407; otherwise, display operation prompt information corresponding to the second virtual object.
[0163] In some optional embodiments, the third interaction score and the fourth interaction score can be compared. When the third interaction score is greater than the fourth interaction score, it indicates that the conditions for the user to interact with the first virtual object are met, and in this case, it is determined that the second input information meets the predetermined condition; when the third interaction score is less than or equal to the fourth interaction score, it indicates that the conditions for the user to interact with the first virtual object are not met, and in this case, it is determined that the second input information does not meet the predetermined condition.
[0164] S407: When the second input information satisfies a predetermined condition, modify the operation prompt information so that the operation prompt information corresponds to the first virtual object.
[0165] The technical solution disclosed in the embodiment of the present application is to display a computer-generated three-dimensional environment on the display component of an electronic device, present a first virtual object in the three-dimensional environment, display a second virtual object between the first virtual object and the user, detect the user's first input information via an input device, display operation prompt information corresponding to the second virtual object, detect the user's second input information via the input device, and when the second input information meets a predetermined condition, change the operation prompt information so that the operation prompt information corresponds to the first virtual object, so that the user can interact with the obscured virtual object, thereby increasing the interactive fun and interaction diversity between the user and the virtual object and improving the interactive experience of the user and the virtual object. In addition, the present application adds other interaction methods on the basis of the single-modal interaction method to provide a multi-modal interaction method to guide the user to interact with the obscured virtual object, thereby meeting the user's demand for direct interaction with the obscured virtual object.
[0166] The following describes a virtual object interaction device according to an embodiment of the present application with reference to FIG11 . FIG11 is a schematic block diagram of a virtual object interaction device according to an embodiment of the present application. In the present application, the virtual object interaction device is configured in an electronic device, and the electronic device includes a display component and one or more input devices.
[0167] As shown in FIG. 11 , the virtual object interaction device 500 includes a display module 510 and a modification module 520 .
[0168] The display module 510 is configured to display a computer-generated three-dimensional environment on a display component; present a first virtual object within the three-dimensional environment; display a second virtual object between the first virtual object and the user; and detect the user's first input information via the input device and display operation prompt information corresponding to the second virtual object.
[0169] The changing module 520 is configured to detect second input information of the user via the input device, and when the second input information satisfies a predetermined condition, change the operation prompt information so that the operation prompt information corresponds to the first virtual object.
[0170] In an optional implementation of the embodiment of the present application, the second input information includes:
[0171] the adjusted first input information; or,
[0172] the first input information and the third input information; or,
[0173] the adjusted first input information and the third input information;
[0174] The third input information is of a different type from the first input information.
[0175] In an optional implementation of the embodiment of the present application, the predetermined condition is related to the user's interaction intention.
[0176] In an optional implementation of the embodiment of the present application, the changing module 502 includes:
[0177] a first determining unit, configured to determine, if the second input information of the user detected via the input device is the adjusted first input information, a first intention score for the user to interact with the first virtual object and a second intention score for the user to interact with the second virtual object based on the adjusted first input information;
[0178] a second determining unit, configured to determine whether the second input information satisfies a predetermined condition based on the first intention score and the second intention score;
[0179] A changing unit is used to change the operation prompt information when the second input information meets a predetermined condition.
[0180] In an optional implementation method of an embodiment of the present application, when the operation prompt information is visual indication information, the first determination unit is specifically used to: determine a first distance between the visual indication information corresponding to the first virtual object and the center point position of the first virtual object, and a second distance between the visual indication information corresponding to the second virtual object and the center point position of the second virtual object; determine the first intention score based on the first distance, and determine the second intention score based on the second distance.
[0181] In an optional implementation method of an embodiment of the present application, when the operation prompt information is visual indication information, the first determination unit is specifically used to: determine the display position of the operation prompt information corresponding to the adjusted first input information; and determine the first intention score and the second intention score based on the display position of the operation prompt information.
[0182] In an optional implementation of an embodiment of the present application, the second determination unit is specifically used to: when the first intention score is greater than the second intention score, determine that the second input information meets the predetermined condition; when the first intention score is less than or equal to the second intention score, determine that the second input information does not meet the predetermined condition.
[0183] In an optional implementation manner of the embodiment of the present application, the changing unit is specifically configured to adjust the operation prompt information corresponding to the first virtual object from a first presentation form to a second presentation form.
[0184] In an optional implementation of the embodiment of the present application, the first determining unit is further configured to determine, based on the first input information and the third input information, a first interaction score between the user and the first virtual object and a second interaction score between the user and the second virtual object if the second input information of the user detected via the input device is the first input information and the third input information;
[0185] a second determining unit, further configured to determine whether the second input information satisfies a predetermined condition based on the first interaction score and the second interaction score;
[0186] The changing unit is further configured to change the operation prompt information when the second input information meets a predetermined condition.
[0187] In an optional implementation method of an embodiment of the present application, the first determination unit is further used to determine the first input information weight value, the third input information weight value, the first virtual object weight value and the second virtual object weight value; determine the first interaction score based on the first input information weight value, the third input information weight value and the first virtual object weight value; determine the second interaction score based on the first input information weight value, the third input information weight value and the second virtual object weight value.
[0188] In an optional implementation of an embodiment of the present application, the second determination unit is further used to determine that the second input information meets a predetermined condition when the first interaction score is greater than the second interaction score; and determine that the second input information does not meet the predetermined condition when the first interaction score is less than or equal to the second interaction score.
[0189] In an optional implementation of the embodiment of the present application, the first determining unit is further configured to determine, if the second input information of the user detected via the input device is the adjusted first input information and the third input information, a third interaction score between the user and the first virtual object and a fourth interaction score between the user and the second virtual object based on the adjusted first input information and the third input information;
[0190] a second determining unit, further configured to determine whether the second input information satisfies a predetermined condition based on the third interaction score and the fourth interaction score;
[0191] The changing unit is further configured to change the operation prompt information when the second input information meets a predetermined condition.
[0192] It should be understood that the device embodiment and the aforementioned method embodiment may correspond to each other, and similar descriptions can refer to the method embodiment. To avoid repetition, no further description is given here. Specifically, the device 500 shown in Figure 11 can execute the method embodiment corresponding to Figure 2, and the aforementioned and other operations and / or functions of each module in the device 500 are respectively for implementing the corresponding processes in each method in Figure 2. For the sake of brevity, no further description is given here.
[0193] The above describes the device 500 of the embodiment of the present application from the perspective of functional modules in conjunction with the accompanying drawings. It should be understood that the functional module can be implemented in hardware form, can be implemented by instructions in software form, and can also be implemented by a combination of hardware and software modules. Specifically, the steps of the first aspect method embodiment in the embodiment of the present application can be completed by the hardware integrated logic circuit and / or software form instructions in the processor, and the steps of the first aspect method disclosed in conjunction with the embodiment of the present application can be directly embodied as being executed by a hardware decoding processor, or can be executed by a combination of hardware and software modules in the decoding processor. Optionally, the software module can be located in a mature storage medium in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory, and the processor reads the information in the memory and completes the steps in the above-mentioned first aspect method embodiment in conjunction with its hardware.
[0194] FIG12 is a schematic block diagram of an electronic device provided in an embodiment of the present application. As shown in FIG12 , the electronic device 600 may include:
[0195] The memory 610 and the processor 620 are configured to store computer programs and transmit the program code to the processor 620. In other words, the processor 620 can call and run the computer program from the memory 610 to implement the virtual object interaction method in the embodiment of the present application.
[0196] For example, the processor 620 may be configured to execute the aforementioned virtual object interaction method embodiment according to instructions in the computer program.
[0197] In some embodiments of the present application, the processor 320 may include but is not limited to:
[0198] General-purpose processor, Digital Signal Processor (DSP), Application Specific Integrated Circuit (ASIC), Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware components, etc.
[0199] In some embodiments of the present application, the memory 610 includes but is not limited to:
[0200] Volatile memory and / or non-volatile memory. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory can be random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link DRAM (SLDRAM), and direct RAM bus random access memory (DR RAM).
[0201] In some embodiments of the present application, the computer program may be divided into one or more modules, which are stored in the memory 610 and executed by the processor 620 to implement the virtual object interaction method provided by the present application. The one or more modules may be a series of computer program instruction segments capable of performing specific functions, and the instruction segments are used to describe the execution process of the computer program in the electronic device.
[0202] As shown in FIG12 , the electronic device 600 may further include:
[0203] The transceiver 630 may be connected to the processor 620 or the memory 610 .
[0204] The processor 620 may control the transceiver 630 to communicate with other devices. Specifically, the processor 620 may send information or data to other devices or receive information or data sent by other devices. The transceiver 630 may include a transmitter and a receiver. The transceiver 630 may further include one or more antennas.
[0205] It should be understood that the various components in the electronic device are connected via a bus system, wherein the bus system includes not only a data bus but also a power bus, a control bus and a status signal bus.
[0206] The present application also provides a computer storage medium having a computer program stored thereon. When the computer program is executed by a computer, the computer is enabled to perform the virtual object interaction method of the above method embodiment.
[0207] An embodiment of the present application further provides a computer program product comprising program instructions, which, when executed on an electronic device, enables the electronic device to execute the virtual object interaction method of the above method embodiment.
[0208] When software is used for implementation, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function according to the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center via a wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) method. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrated. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a digital video disc (DVD)), or a semiconductor medium (e.g., a solid state drive (SSD)).
[0209] Those skilled in the art will appreciate that the modules and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0210] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the modules is merely a logical function division. In actual implementation, there may be other division methods, such as multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or modules, which can be electrical, mechanical or other forms.
[0211] Modules described as separate components may or may not be physically separate, and components displayed as modules may or may not be physical modules, i.e., they may be located in one place or distributed across multiple network elements. Some or all of the modules may be selected based on actual needs to achieve the purpose of the present embodiment. For example, the functional modules in the various embodiments of the present application may be integrated into a processing module, or each module may exist physically separately, or two or more modules may be integrated into a single module.
[0212] In the embodiments of the present application, the term "module" or "unit" refers to a computer program or a part of a computer program that has a predetermined function and works together with other related parts to achieve a predetermined goal, and can be implemented in whole or in part by using software, hardware (such as processing circuits or memories) or a combination thereof. Similarly, a processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be part of an overall module or unit that includes the function of the module or unit.
[0213] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of the present application. Therefore, the scope of protection of the present application should be based on the scope of protection of the claims.
Claims
1. A virtual object interaction method, applied to an electronic device, wherein the electronic device includes a display component and one or more input devices, and the method includes: displaying a computer-generated three-dimensional environment on a display component; Presenting a first virtual object in the three-dimensional environment; displaying a second virtual object between the first virtual object and the user; detecting first input information of the user via the input device, and displaying operation prompt information corresponding to the second virtual object; The second input information of the user is detected via the input device, and when the second input information meets a predetermined condition, the operation prompt information is changed so that the operation prompt information corresponds to the first virtual object.
2. The method according to claim 1, wherein: The second input information includes: the adjusted first input information; or, the first input information and the third input information; or, the adjusted first input information and the third input information; The third input information is of a different type from the first input information.
3. The method according to claim 2, wherein: The predetermined condition is related to the interaction intention of the user.
4. The method according to claim 3, wherein: The detecting, via the input device, second input information of the user, and changing the operation prompt information when the second input information meets a predetermined condition, comprises: If the second input information of the user detected via the input device is the adjusted first input information, determining a first intention score of the user interacting with the first virtual object and a second intention score of the user interacting with the second virtual object according to the adjusted first input information; determining, according to the first intention score and the second intention score, whether the second input information satisfies a predetermined condition; When the second input information meets a predetermined condition, the operation prompt information is changed.
5. The method according to claim 4, wherein: When the operation prompt information is visual indication information, determining, according to the adjusted first input information, a first intention score of the user interacting with the first virtual object and a second intention score of the user interacting with the second virtual object, comprises: Determining a first distance between the visual indication information corresponding to the first virtual object and the center point position of the first virtual object, and a second distance between the visual indication information corresponding to the second virtual object and the center point position of the second virtual object; The first intent score is determined based on the first distance, and the second intent score is determined based on the second distance.
6. The method according to claim 4, wherein: When the operation prompt information is visual indication information, determining, according to the adjusted first input information, a first intention score of the user interacting with the first virtual object and a second intention score of the user interacting with the second virtual object, comprises: Determining a display position of the operation prompt information corresponding to the adjusted first input information; The first intention score and the second intention score are determined according to a display position of the operation prompt information.
7. The method according to any one of claims 4 to 6, wherein: The determining, according to the first intention score and the second intention score, whether the second input information satisfies a predetermined condition includes: When the first intention score is greater than the second intention score, determining that the second input information satisfies a predetermined condition; When the first intention score is less than or equal to the second intention score, it is determined that the second input information does not meet a predetermined condition.
8. The method according to any one of claims 4 to 7, wherein: When the second input information satisfies a predetermined condition, changing the operation prompt information includes: The operation prompt information corresponding to the first virtual object is adjusted from a first presentation form to a second presentation form.
9. The method according to claim 3, wherein: The detecting, via the input device, second input information of the user, and changing the operation prompt information when the second input information meets a predetermined condition, comprises: If the second input information of the user detected via the input device is the first input information and the third input information, determining a first interaction score between the user and the first virtual object and a second interaction score between the user and the second virtual object according to the first input information and the third input information; determining, according to the first interaction score and the second interaction score, whether the second input information satisfies a predetermined condition; When the second input information meets a predetermined condition, the operation prompt information is changed.
10. The method according to claim 9, wherein: The determining, according to the first input information and the third input information, a first interaction score between the user and the first virtual object and a second interaction score between the user and the second virtual object comprises: Determining a first input information weight value, a third input information weight value, a first virtual object weight value, and a second virtual object weight value; Determining the first interaction score according to the first input information weight value, the third input information weight value and the first virtual object weight value; The second interaction score is determined according to the first input information weight value, the third input information weight value and the second virtual object weight value.
11. The method according to claim 9 or 10, wherein: The determining, according to the first interaction score and the second interaction score, whether the second input information satisfies a predetermined condition includes: When the first interaction score is greater than the second interaction score, determining that the second input information meets a predetermined condition; When the first interaction score is less than or equal to the second interaction score, it is determined that the second input information does not meet a predetermined condition.
12. The method according to claim 3, wherein: The detecting, via the input device, second input information of the user, and changing the operation prompt information when the second input information meets a predetermined condition, comprises: If the second input information of the user detected via the input device is the adjusted first input information and the third input information, determining a third interaction score between the user and the first virtual object and a fourth interaction score between the user and the second virtual object according to the adjusted first input information and the third input information; determining, according to the third interaction score and the fourth interaction score, whether the second input information satisfies a predetermined condition; When the second input information meets a predetermined condition, the operation prompt information is changed.
13. A virtual object interaction device, configured in an electronic device, the electronic device comprising a display component and one or more input devices, comprising: A display module for displaying a computer-generated three-dimensional environment on a display component; Presenting a first virtual object in the three-dimensional environment; Displaying a second virtual image between the first virtual image and the user; detecting first input information of the user via the input device, and displaying operation prompt information corresponding to the second virtual image; The changing module is used to detect the second input information of the user via the input device, and when the second input information meets a predetermined condition, change the operation prompt information so that the operation prompt information corresponds to the first virtual object.
14. An electronic device comprising: A processor and a memory, wherein the memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory to execute the virtual object interaction method according to any one of claims 1 to 12.
15. A computer-readable storage medium for storing a computer program, wherein the computer program enables a computer to execute the virtual object interaction method according to any one of claims 1 to 12. 16 . A computer program, wherein the computer program enables a computer to execute the virtual object interaction method according to claim 1 .
Citation Information
Patent Citations
Virtual object control method and device, electronic equipment and storage medium
CN112295228A
Game control method and device, electronic equipment and storage medium
CN113797557A
Human-computer interaction method, device and equipment and storage medium
CN116088689A
Soft-Occlusion for Computer Graphics Rendering
US20200098140A1