Virtual reality interaction method and device, electronic equipment and medium

CN120215697BActive Publication Date: 2026-08-11HONG KONG UNIV OF SCI & TECH (GUANGZHOU)
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-02-28
Publication Date
2026-08-11

AI Technical Summary

Technical Problem

当前技术中,在目标物体被遮挡的情况下,为了能与目标物体交互,用户可以将遮挡物移开(如果遮挡物可被移动),或者移动用户视角以看到目标物体(如果应用场景支持移动用户视角),即通过改变用户的视角或修改场景来消除遮挡物产生的障碍,但是这种处理方式,用户在与目标物体交互完成后需要对原有视角或场景进行恢复,增加了交互过程的复杂性

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120215697B_ABST
    Figure CN120215697B_ABST
Patent Text Reader

Abstract

This application provides a virtual reality interaction method, device, electronic device, and medium, relating to the field of virtual reality technology. The method includes: acquiring a focal area when a user is using a virtual reality interaction device, the focal area being an enclosed space formed by multiple planes, the enclosed space including multiple objects, including a target object; responding to a first operation by the user, adjusting the spatial position of an occluding plane among the multiple planes so that an obstacle object is located outside the enclosed space, the obstacle object being the object among the multiple objects that occludes the target object, and the display state of the obstacle object located outside the enclosed space being a target display state, the target display state being a display state with a first transparency. Thus, the user can eliminate the occlusion of the obstacle object and reveal the target object for interactive actions without changing the original viewpoint or scene.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of virtual reality technology, and more specifically to a virtual reality interaction method, device, electronic device, and medium. Background Technology

[0002] Virtual Reality (VR) refers to the combination of reality and virtuality through computer devices to create a virtual environment that allows for human-computer interaction. This can be achieved using head-mounted VR devices. When a user interacts with a target object in virtual reality space (3D space), the target object generally needs to be visible. When there are many objects in the virtual reality space, the target object the user wants to interact with may be occluded by other objects. In current technology, when a target object is occluded, in order to interact with it, the user can move the occluder (if the occluder is movable) or move the user's viewpoint to see the target object (if the application scenario supports moving the user's viewpoint). That is, by changing the user's viewpoint or modifying the scene, the obstacle created by the occlusion is eliminated. However, this approach requires restoring the original viewpoint or scene after the user has finished interacting with the target object, increasing the complexity of the interaction process. Summary of the Invention

[0003] The purpose of this application is to provide a virtual reality interaction method, device, electronic device, and medium that eliminates interaction obstacles caused by object occlusion without requiring users to change their original viewpoint or scene.

[0004] In a first aspect, embodiments of this application provide a virtual reality interaction method, the method being applied to a virtual reality interaction device, the method comprising:

[0005] The focal area of ​​the user when using the virtual reality interaction device is obtained. The focal area is a accommodating space formed by multiple planes. The accommodating space includes multiple objects, including the target object.

[0006] In response to the user's first operation, the spatial position of the occluding plane among the plurality of planes is adjusted so that the obstacle object is located outside the accommodating space. The obstacle object is the object among the plurality of objects that occludes the target object. The occluding plane is the plane among the plurality of planes that faces the user and is closest to the user. The display state of the obstacle object located outside the accommodating space is the target display state. The target display state is a display state with a first transparency, which is greater than a preset transparency threshold.

[0007] In some embodiments, after adjusting the spatial position of the occluding plane among the plurality of planes in response to the user's first operation so that the obstacle object is located outside the accommodating space, the method further includes:

[0008] In response to the user's second operation, the target object is determined among a plurality of objects in the accommodating space.

[0009] In some implementations, both the first operation and the second operation are triggered by the user's gesture;

[0010] Alternatively, the first operation may be triggered by the user via a handheld controller, and the second operation may be triggered by the user's gesture, wherein the handheld controller is communicatively connected to the virtual reality interaction device;

[0011] Alternatively, both the first and second operations may be triggered by the user through the handheld controller.

[0012] In some implementations, determining the target object among a plurality of objects in the accommodating space in response to the user's second operation includes:

[0013] The position coordinates corresponding to the indicator point controlled by the user's second operation are mapped onto the occlusion plane to obtain remapped coordinates, and the indicator point is located in the accommodating space;

[0014] The position coordinates corresponding to the focal center are multiplied by a first weight to obtain a first product, and the remapped coordinates are multiplied by a second weight to obtain a second product. The sum of the first weight and the second weight is a preset value, and the focal center is the geometric center of the occlusion plane.

[0015] Add the first product to the second product to obtain the target location coordinates of the user's indicated point;

[0016] The target object is determined among the multiple objects in the accommodating space based on the target position coordinates of the indicated point.

[0017] In some embodiments, determining the target object among the plurality of objects in the accommodating space based on the target position coordinates of the indicated point includes:

[0018] Multiple objects in the accommodating space are identified as candidate objects;

[0019] Based on the position coordinates of each candidate object and the target position coordinates of the indicator point, determine the distance and relative angle between each candidate object and the indicator point;

[0020] The target score for each candidate object is determined based on the distance and relative angle between each candidate object and the indicator point.

[0021] The candidate object with the highest target score among the multiple candidate objects is determined as the target object.

[0022] In some implementations, determining the target score for each candidate object based on the distance and relative angle between each candidate object and the indicator point includes:

[0023] The target score for each candidate object is calculated according to the following expression:

[0024] G obj =μ / D+A cos(Kα);

[0025] S obj (t)=λS obj (t-1)+(1-λ)G obj / β;

[0026] Where μ is the first weight, D is the distance between the candidate object and the indicator point, α is the relative angle between the candidate object and the indicator point, A and K are preset angle coefficients, β is a preset scaling coefficient, and G... obj As the initial score, S obj (t) represents the target score of the candidate object, λ is the preset time viscosity coefficient, and S obj (t-1) represents the target score of the candidate object in the previous frame, and t represents the current frame number of the candidate object.

[0027] In some implementations, if both the first operation and the second operation are triggered by the user's gesture, the first weight is less than the second weight.

[0028] If the first operation is triggered by the user through a handheld controller, and the second operation is triggered by the user's gesture, the first weight is greater than the first value, wherein the first value is the value of the first weight in the first input mode, and the handheld controller is communicatively connected to the virtual reality interaction device;

[0029] If both the first operation and the second operation are triggered by the user through the handheld controller, the first weight is 0.

[0030] Secondly, embodiments of this application provide an apparatus, a virtual reality interaction device, which is applied to a virtual reality interaction device, and the apparatus includes:

[0031] The acquisition module is used to acquire the focus area of ​​the user when using the virtual reality interaction device. The focus area is an accommodating space formed by multiple planes, and the accommodating space includes multiple objects, including the target object.

[0032] An adjustment module is used to respond to the user's first operation by adjusting the spatial position of the occluding plane among the plurality of planes so that the obstacle object is located outside the accommodating space. The obstacle object is the object among the plurality of objects that occludes the target object. The occluding plane is the plane among the plurality of planes that faces the user and is closest to the user. The display state of the obstacle object located outside the accommodating space is the target display state. The target display state is a display state with a first transparency, which is greater than a preset transparency threshold.

[0033] Thirdly, embodiments of this application provide an electronic device, including:

[0034] The memory is configured to store instructions; and

[0035] The processor is configured to retrieve the instructions from the memory and, when executing the instructions, to implement the virtual reality interaction method provided in the first aspect of the embodiments of this application.

[0036] Fourthly, embodiments of this application provide a machine-readable storage medium storing instructions that, when executed by a processor, cause the processor to implement the virtual reality interaction method according to the first aspect of embodiments of this application.

[0037] In this embodiment, when a user uses a virtual reality interaction device, a focal area is generated. This focal area corresponds to the containment space of the target object that the user wishes to interact with. After acquiring the user's focal area, the processor of the virtual reality interaction device determines the containment space and its occlusion plane. Subsequently, in response to the user's first operation, namely, an occlusion plane adjustment operation, the spatial position of the occlusion plane is adjusted so that the obstacle obscuring the target object is excluded from the containment space. The obstacle excluded from the containment space is displayed with a first transparency greater than a preset transparency threshold, making the obscured target object visible. In this way, the user can eliminate the occlusion of the obstacle without changing the original viewpoint or scene, revealing the target object for interactive actions. Attached Figure Description

[0038] Figure 1 This is a flowchart illustrating the virtual reality interaction method provided in an embodiment of this application;

[0039] Figure 2 and Figure 3This is a third-view simulation diagram of the occlusion plane adjustment process provided in the embodiments of this application;

[0040] Figure 4 This is a schematic diagram of the visual effect of the focal area provided in the embodiments of this application;

[0041] Figure 5 and Figure 6 This is a first-view simulation diagram of the object selection process provided in the embodiments of this application;

[0042] Figure 7 This is a schematic diagram of the three interactive input modes provided in the embodiments of this application;

[0043] Figure 8 This is a schematic diagram of the process for determining the coordinates of the target location of the indicator point provided in an embodiment of this application;

[0044] Figure 9 This is a schematic diagram of the structure of the virtual reality interaction device provided in the embodiments of this application;

[0045] Figure 10 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application. Detailed Implementation

[0046] The technical solutions of the embodiments of this application will be clearly described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application are within the scope of protection of this application.

[0047] The terms "first," "second," etc., used in the specification and claims of this application are used to distinguish similar objects and not to describe a specific order or sequence. It should be understood that such terms can be used interchangeably where appropriate so that embodiments of this application can be implemented in orders other than those illustrated or described herein, and the objects distinguished by "first," "second," etc., are generally of the same class and the number of objects is not limited; for example, a first object can be one or more. Furthermore, in the specification and claims, "and / or" indicates at least one of the connected objects, and the character " / " generally indicates that the preceding and following objects are in an "or" relationship.

[0048] The virtual reality interaction method, device, electronic device, and medium provided in this application will be described in detail below with reference to the accompanying drawings and through specific embodiments and application scenarios.

[0049] Please see Figure 1 This is a flowchart illustrating a virtual reality interaction method provided in an embodiment of this application, which is applied to a virtual reality interaction device. Figure 1 As shown, the virtual reality interaction method includes the following steps S100 to S200.

[0050] Step S100: Obtain the focus area when the user is using the virtual reality interaction device. The focus area is a accommodating space formed by multiple planes. The accommodating space includes multiple objects, including the target object.

[0051] Figure 2 and Figure 3 This is a third-view simulation diagram of the occlusion plane adjustment process provided in the embodiments of this application. Please refer to it as well. Figures 1-3 In the virtual display interaction method provided in this application embodiment, the first step of the processor of the virtual reality interaction device is to obtain the focal area when the user is using the virtual reality interaction device. The focal area can be understood as the area where the user expects to interact, that is, a rough focal range determined by the processor based on the user's state when using the virtual reality interaction device. The focal area is also an accommodating space enclosed by multiple planes, including multiple objects that can be interacted with by the user, that is, the accommodating space includes the target object that the user expects to interact with.

[0052] For example, such as Figure 2 and Figure 3 As shown, the virtual display interaction device is a head-mounted device. The processor determines the user's viewpoint based on the user's head movements (by collecting head rotation data to determine the head movements), and determines the corresponding view frustum A in the virtual display space based on the user's viewpoint. The size of the view frustum A can be adjusted according to the user's operation. This view frustum A includes the accommodating space B (i.e., the focal area) containing the target object.

[0053] Step S200: In response to the user's first operation, adjust the spatial position of the occluding plane among the multiple planes so that the obstacle object is located outside the accommodating space. The obstacle object is the object that occludes the target object among the multiple objects. The occluding plane is the plane facing the user and closest to the user among the multiple planes. The display state of the obstacle object located outside the accommodating space is the target display state. The target display state is a display state with a first transparency, and the first transparency is greater than a preset transparency threshold.

[0054] Next, in response to the user's first operation (i.e., the occlusion plane adjustment operation), the processor adjusts the spatial position of the occlusion planes among the multiple planes enclosing the containment space. An occlusion plane is the plane facing the user and closest to them, used to occlude or remove objects in the containment space (especially those that occlude the target object) to adjust the size of the containment space. For example, if the user operates the controller or uses gestures, the processor adjusts the position of the occlusion planes accordingly, causing objects occluding the target book (such as a cup on a table) to move out of the containment space. Finally, obstacles located outside the containment space are simultaneously set to target display state, meaning these obstacles will be displayed with a first transparency greater than a preset transparency threshold.

[0055] Those skilled in the art will understand that the preset transparency threshold can be adjusted and set according to the requirements of the visual effect of the virtual display space, ensuring that the target object can be seen through when the obstacle is displayed in a first transparency state greater than the preset transparency threshold. For example, after adjustment, the cup is completely removed from the space, and the target book is displayed in a semi-transparent state, ensuring that the user can clearly see the position of the book, and at the same time be able to identify other objects around the book.

[0056] Those skilled in the art will also understand that the focal area—the accommodating space—is a spatial area in which the user can interact, including objects that the user can interact with. When the processor adjusts the occlusion plane in response to the user's first operation, the obstacle object removed from the accommodating space can be set to a state where it cannot respond to the user's interactive operation while being displayed with the first transparency, so as to avoid interfering with the user's interactive operation on the target object.

[0057] For example, such as Figure 2 and Figure 3 As shown, the occlusion plane C is the near plane (the plane closer to the user) in the boundary plane of the accommodating space B. Adjusting the position of the occlusion plane C changes the size of the accommodating space B. Obstacles that are excluded from the accommodating space are displayed in a semi-transparent state and cannot respond to user interaction.

[0058] Through steps S100-S200, a focal area is generated when the user uses the virtual reality interaction device. This focal area corresponds to the containment space of the target object that the user wishes to interact with. After acquiring the user's focal area, the processor of the virtual reality interaction device determines the containment space and its occlusion plane. Subsequently, in response to the user's first operation, namely the occlusion plane adjustment operation, the spatial position of the occlusion plane is adjusted so that the obstacle obscuring the target object is excluded from the containment space. The obstacle excluded from the containment space is displayed with a first transparency greater than a preset transparency threshold, making the obscured target object visible. In this way, the user can eliminate the occlusion of the obstacle without changing the original viewpoint or scene, revealing the target object for interactive actions.

[0059] In some implementations, the processor can also rotate the occlusion plane based on the user's first operation to remove the obstacle from the accommodating space.

[0060] Figure 4 This is a visual effect diagram of the focal area provided in the embodiments of this application, such as... Figure 4 As shown, in some implementations, the processor can also perform visual effect design on the focal area (i.e., the accommodating space) according to the settings of the technician (e.g., displaying the focal area with a clear boundary during display, or differentiating the objects in the focal area with a unified display effect), so that objects inside and outside the focal area can be clearly distinguished.

[0061] In some implementations, after adjusting the spatial position of the occluding planes among the multiple planes in response to a first user action so that the obstacle is located outside the accommodating space, the method further includes:

[0062] In response to the user's second action, the target object is determined among multiple objects in the accommodating space.

[0063] In this embodiment, after adjusting the occlusion plane according to the user's first operation, the processor, in response to the user's second operation (i.e., object selection operation), identifies the target object among multiple objects in the accommodating space. Specifically, after the user adjusts the occlusion plane, the processor continues to identify and determine the target object in the accommodating space according to the user's second operation. Through the second operation, the user can further precisely select and lock the final target object. The second operation can be implemented through gesture interaction commands or other input methods. After determining the target object, the processor can highlight the target object (e.g., highlight the target object with a yellow outline), making the target object the focus of interaction and facilitating further user operations.

[0064] Figure 5 and Figure 6This is a first-view simulation diagram of the object selection process provided in the embodiments of this application, such as... Figure 5 and Figure 6 As illustrated, exemplarily, in a virtual reality space, a user adjusts an occlusion plane using gestures, causing an obstacle (such as a tree) to become semi-transparent, revealing another tree that the user wishes to interact with. During this process, the processor exposes the target object from behind the obstacle and responds to the user's second action. The user might point to the tree as the target object with a gesture, or control a pointer with a handheld controller, clearly indicating a desire to interact with the tree. The processor then identifies the tree as the target object, highlights its outline, and prepares for the next action, such as rotating or moving the tree.

[0065] In some implementations, both the first and second operations are triggered by the user's gestures;

[0066] Alternatively, the first operation is triggered by the user through a handheld controller, and the second operation is triggered by the user's gesture, with the handheld controller communicating with the virtual reality interaction device;

[0067] Alternatively, both the first and second operations can be triggered by the user via a handheld controller.

[0068] Figure 7 This is a schematic diagram illustrating the three interactive input modes provided in the embodiments of this application, such as... Figure 7 As shown, in this embodiment, the user's interactive operation input includes three modes. In the first input mode, both the first operation (occlusion plane adjustment operation) and the second operation (target object selection operation) are triggered by the user's gestures. In this input mode, the user can complete all interactive steps by gestures without using additional hardware devices. For example, the user performs the occlusion plane adjustment operation by using the left hand gesture and the target object selection operation by using the right hand gesture.

[0069] In the second input mode, the first operation is triggered by the user through a handheld controller, while the second operation is triggered by the user's gestures, all while maintaining a communication connection between the handheld controller and the virtual reality interaction device. The second input mode allows users to combine the handheld controller and gestures for a more flexible interactive experience. For example, a user can use their left hand to control the handheld controller to adjust the occlusion plane and their right hand to select a target object using gestures.

[0070] In the third input mode, both the first and second operations are triggered by the user through a handheld controller. In this input mode, the user completes all interactive operations through the handheld controller, providing a more centralized and integrated operation method. For example, the user can operate the handheld controller with one hand to send a beam of virtual light towards the target object while simultaneously adjusting the occlusion plane.

[0071] In some implementations, in response to a second user action, determining the target object among a plurality of objects in the accommodating space includes:

[0072] The position coordinates corresponding to the indicator point controlled by the user's second operation are mapped onto the occlusion plane to obtain the remapped coordinates, and the indicator point is located in the accommodating space;

[0073] The first product is obtained by multiplying the position coordinates corresponding to the focal center by the first weight, and the second product is obtained by multiplying the remapped coordinates by the second weight. The sum of the first weight and the second weight is a preset value, and the focal center is the geometric center of the occlusion plane.

[0074] Add the first product to the second product to obtain the target location coordinates of the user's indicated point;

[0075] The target object is determined from among multiple objects in the containment space based on the target location coordinates of the indicator point.

[0076] Figure 8 This is a schematic diagram of the process for determining the coordinates of the target location of the indicator point provided in the embodiments of this application, as shown below. Figure 8 As shown, in this embodiment, in response to the user's second operation, the process by which the processor determines the target object among multiple objects in the accommodating space includes: First, mapping the position coordinates corresponding to the indicator point controlled by the user's second operation onto the occlusion plane to obtain a remapped coordinate. This indicator point is located in the accommodating space and is a position pointed to or selected by the user through the second operation. Next, the processor multiplies the position coordinates corresponding to the focal center (the focal center is the geometric center of the occlusion plane, representing the focal point of the viewpoint) by a first weight to obtain a first product, and multiplies the remapped coordinates by a second weight to obtain a second product. The sum of the first and second weights is a preset value (the preset value can be 1). Then, the processor adds the first and second products to obtain the target position coordinates of the user's indicator point. These target position coordinates represent the position determination made by the processor for the indicator point controlled by the user. Finally, the processor determines the target object among multiple objects in the accommodating space based on the target position coordinates of the indicator point, thereby completing the object selection.

[0077] For example, the above process of determining the target location coordinates can be expressed as the following expression:

[0078]

[0079] in, The target position coordinates of the indicator point. For remapping coordinates, Here are the coordinates of the center of focus, μ is the first weight, and (1-μ) is the second weight, with a default value of 1.

[0080] Those skilled in the art will understand that, because the processor maps the position coordinates corresponding to the instruction point controlled by the user's second operation onto the occlusion plane, objects or obstacles located in front of the occlusion plane, i.e., outside the accommodating space, will not respond to the user's operation, thus avoiding the influence of objects or obstacles outside the accommodating space on the interaction process between the user and the target object.

[0081] In some implementations, if both the first operation and the second operation are triggered by the user's gesture, the first weight is less than the second weight.

[0082] If the first operation is triggered by the user through a handheld controller and the second operation is triggered by the user's gesture, the first weight is greater than the first value, where the first value is the value of the first weight in the first input mode, and the handheld controller is connected to the virtual reality interaction device.

[0083] If both the first and second operations are triggered by the user through a handheld controller, the first weight is 0.

[0084] In this embodiment, to balance the influence of user head movements (which determine the position coordinates of the focus center) and hand movements (which determine the remapping coordinates) on the determination of the target position vector of the indicator point, the values ​​of the first weight and the second weight are different in different input modes. In the first input mode, when the value of the first weight is small, it indicates that in this mode, the processor places the user's hand movements in a dominant position in determining the target position vector. With a preset value of 1, the first weight μ ∈ [0.2, 0.4). Those skilled in the art will understand that the processor can adjust the value of the first weight based on user feedback during device use. If the user reports that the indicator point moves too fast, the value of the first weight can be increased to reduce the influence of hand movements.

[0085] In the second input mode, with a preset value of 1, a first weight μ∈[0.4,0.9) can be set to increase the importance of head motion for determining the target position vector;

[0086] In the third input mode, μ is set to 0, indicating that the target position vector of the indicator point is completely controlled by the position of the indicator point by the user operating the handheld controller (the user can use the handheld controller to project a beam of virtual light to represent the position of the indicator point), which is determined by the remapped coordinates.

[0087] In some implementations, determining the target object among multiple objects in the accommodating space based on the target position coordinates of the indicator point includes:

[0088] Multiple objects in the accommodating space are identified as candidate objects;

[0089] Based on the position coordinates of each candidate object and the target position coordinates of the indicator point, determine the distance and relative angle between each candidate object and the indicator point;

[0090] The target score for each candidate object is determined based on the distance and relative angle between each candidate object and the indicator point.

[0091] The candidate object with the highest target score among multiple candidate objects is identified as the target object.

[0092] In this embodiment, the processor determines the target object from among multiple objects in the accommodating space based on the target position coordinates of the indicator point. First, the processor identifies multiple objects in the accommodating space as candidate objects. Next, the processor calculates the distance and relative angle between each candidate object and the indicator point based on the position coordinates of each candidate object and the target position coordinates of the indicator point. Then, the processor calculates the distance and relative angle between each candidate object and the indicator point based on the distance and relative angle between each candidate object and the indicator point (e.g., ...). Figure 8 The processor uses α and D to determine the target score for each candidate object. Objects with high target scores are considered to be the target objects of interest to the user. Finally, the processor can highlight the target objects.

[0093] For example, suppose a user is in a virtual reality space and uses gestures or a handheld controller to point a pointer at an object on a table. The processor first identifies objects such as books, cups, and mobile phones on the table as candidate objects. Next, the processor calculates the distance and relative angle between each candidate object and the pointer. Then, the processor assigns a target score to each object based on these factors, with the book receiving the highest target score, indicating that it is closest to the user's intention. Finally, the processor selects the book with the highest target score as the user's target object, ready for further processing.

[0094] In some implementations, the target score for each candidate object is determined based on the distance and relative angle between each candidate object and the indicator point, including:

[0095] The target score for each candidate object is calculated using the following expression:

[0096]

[0097] Where μ is the first weight, D is the distance between the candidate object and the indicator point, α is the relative angle between the candidate object and the indicator point, A and K are preset angle coefficients, β is a preset scaling coefficient, and G... obj As the initial score, S obj (t) represents the target score of the candidate object, λ is the preset time viscosity coefficient, and S obj (t-1) represents the target score of the candidate object in the previous frame, and t represents the current frame number of the candidate object.

[0098] G obj The initial score is calculated and then integrated into expression (3). Parameters λ, A, K, and β represent the preset time viscosity coefficient, preset angle coefficient, and preset scaling coefficient, respectively. The initial value of λ can be set to 0.5 to balance the historical and current target scores, and can be fine-tuned during each user's device trial. obj (t-1) represents the target score of the candidate object in the previous frame, and t represents the current frame number of the candidate object (frame 20, frame 21, etc.). The current frame number of the candidate object can be calculated from the time the device starts displaying the candidate object in the virtual reality space.

[0099] The processor can set A to 10 and K to 5 to better distinguish objects in occlusion situations, and can also fix β at 1.1. It's worth noting that when using the third input method, μ is set to 0, meaning only angular deviations affect the target score.

[0100] Please see Figure 9 This is a schematic diagram of the structure of a virtual reality interaction device provided in an embodiment of this application. A second aspect of this application provides a virtual reality interaction device 10, which includes:

[0101] The acquisition module 11 is used to acquire the focus area of ​​the user when using the virtual reality interaction device. The focus area is a accommodating space enclosed by multiple planes, and the accommodating space includes multiple objects, including the target object.

[0102] The adjustment module 12 is used to respond to the user's first operation and adjust the spatial position of the occluding plane among multiple planes so that the obstacle object is located outside the accommodating space. The obstacle object is the object that occludes the target object among multiple objects. The occluding plane is the plane facing the user and closest to the user among multiple planes. The display state of the obstacle object located outside the accommodating space is the target display state. The target display state is a display state with a first transparency, and the first transparency is greater than a preset transparency threshold.

[0103] The virtual reality interaction device 10 provided in the second aspect of the embodiments of this application can implement the various processes implemented in the above method embodiments and achieve the same beneficial effects. To avoid repetition, it will not be described again here.

[0104] Please see Figure 10 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. A third aspect of this application provides an electronic device 1000, including a processor 1100 and a memory 1200. The memory 1200 stores machine-executable instructions that can be executed by the processor 1100. The processor 1100 can execute the machine-executable instructions to implement the above-mentioned virtual reality interaction method.

[0105] A fourth aspect of this application provides a machine-readable storage medium storing instructions that, when executed by a processor, cause the processor to implement the aforementioned virtual reality interaction method.

[0106] In some embodiments, this application also provides a computer program product, including a computer program that, when executed by a processor, implements the virtual reality interaction method according to the above embodiments.

[0107] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0108] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 The computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The functions specified in one or more boxes. These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable apparatus for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0109] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0110] Memory may include non-persistent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.

[0111] Computer-readable media include both permanent and non-permanent, removable and non-removable media that can store information by any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transfer medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include temporary computer-readable media (transistor silicon switching devices), such as modulated data signals and carrier waves.

[0112] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0113] The above are merely embodiments of this application and are not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.

[0114] Furthermore, various different embodiments of the present invention can be combined in any way, as long as they do not violate the spirit of the present invention, they should also be regarded as the content disclosed by the present invention.

Claims

1. A virtual reality interaction method, characterized in that, The method is applied to a virtual reality interaction device, and the method includes: The focal area of ​​the user when using the virtual reality interaction device is obtained. The focal area is a accommodating space formed by multiple planes. The accommodating space includes multiple objects, including the target object. In response to the user's second operation, the target object is determined among a plurality of objects in the accommodating space; In response to the user's first operation, the spatial position of the occluding plane among the plurality of planes is adjusted so that the obstacle object is located outside the accommodating space. The obstacle object is the object among the plurality of objects that occludes the target object. The occluding plane is the plane among the plurality of planes that faces the user and is closest to the user. The display state of the obstacle object located outside the accommodating space is the target display state. The target display state is a display state with a first transparency, and the first transparency is greater than a preset transparency threshold. Specifically, in response to the user's second operation, determining the target object among a plurality of objects in the accommodating space includes: The position coordinates corresponding to the indicator point controlled by the user's second operation are mapped onto the occlusion plane to obtain remapped coordinates, and the indicator point is located in the accommodating space; The position coordinates corresponding to the focal center are multiplied by a first weight to obtain a first product, and the remapped coordinates are multiplied by a second weight to obtain a second product. The sum of the first weight and the second weight is a preset value, and the focal center is the geometric center of the occlusion plane. Add the first product to the second product to obtain the target location coordinates of the user's indicated point; Multiple objects in the accommodating space are identified as candidate objects; Based on the position coordinates of each candidate object and the target position coordinates of the indicator point, determine the distance and relative angle between each candidate object and the indicator point; The target score for each candidate object is determined based on the distance and relative angle between each candidate object and the indicator point. The candidate object with the highest target score among the multiple candidate objects is determined as the target object; The step of determining the target score for each candidate object based on the distance and relative angle between each candidate object and the indicator point includes: The target score for each candidate object is calculated according to the following expression: ; ; in, For the first weight, The distance between the candidate object and the indicator point. The relative angle between the candidate object and the indicator point. and For preset angle coefficients, The preset scaling factor, For the initial score, The target score is assigned to the candidate object. The preset time viscosity coefficient, Assign a target score to the candidate object in the previous frame. The sequence number of the current frame for the candidate object.

2. The method according to claim 1, characterized in that, Both the first and second operations are triggered by the user's gestures; Alternatively, the first operation may be triggered by the user via a handheld controller, and the second operation may be triggered by the user's gesture, wherein the handheld controller is communicatively connected to the virtual reality interaction device; Alternatively, both the first and second operations may be triggered by the user through the handheld controller.

3. The method according to claim 1, characterized in that, If both the first operation and the second operation are triggered by the user's gesture, the first weight is less than the second weight; If the first operation is triggered by the user through a handheld controller, and the second operation is triggered by the user's gesture, the first weight is greater than the first value, wherein the first value is the value of the first weight in the first input mode, and the handheld controller is communicatively connected to the virtual reality interaction device; If both the first operation and the second operation are triggered by the user through the handheld controller, the first weight is 0.

4. A virtual reality interactive device, characterized in that, The device is used in a virtual reality interaction device, and the device includes: The acquisition module is used to acquire the focus area of ​​the user when using the virtual reality interaction device. The focus area is an accommodating space formed by multiple planes, and the accommodating space includes multiple objects, including the target object. An adjustment module is configured to, in response to a second operation by the user, determine the target object among a plurality of objects in the accommodating space, and, in response to a first operation by the user, adjust the spatial position of the occluding plane among the plurality of planes so that the obstacle object is located outside the accommodating space. The obstacle object is the object among the plurality of objects that occludes the target object. The occluding plane is the plane among the plurality of planes that faces the user and is closest to the user. The display state of the obstacle object located outside the accommodating space is the target display state. The target display state is a display state with a first transparency, and the first transparency is greater than a preset transparency threshold. The adjustment module is further used for: The position coordinates corresponding to the indicator point controlled by the user's second operation are mapped onto the occlusion plane to obtain remapped coordinates, and the indicator point is located in the accommodating space; The position coordinates corresponding to the focal center are multiplied by a first weight to obtain a first product, and the remapped coordinates are multiplied by a second weight to obtain a second product. The sum of the first weight and the second weight is a preset value, and the focal center is the geometric center of the occlusion plane. Add the first product to the second product to obtain the target location coordinates of the user's indicated point; Multiple objects in the accommodating space are identified as candidate objects; Based on the position coordinates of each candidate object and the target position coordinates of the indicator point, determine the distance and relative angle between each candidate object and the indicator point; The target score for each candidate object is determined based on the distance and relative angle between each candidate object and the indicator point. The candidate object with the highest target score among the multiple candidate objects is determined as the target object; The adjustment module is also used for: The target score for each candidate object is calculated according to the following expression: ; ; in, For the first weight, The distance between the candidate object and the indicator point. The relative angle between the candidate object and the indicator point. and For preset angle coefficients, The preset scaling factor, For the initial score, The target score is assigned to the candidate object. The preset time viscosity coefficient, Assign a target score to the candidate object in the previous frame. The sequence number of the current frame for the candidate object.

5. An electronic device, characterized in that, It includes a processor and a memory, the memory storing programs or instructions that can run on the processor, the programs or instructions being executed by the processor to implement the virtual reality interaction method as described in any one of claims 1-3.

6. A machine-readable storage medium, characterized in that, The machine-readable storage medium stores instructions that, when executed by a processor, cause the processor to implement the virtual reality interaction method as described in any one of claims 1-3.

Citation Information

Patent Citations

  • Interaction control method and device in augmented reality space, equipment and storage medium

    CN116225237A

  • Method and Apparatus for Displaying Interactive Item, Terminal, and Storage Medium

    US20220212107A1