Gesture-based movement control method and related equipment
Through a gesture-based movement control method, by switching the movement mode through predetermined gestures and controlling the movement of virtual objects, the problem of complex gesture control movement and poor user experience in the prior art is solved, and simplified user interaction and improved user experience are achieved.
Patent Information
- Application Number
- CN202311220341.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-09-20
- Publication Date
- 2025-03-21
AI Technical Summary
In the prior art, the method of controlling movement in virtual reality through gestures is more complex and has poor user experience.
A gesture-based movement control method is proposed. By acquiring a user's gesture operation, switching to a corresponding movement mode in response to movement that meets a predetermined gesture and meets a preset condition, and controlling the movement of a virtual object in a virtual environment based on the gesture.
The method of controlling movement of gestures is simplified, the cost of user memory is reduced, the user experience is improved, and the switching and control of multiple movement modes is achieved through one gesture.
Smart Images

Figure CN119668398A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of virtual reality technology, and in particular to a gesture-based movement control method and related equipment. Background Art
[0002] Virtual Reality (VR) technology is a technology that perceives virtual space as real space. With the development of technology, Virtual Reality (VR) technology has become common.
[0003] How to move has always been a problem that virtual reality technology needs to solve. Currently, movement in virtual reality can be achieved by using gestures as controllers. However, the method of controlling movement by gestures in the existing technology is relatively complicated and the user experience is poor. Summary of the invention
[0004] In view of this, the purpose of the present disclosure is to provide a gesture-based mobile control method and related devices.
[0005] Based on the above objectives, a first aspect of the present disclosure provides a gesture-based movement control method, comprising:
[0006] Get the user's gesture operation;
[0007] In response to the gesture operation conforming to a predetermined gesture and the movement of the gesture operation satisfying a preset condition, switching to a movement mode corresponding to the preset condition;
[0008] The virtual object is controlled to move in the virtual environment in the movement mode based on the predetermined gesture.
[0009] In some embodiments, in response to the gesture operation conforming to a predetermined gesture and the movement of the gesture operation satisfying a preset condition, switching to a movement mode corresponding to the preset condition includes:
[0010] In response to detecting that the gesture operation conforms to the predetermined gesture, displaying an operation point on a graphical user interface;
[0011] In response to detecting that the gesture operation moves to the operation point, switching to a movement mode corresponding to the preset condition.
[0012] In some embodiments, the switching to the movement mode corresponding to the preset condition includes:
[0013] In response to the virtual object not being in the movement mode before switching to the movement mode corresponding to the preset condition, controlling the virtual object to enter the movement mode;
[0014] In response to the virtual object being in one of the movement modes before switching to the movement mode corresponding to the preset condition, the virtual object is controlled to enter another of the movement modes.
[0015] In some embodiments, after displaying the operation point on the graphical user interface, the method further includes:
[0016] In response to detecting a movement control operation on the virtual object based on the predetermined gesture, the display of the operation point is canceled.
[0017] In some embodiments, the movement of the gesture operation satisfies a preset condition, including at least one of the following:
[0018] The average speed of movement of the gesture operation meets a first preset value;
[0019] The acceleration of the movement of the gesture operation meets a second preset value;
[0020] The moving direction of the gesture operation satisfies a third preset value;
[0021] The moving distance of the gesture operation meets a fourth preset value;
[0022] The gesture operation moves to the target area.
[0023] In some embodiments, the movement mode includes a continuous movement mode; and controlling the virtual object to move in the virtual environment in the movement mode based on the predetermined gesture includes:
[0024] A first moving direction of the gesture operation in the graphical user interface is acquired, and the virtual object is controlled to move along the first moving direction in the virtual environment.
[0025] In some embodiments, the movement mode includes an instant movement mode; and controlling the virtual object to move in the virtual environment in the movement mode based on the predetermined gesture includes:
[0026] In response to the gesture operation conforming to a predetermined gesture, acquiring a second moving direction of the gesture operation in the graphical user interface;
[0027] determining a target moving position of the virtual object in the virtual environment based on the second moving direction;
[0028] In response to detecting that the gesture operation does not conform to the predetermined gesture, the virtual object is controlled to move to the target movement position.
[0029] In some embodiments, determining the target moving position of the virtual object in the virtual environment based on the second moving direction includes:
[0030] Obtain three key points in the gesture operation;
[0031] generating a parabola extending along the second moving direction based on the three key points;
[0032] The intersection point of the parabola in the virtual environment is determined as the target moving position.
[0033] In some embodiments, it also includes:
[0034] Obtaining the elbow position of the gesture operation;
[0035] The orientation of the target movement position of the virtual object is determined based on the elbow position.
[0036] In some embodiments, determining the target moving position of the virtual object in the virtual environment further includes:
[0037] The orientation of the virtual object at the target moving position is displayed with a preset icon.
[0038] In some embodiments, the three key points include an elbow key point, a wrist key point, and a finger key point.
[0039] In some embodiments, the predetermined gesture is a single-hand gesture.
[0040] In some embodiments, the predetermined gesture includes: pinching the thumb and middle finger of one hand with the palm facing upward.
[0041] A second aspect of the present disclosure provides a gesture-based mobile control device, comprising:
[0042] The acquisition module is configured to: acquire the user's gesture operation;
[0043] A switching module is configured to: in response to the gesture operation conforming to a predetermined gesture and the movement of the gesture operation satisfying a preset condition, switch to a movement mode corresponding to the preset condition;
[0044] The movement control module is configured to control the virtual object to move in the virtual environment in the movement mode based on the predetermined gesture.
[0045] A third aspect of the present disclosure provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the method described in the first aspect of the present disclosure is implemented.
[0046] A fourth aspect of the present disclosure provides a non-transitory computer-readable storage medium storing computer instructions for causing the computer to execute the method described in the first aspect.
[0047] A fifth aspect of the present disclosure provides a computer program product, comprising computer program instructions, characterized in that when the computer program instructions are executed on a computer, the computer is caused to execute the method described in the first aspect.
[0048] From the above, it can be seen that the gesture-based mobile control method and related equipment provided by the present disclosure realize switching between different mobile modes through a predetermined gesture, and after switching to the corresponding mobile mode, continue to control the movement of the virtual object in the mobile mode based on the predetermined gesture, thereby realizing switching and mobile control of multiple mobile modes based on one gesture operation, making the method based on gesture control movement relatively simple and the user memory cost low, thereby improving the user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0049] In order to more clearly illustrate the technical solutions in the present disclosure or related technologies, the drawings required for use in the embodiments or related technical descriptions are briefly introduced below. Obviously, the drawings described below are only embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0050] Figure 1 A schematic flow chart of a gesture-based movement control method provided by an exemplary embodiment of the present disclosure is shown.
[0051] Figure 2a A gesture schematic diagram provided by an exemplary embodiment of the present disclosure is shown.
[0052] Figure 2b A gesture schematic diagram provided by an exemplary embodiment of the present disclosure is shown.
[0053] Figure 2c A gesture schematic diagram provided by an exemplary embodiment of the present disclosure is shown.
[0054] Figure 2d A gesture schematic diagram provided by an exemplary embodiment of the present disclosure is shown.
[0055] Figure 3a A schematic diagram of movement control provided by an exemplary embodiment of the present disclosure is shown.
[0056] Figure 3b A schematic diagram of movement control provided by an exemplary embodiment of the present disclosure is shown.
[0057] Figure 3c A schematic diagram of movement control provided by an exemplary embodiment of the present disclosure is shown.
[0058] Figure 3d A schematic diagram of movement control provided by an exemplary embodiment of the present disclosure is shown.
[0059] Figure 4 A structural block diagram of a gesture-based mobile control device provided by an exemplary embodiment of the present disclosure is shown.
[0060] Figure 5 A schematic diagram of the hardware structure of an exemplary computer device provided in an embodiment of the present disclosure is shown. DETAILED DESCRIPTION
[0061] In order to make the objectives, technical solutions and advantages of the present disclosure more clearly understood, the present disclosure is further described in detail below in combination with specific embodiments and with reference to the accompanying drawings.
[0062] It should be noted that, unless otherwise defined, the technical terms or scientific terms used in the embodiments of the present disclosure should be understood by people with ordinary skills in the field to which the present disclosure belongs. The "first", "second" and similar words used in the embodiments of the present disclosure do not indicate any order, quantity or importance, but are only used to distinguish different components. "Including" or "comprising" and similar words mean that the elements or objects appearing before the word cover the elements or objects listed after the word and their equivalents, without excluding other elements or objects. "Connect" or "connected" and similar words are not limited to physical or mechanical connections, but can include electrical connections, whether direct or indirect. "Up", "down", "left", "right" and the like are only used to indicate relative positional relationships. When the absolute position of the described object changes, the relative positional relationship may also change accordingly.
[0063] Movement in virtual reality technology generally includes continuous movement (such as walking, running, etc.) and instant movement (such as teleportation). Continuous movement requires left and right steering control, and instant movement requires teleportation action control. Currently, gestures can be used as controllers to achieve movement control in virtual reality technology.
[0064] As described in the background technology, in the prior art, when controlling movement through gestures, one gesture is required to control one movement action. For example, controlling left and right steering is one gesture, and controlling teleportation is another gesture; and when controlling teleportation, the gesture needs to change, that is, selecting the teleportation position before teleportation is one gesture, and implementing the teleportation action is another gesture. This results in a more complicated method of controlling movement based on gestures, a higher user memory cost, and a poor user experience.
[0065] In view of this, the present disclosure provides a gesture-based movement control method to solve the above-mentioned problem.
[0066] In some embodiments, the gesture-based mobile control method can be applied to a virtual reality terminal, wherein the virtual reality terminal runs an application based on virtual reality technology, which can provide a virtual scene when the virtual reality terminal is running. The virtual scene can be a simulated environment scene of the real world. Generally, the virtual scene is a three-dimensional virtual scene.
[0067] A virtual environment can be created in a virtual scene, and three-dimensional models such as virtual characters, virtual animals, virtual buildings, and virtual plants can be set in the virtual environment. Each virtual character, virtual animal, virtual building, and virtual plant has its own shape and volume in the three-dimensional virtual environment and occupies a part of the space in the three-dimensional virtual environment.
[0068] With the development of technology, users can use virtual reality terminals such as wearable display devices such as head-mounted displays (HMDs) to immerse themselves in a virtual environment with virtual characters, virtual animals, virtual buildings, virtual plants, etc. Sometimes, the wearable display device can present the user's avatar, such as a virtual object, in the virtual environment, and interact with other virtual characters, virtual animals, virtual buildings, virtual plants, etc. in the virtual environment through the virtual object, and obtain the interactive experience fed back by the wearable device. At the same time, the virtual reality terminal can also collect the user's actions, postures, positions, etc. in the physical environment through cameras, sensors, etc., and project them into the virtual objects in the virtual environment, so that the virtual objects have the same actions, postures, positions, etc. as the user. At the same time, the actions of the virtual objects in the virtual environment can also be controlled based on the user's actions, for example, the virtual objects can be controlled to perform certain operations in the virtual environment through the user's gestures in the physical environment.
[0069] The virtual reality terminal may provide a graphical user interface, and both the virtual environment and the virtual objects may be displayed in the display content of the graphical user interface.
[0070] In some embodiments, Figure 1 As shown, the gesture-based mobile control method includes:
[0071] Step S101, obtaining the user's gesture operation.
[0072] In this embodiment, the user can operate the terminal device through input devices such as a handle, mouse, and keyboard to change the movement of the virtual object displayed in the terminal's graphical user interface based on the operation, obtain the hand movement of the virtual object displayed in the graphical user interface through the terminal, and determine the user's gesture operation based on the hand movement.
[0073] Alternatively, the user's hand movements in the physical environment may be collected by a camera, a sensor, etc., and the user's gesture operation may be determined based on the user's hand movements in the physical environment. This embodiment does not limit this.
[0074] Step S103, in response to the gesture operation conforming to a predetermined gesture and the movement of the gesture operation satisfying a preset condition, switching to a movement mode corresponding to the preset condition.
[0075] In this embodiment, a predetermined gesture for switching the mobile mode can be pre-set in the terminal, and a preset condition for switching the mobile mode can be set. When in use, the user's gesture operation can be collected in real time. When the user's gesture operation meets the pre-set predetermined gesture and meets the preset condition, the mobile mode corresponding to the preset condition is switched, and the virtual object can then move in the mobile mode.
[0076] The preset condition needs to meet the following conditions: the user's current gesture operation is the predetermined gesture; the predetermined gesture is used to move, and the movement of the predetermined gesture meets the preset condition. For example, gesture A moves upward by a certain distance, gesture B moves downward by a preset speed, etc. This embodiment does not limit this.
[0077] In this embodiment, the movement mode may include two types, namely, a first movement mode and a second movement mode. For example, the first movement mode is continuous movement, and the second movement mode is instant movement; or the first movement mode is instant movement, and the second movement mode is continuous movement, which is not limited in this embodiment.
[0078] When the user's gesture operation conforms to a predetermined gesture and the movement of the gesture operation meets a preset condition, switching between the first movement mode and the second movement mode can be achieved.
[0079] The movement of the gesture operation that satisfies the preset condition may be movement in a specified direction based on the gesture operation. For example, when the user's gesture operation meets the predetermined gesture and the gesture operation moves upward, it is switched to continuous movement, and when the user's gesture operation meets the predetermined gesture and the gesture operation moves downward, it is switched to instant movement; or, when the user's gesture operation meets the predetermined gesture and the gesture operation moves upward, it is switched to instant movement, and when the user's gesture operation meets the predetermined gesture and the gesture operation moves downward, it is switched to continuous movement.
[0080] In some embodiments, the mobile mode may also include more mobile modes, and the multiple mobile modes may be arranged in a preset order. When the user's gesture operation meets the predetermined gesture and the movement of the gesture operation meets the preset condition, the modes may be switched in sequence in the preset order. For example, when the mobile mode includes the first mobile mode, the second mobile mode, and the third mobile mode arranged in sequence, if the mobile mode is currently in the first mobile mode, when the user's gesture operation meets the predetermined gesture and the movement of the gesture operation meets the preset condition, the mobile mode is switched to the second mobile mode; if the mobile mode is currently in the second mobile mode, when the user's gesture operation meets the predetermined gesture and the movement of the gesture operation meets the preset condition, the mobile mode is switched to the third mobile mode; if the mobile mode is currently in the third mobile mode, when the user's gesture operation meets the predetermined gesture and the movement of the gesture operation meets the preset condition, the mobile mode is switched to the first mobile mode. This embodiment does not limit this.
[0081] In some embodiments, the movement of the gesture operation that satisfies the preset condition may include the movement direction of the gesture operation, and when the movement directions of the gesture operation are different, different movement modes may be switched. For example, when the movement mode includes the first movement mode, the second movement mode, and the third movement mode arranged in sequence: if the first movement mode is currently in progress and the user's gesture operation meets the predetermined gesture, if the movement direction of the gesture operation is upward movement, then switch to the third movement mode, and if the movement direction of the gesture operation is downward movement, then switch to the second movement mode; if the second movement mode is currently in progress and the user's gesture operation meets the predetermined gesture, if the movement direction of the gesture operation is upward movement, then switch to the first movement mode, and if the movement direction of the gesture operation is downward movement, then switch to the third movement mode; if the third movement mode is currently in progress and the user's gesture operation meets the predetermined gesture, if the movement direction of the gesture operation is upward movement, then switch to the second movement mode, and if the movement direction of the gesture operation is downward movement, then switch to the first movement mode.
[0082] When there are multiple different movement modes, when the user's gesture operation meets the predetermined gesture and the movement of the user's gesture operation meets the preset conditions, you can switch to a movement mode and control the virtual object to enter the movement mode. At this time, the virtual object can move in the movement method corresponding to the movement mode.
[0083] Step S105 : controlling the virtual object to move in the virtual environment in the movement mode based on the predetermined gesture.
[0084] In this embodiment, after switching to a certain movement mode, the movement of the virtual object in the movement mode can continue to be controlled based on the predetermined gesture. For example, when the virtual object is controlled to enter a movement mode, the movement of the virtual object in the movement mode is also controlled based on the predetermined gesture, that is, in the movement mode, it is necessary to ensure that the user's operation gesture always maintains the predetermined gesture before controlling the movement of the virtual object; correspondingly, when the virtual object is controlled to enter another movement mode, the movement of the virtual object in the other movement mode is also controlled based on the predetermined gesture, that is, in the movement mode, it is still necessary to ensure that the user's operation gesture always maintains the predetermined gesture before controlling the movement of the virtual object. In this way, both the switching of different movement modes and the movement control in different movement modes are based on the predetermined gesture, so that the method of gesture control movement can be made simpler, the user memory cost is low, and the user experience can be improved.
[0085] The gesture-based mobile control method disclosed in the present invention realizes switching between different mobile modes through a predetermined gesture, and after switching to a corresponding mobile mode, continues to control the movement of a virtual object in the mobile mode based on the predetermined gesture, thereby realizing switching and mobile control of multiple mobile modes based on a gesture operation, making the method of controlling movement based on gestures relatively simple and having a low user memory cost, thereby improving user experience.
[0086] In some embodiments, the predetermined gesture is a one-hand gesture, that is, in the present application, switching between different movement modes and movement control in different movement modes can be achieved only by using a pre-set one-hand gesture, thereby making the method of gesture-controlled movement simpler and reducing the user's memory cost, thereby improving the user experience.
[0087] The predetermined gesture may be a left hand gesture or a right hand gesture, and this embodiment does not limit this.
[0088] In some embodiments, Figure 2a As shown, the predetermined gesture includes: pinching the thumb and middle finger of one hand with the palm facing upward. That is, in this embodiment, the switching of different movement modes and the movement control in different movement modes can be realized only by pinching the thumb and middle finger of one hand with the palm facing upward, so that the method of controlling movement by gesture is relatively simple, the user memory cost is low, and the user experience can be improved.
[0089] The predetermined gesture may be pinching the thumb and middle finger of the left hand with the palm facing upward, or pinching the thumb and middle finger of the right hand with the palm facing upward, which is not limited in this embodiment.
[0090] In some embodiments, in response to the gesture operation conforming to a predetermined gesture and the movement of the gesture operation satisfying a preset condition, switching to a movement mode corresponding to the preset condition in step S103 includes:
[0091] Step S201: in response to detecting that the gesture operation conforms to the predetermined gesture, displaying an operation point on a graphical user interface.
[0092] Step S203: in response to detecting that the gesture operation moves to the operation point, switching to a movement mode corresponding to the preset condition.
[0093] In this embodiment, when it is detected that the gesture operation conforms to the predetermined gesture, for example, when it is detected that the gesture operation is a pinching of the thumb and middle finger of a single hand with the palm facing upward, an operation point may be displayed on the graphical user interface of the terminal. Figure 2b As shown, the operation point 11 may be located above the predetermined gesture, or may be located below, to the left, to the right, etc. of the predetermined gesture, which is not limited in this embodiment.
[0094] When it is detected that the virtual object moves to the operation point 11 with the predetermined gesture, for example, when the predetermined gesture is pinching the thumb and middle finger of a single hand with the palm facing up, the pinching point of the thumb and middle finger coincides with the operation point 11, then it can be switched to a movement mode corresponding to the preset conditions to control the movement of the virtual object based on the corresponding movement mode.
[0095] In some embodiments, the switching to the movement mode corresponding to the preset condition in step S203 includes: in response to the virtual object not being in the movement mode before switching to the movement mode corresponding to the preset condition, controlling the virtual object to enter the movement mode.
[0096] In this embodiment, if the virtual object is not in the mobile mode before switching to the mobile mode corresponding to the preset condition, at this time, if it is detected that the user's current gesture operation meets the predetermined gesture and the movement of the gesture operation meets the preset condition, the virtual object is controlled to enter the mobile mode from the non-mobile mode, so that the virtual object can be controlled to move in the movement manner in the mobile mode.
[0097] In some embodiments, the switching to the movement mode corresponding to the preset condition in step S203 includes: in response to the virtual object being in one movement mode before switching to the movement mode corresponding to the preset condition, controlling the virtual object to enter another movement mode.
[0098] In this embodiment, when the terminal provides two movement modes, if the virtual object is already in one movement mode before switching to the movement mode corresponding to the preset condition, at this time, if it is detected that the user's current gesture operation meets the predetermined gesture and the movement of the gesture operation meets the preset condition, the virtual object can be controlled to enter another movement mode from the current movement mode. For example, if the virtual object is in the first movement mode at the current moment, if it is detected that the user's current gesture operation meets the predetermined gesture and the user's current gesture operation moves to the operation point, the virtual object can be controlled to enter the second movement mode; if the virtual object is in the second movement mode at the current moment, if it is detected that the user's current gesture operation meets the predetermined gesture and the user's current gesture operation moves to the operation point, the virtual object can be controlled to enter the first movement mode.
[0099] Optionally, if there are other movement modes, such as the third movement mode, the movement modes may be sorted, for example, into: the first movement mode, the second movement mode, and the third movement mode.
[0100] After sorting, the movement modes can be switched in sequence based on the gesture operations of the present application. For example, if the virtual object is detected to be in the first movement mode, if it is detected that the user's current gesture operation meets the predetermined gesture and the user's current gesture operation moves to the operation point, the virtual object can be controlled to enter the second movement mode; if the virtual object is in the second movement mode, if it is detected that the user's current gesture operation meets the predetermined gesture and the user's current gesture operation moves to the operation point, the virtual object can be controlled to enter the third movement mode; if the virtual object is in the third movement mode, if it is detected that the user's current gesture operation meets the predetermined gesture and the user's current gesture operation moves to the operation point, the virtual object can be controlled to enter the first movement mode.
[0101] Alternatively, two operation points may be set, such as an upper operation point and a lower operation point, and control in different directions may be achieved through the upper operation point and the lower operation point. For example, if the virtual object is in the first movement mode, if it is detected that the user's current gesture operation meets the predetermined gesture and the user's current gesture operation moves to the upper operation point, the virtual object may be controlled to enter the second movement mode; if it is detected that the user's current gesture operation meets the predetermined gesture and the user's current gesture operation moves to the lower operation point, the virtual object may be controlled to enter the third movement mode. This embodiment does not limit this.
[0102] In some embodiments, after the operation point is displayed in the graphical user interface in step S201, the method further includes: in response to detecting a movement control operation on the virtual object based on the predetermined gesture, canceling the display of the operation point.
[0103] The movement control operation of the virtual object may include left, right, front, back, up, down movement and transmission operations, etc., which are not limited in this embodiment.
[0104] In this embodiment, when the virtual object is already in a mobile mode, if it is detected that the gesture operation of the virtual object meets the predetermined gesture, an operation point will be displayed in the graphical user interface. At this time, the mobile mode can be switched directly based on the operation point. When the user does not want to switch the mobile mode, that is, the user wants to control the movement of the virtual object based on the current mobile mode, the user can continue to perform the mobile control operation. In this embodiment, when the mobile control operation of the virtual object based on the predetermined gesture is detected, the display of the operation point can be cancelled, thereby avoiding the user's misoperation.
[0105] In some embodiments, the movement of the gesture operation satisfies preset conditions, including at least one of the following: the average speed of the movement of the gesture operation satisfies a first preset value; the acceleration of the movement of the gesture operation satisfies a second preset value; the direction of the movement of the gesture operation satisfies a third preset value; the distance of the movement of the gesture operation satisfies a fourth preset value; the gesture operation moves to the target area.
[0106] That is, in this embodiment, it is possible to determine whether the conditions for entering or switching the mobile mode are met based on a combination of one or more conditions including the average speed, acceleration, moving direction, moving distance, and moving to the target area of the graphical user interface of the user's current gesture operation when moving in the graphical user interface. When the user's current gesture operation satisfies the predetermined gesture and the above conditions at the same time, the virtual object can be controlled to enter or switch the corresponding mobile mode.
[0107] In some embodiments, when the movement mode includes a continuous movement mode, controlling the virtual object to move in the virtual environment in the movement mode based on the predetermined gesture in step S105 includes: obtaining a first moving direction of the gesture operation in the graphical user interface, and controlling the virtual object to move along the first moving direction in the virtual environment.
[0108] In this embodiment, when the virtual object first enters the continuous movement mode or enters the continuous movement mode this time and the user's current gesture operation meets the predetermined gesture, the first position of the user's current gesture operation can be obtained as the reference position, and then the first movement direction is calculated based on the difference between the second position after the movement of the user's current gesture operation and the first position, and the virtual object is controlled to move along the first movement direction in the virtual environment. The first movement direction may include forward, backward, left, right, and a combination of the above directions, which is not limited in this embodiment.
[0109] In some embodiments, when the movement mode includes an instant movement mode, the step S105 of controlling the virtual object to move in the virtual environment in the movement mode based on the predetermined gesture includes:
[0110] Step S301: in response to the gesture operation conforming to a predetermined gesture, obtaining a second moving direction of the gesture operation in the graphical user interface.
[0111] In this embodiment, when the virtual object first enters the instant movement mode or enters the instant movement mode this time and the user's current gesture operation meets the predetermined gesture, the third position of the user's current gesture operation can be obtained as the reference position, and then the second movement direction is calculated based on the difference between the fourth position after the user's current gesture operation and the third position, so that the virtual object moves along the second movement direction in the virtual environment. Figure 2c The second moving direction may include front, back, left, right, and a combination of the above directions, which is not limited in this embodiment.
[0112] Step S303: determining a target moving position of the virtual object in the virtual environment based on the second moving direction.
[0113] In this embodiment, after the second moving direction is determined, the target moving position of the virtual object in the virtual environment may be determined based on the second moving direction. Specifically, the method may include:
[0114] Step S401, obtaining three key points in the gesture operation.
[0115] Among them, Figure 3b As shown, the three key points may include an elbow key point 21, a wrist key point 23, and a finger key point 25. The finger key point 25 may be a position where the thumb and the middle finger are pinched.
[0116] Step S403: generating a parabola extending along the second moving direction based on the three key points.
[0117] Step S405: determining the intersection point of the parabola in the virtual environment as the target moving position.
[0118] In this embodiment, Figure 3b As shown, the three key points may include an elbow key point 21, a wrist key point 23, and a finger key point 25. The finger key point 25 may be a position where the thumb and the middle finger are pinched. After obtaining the elbow key point 21, the wrist key point 23, and the finger key point 25, a parabola extending along the second moving direction may be calculated based on these three key points, such as Figure 3aAs shown, the intersection 31 of the parabola and the virtual environment (eg, the ground, steps, etc. in the virtual environment) is the target moving position.
[0119] The parabola may be displayed in the graphical user interface or may not be displayed in the graphical user interface, and this embodiment does not limit this.
[0120] Step S305 , in response to detecting that the gesture operation does not conform to the predetermined gesture, controlling the virtual object to move to the target movement position.
[0121] In this embodiment, when it is detected that the user's current gesture operation does not conform to the predetermined gesture, for example, when the predetermined gesture is a single hand with the thumb and middle finger pinched together with the palm facing up, it is detected that the thumb and middle finger are released, such as Figure 2d As shown, the corresponding instant movement operation (such as teleportation) can be performed at this time, and based on the operation, the virtual object is controlled to move to the target movement position, and the image information of the virtual environment corresponding to the target movement position is displayed in the graphical user interface accordingly.
[0122] In some embodiments, the method further comprises:
[0123] Step S401, obtaining the elbow position of the gesture operation.
[0124] In this embodiment, when the user's gesture operation is to move with a predetermined gesture, the position of the elbow when the gesture operation moves is also obtained. The user's gesture operation can be left and right, up and down, front and back. When the gesture operation moves, the elbow also moves, and after the elbow moves, the position of the elbow will change accordingly.
[0125] The elbow position may include the direction of the elbow, etc.
[0126] Step S403: determining the orientation of the virtual object at the target moving position based on the elbow position.
[0127] In this embodiment, the orientation of the virtual object, that is, the orientation of the body or face of the virtual object, can be determined based on the position of the elbow after movement, so that image information of the virtual environment corresponding to the orientation of the body or face of the virtual object is displayed in the graphical user interface.
[0128] In some embodiments, Figure 3c , Figure 3d As shown, the direction of the virtual object at the target moving position is displayed with a preset icon. The preset icon can be a cursor, an arrow, or a footprint corresponding to the virtual object, etc., which is not limited in this embodiment.
[0129] It should be noted that the method of the embodiment of the present disclosure can be performed by a single device, such as a computer or a server. The method of the present embodiment can also be applied in a distributed scenario and completed by multiple devices cooperating with each other. In the case of such a distributed scenario, one of the multiple devices can only perform one or more steps in the method of the embodiment of the present disclosure, and the multiple devices will interact with each other to complete the described method.
[0130] It should be noted that the above describes some embodiments of the present disclosure. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in an order different from that in the above embodiments and still achieve the desired results. In addition, the processes depicted in the accompanying drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0131] Based on the same inventive concept, corresponding to any of the above-mentioned embodiment methods, the present disclosure further provides a gesture-based mobile control device.
[0132] refer to Figure 4 , the device comprises:
[0133] The acquisition module 11 is configured to: acquire a user's gesture operation;
[0134] The switching module 13 is configured to: in response to the gesture operation conforming to a predetermined gesture and the movement of the gesture operation satisfying a preset condition, switch to a movement mode corresponding to the preset condition;
[0135] The movement control module 15 is configured to control the virtual object to move in the virtual environment in the movement mode based on the predetermined gesture.
[0136] In some embodiments, the switching module 13 is further configured to:
[0137] In response to detecting that the gesture operation conforms to the predetermined gesture, displaying an operation point on a graphical user interface;
[0138] In response to detecting that the gesture operation moves to the operation point, switching to a movement mode corresponding to the preset condition.
[0139] In some embodiments, the switching module 13 is further configured to:
[0140] In response to the virtual object not being in the movement mode before switching to the movement mode corresponding to the preset condition, controlling the virtual object to enter the movement mode;
[0141] In response to the virtual object being in one of the movement modes before switching to the movement mode corresponding to the preset condition, the virtual object is controlled to enter another of the movement modes.
[0142] In some embodiments, after the graphical user interface displays the operation point, the apparatus is further configured to:
[0143] In response to detecting a movement control operation on the virtual object based on the predetermined gesture, the display of the operation point is canceled.
[0144] In some embodiments, the movement of the gesture operation satisfies a preset condition, including at least one of the following:
[0145] The average speed of movement of the gesture operation meets a first preset value;
[0146] The acceleration of the movement of the gesture operation meets a second preset value;
[0147] The moving direction of the gesture operation satisfies a third preset value;
[0148] The moving distance of the gesture operation meets a fourth preset value;
[0149] The gesture operation moves to the target area.
[0150] In some embodiments, the movement mode includes a continuous movement mode; the movement control module 15 is further configured to:
[0151] A first moving direction of the gesture operation in the graphical user interface is acquired, and the virtual object is controlled to move along the first moving direction in the virtual environment.
[0152] In some embodiments, the movement mode includes an instant movement mode; the movement control module 15 is further configured to:
[0153] In response to the gesture operation conforming to a predetermined gesture, acquiring a second moving direction of the gesture operation in the graphical user interface;
[0154] determining a target moving position of the virtual object in the virtual environment based on the second moving direction;
[0155] In response to detecting that the gesture operation does not conform to the predetermined gesture, the virtual object is controlled to move to the target movement position.
[0156] In some embodiments, the movement control module 15 is further configured to:
[0157] Obtaining three key points in the predetermined gesture;
[0158] generating a parabola extending along the second moving direction based on the three key points;
[0159] The intersection point of the parabola in the virtual environment is determined as the target moving position.
[0160] In some embodiments, the movement control module 15 is further configured to:
[0161] Obtaining the elbow position of the gesture operation;
[0162] The orientation of the virtual object at the target movement position is determined based on the elbow position.
[0163] In some embodiments, the movement control module 15 is further configured to display the direction of the virtual object at the target movement position with a preset icon.
[0164] In some embodiments, the three key points include an elbow key point, a wrist key point, and a finger key point.
[0165] In some embodiments, the predetermined gesture is a single-hand gesture.
[0166] In some embodiments, the predetermined gesture includes: pinching the thumb and middle finger of one hand with the palm facing upward.
[0167] For the convenience of description, the above device is described by dividing it into various modules according to its functions. Of course, when implementing the present disclosure, the functions of each module can be implemented in the same or multiple software and / or hardware.
[0168] The device of the above embodiment is used to implement the corresponding method in any of the above embodiments, and has the beneficial effects of the corresponding method embodiment, which will not be described in detail here.
[0169] Based on the same inventive concept, corresponding to any of the above-mentioned embodiments and methods, the present disclosure also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the method described in any of the above embodiments is implemented.
[0170] Figure 5 A more specific schematic diagram of the hardware structure of an electronic device provided in this embodiment is shown, and the device may include: a processor 1010, a memory 1020, an input / output interface 1030, a communication interface 1040, and a bus 1050. The processor 1010, the memory 1020, the input / output interface 1030, and the communication interface 1040 are connected to each other through the bus 1050 in the device.
[0171] The processor 1010 can be implemented by a general-purpose CPU (Central Processing Unit), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of this specification.
[0172] The memory 1020 may be implemented in the form of ROM (Read Only Memory), RAM (Random Access Memory), static storage device, dynamic storage device, etc. The memory 1020 may store an operating system and other application programs. When the technical solutions provided in the embodiments of this specification are implemented by software or firmware, the relevant program codes are stored in the memory 1020 and are called and executed by the processor 1010.
[0173] The input / output interface 1030 is used to connect the input / output module to realize information input and output. The input / output module can be configured in the device as a component (not shown in the figure), or it can be externally connected to the device to provide corresponding functions. The input device may include a keyboard, a mouse, a touch screen, a microphone, various sensors, etc., and the output device may include a display, a speaker, a vibrator, an indicator light, etc.
[0174] The communication interface 1040 is used to connect a communication module (not shown) to realize communication interaction between the device and other devices. The communication module can realize communication through a wired mode (such as USB, network cable, etc.) or a wireless mode (such as mobile network, WIFI, Bluetooth, etc.).
[0175] The bus 1050 includes a path that transmits information between the various components of the device (eg, the processor 1010, the memory 1020, the input / output interface 1030, and the communication interface 1040).
[0176] It should be noted that, although the above device only shows the processor 1010, the memory 1020, the input / output interface 1030, the communication interface 1040 and the bus 1050, in the specific implementation process, the device may also include other components necessary for normal operation. In addition, it can be understood by those skilled in the art that the above device may also only include the components necessary for implementing the embodiments of the present specification, and does not necessarily include all the components shown in the figure.
[0177] The electronic device of the above embodiment is used to implement the corresponding method in any of the above embodiments, and has the beneficial effects of the corresponding method embodiment, which will not be described in detail here.
[0178] Based on the same inventive concept, corresponding to any of the above-mentioned embodiments and methods, the present disclosure also provides a non-transitory computer-readable storage medium, wherein the non-transitory computer-readable storage medium stores computer instructions, and the computer instructions are used to enable the computer to execute the method described in any of the above embodiments.
[0179] The computer-readable medium of this embodiment includes permanent and non-permanent, removable and non-removable media, and information storage can be implemented 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 technology, read-only compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device.
[0180] The computer instructions stored in the storage medium of the above embodiments are used to enable the computer to execute the method described in any of the above embodiments, and have the beneficial effects of the corresponding method embodiments, which will not be repeated here.
[0181] Based on the same inventive concept, corresponding to the method described in any of the above embodiments, the present disclosure further provides a computer program product, which includes computer program instructions. In some embodiments, the computer program instructions can be executed by one or more processors of a computer so that the computer and / or the processor execute the method. Corresponding to the execution subject corresponding to each step in each embodiment of the method described, the processor that executes the corresponding step can belong to the corresponding execution subject.
[0182] The computer program product of the above embodiment is used to enable the computer and / or the processor to execute the method described in any of the above embodiments, and has the beneficial effects of the corresponding method embodiments, which will not be described in detail here.
[0183] Those skilled in the art should understand that the discussion of any of the above embodiments is merely illustrative and is not intended to imply that the scope of the present disclosure (including the claims) is limited to these examples. Based on the concept of the present disclosure, the technical features in the above embodiments or different embodiments may be combined, the steps may be implemented in any order, and there are many other variations of the different aspects of the embodiments of the present disclosure as described above, which are not provided in detail for the sake of simplicity.
[0184] In addition, to simplify the description and discussion, and in order not to make the embodiments of the present disclosure difficult to understand, the known power / ground connections to the integrated circuit (IC) chips and other components may or may not be shown in the provided figures. In addition, the device can be shown in the form of a block diagram to avoid making the embodiments of the present disclosure difficult to understand, and this also takes into account the fact that the details of the implementation of these block diagram devices are highly dependent on the platform on which the embodiments of the present disclosure will be implemented (that is, these details should be fully within the scope of understanding of those skilled in the art). Where specific details (e.g., circuits) are set forth to describe exemplary embodiments of the present disclosure, it is apparent to those skilled in the art that the embodiments of the present disclosure can be implemented without these specific details or with changes in these specific details. Therefore, these descriptions should be considered illustrative rather than restrictive.
[0185] Although the present disclosure has been described in conjunction with specific embodiments of the present disclosure, many replacements, modifications and variations of these embodiments will be apparent to those skilled in the art from the foregoing description. For example, other memory architectures (e.g., dynamic RAM (DRAM)) may use the embodiments discussed.
[0186] The embodiments of the present disclosure are intended to cover all such substitutions, modifications and variations that fall within the broad scope of the appended claims. Therefore, any omissions, modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the embodiments of the present disclosure should be included in the scope of protection of the present disclosure.
Claims
1. A gesture-based mobile control method, characterized in that: include: Get the user's gesture operation; In response to the gesture operation conforming to a predetermined gesture and the movement of the gesture operation satisfying a preset condition, switching to a movement mode corresponding to the preset condition; The virtual object is controlled to move in the virtual environment in the movement mode based on the predetermined gesture.
2. The method according to claim 1, characterized in that In response to the gesture operation conforming to a predetermined gesture and the movement of the gesture operation satisfying a preset condition, switching to a movement mode corresponding to the preset condition includes: In response to detecting that the gesture operation conforms to the predetermined gesture, displaying an operation point on a graphical user interface; In response to detecting that the gesture operation moves to the operation point, switching to a movement mode corresponding to the preset condition.
3. The method according to claim 1, characterized in that The switching to the movement mode corresponding to the preset condition comprises: In response to the virtual object not being in the movement mode before switching to the movement mode corresponding to the preset condition, controlling the virtual object to enter the movement mode; In response to the virtual object being in one of the movement modes before switching to the movement mode corresponding to the preset condition, the virtual object is controlled to enter another of the movement modes.
4. The method according to claim 2, characterized in that: After the graphical user interface displays the operation point, the method further includes: In response to detecting a movement control operation on the virtual object based on the predetermined gesture, the display of the operation point is canceled.
5. The method according to claim 1, characterized in that The movement of the gesture operation satisfies a preset condition, including at least one of the following: The average speed of movement of the gesture operation meets a first preset value; The acceleration of the movement of the gesture operation meets a second preset value; The moving direction of the gesture operation satisfies a third preset value; The moving distance of the gesture operation meets a fourth preset value; The gesture operation moves to the target area.
6. The method according to claim 1, characterized in that The movement mode includes a continuous movement mode; and controlling the virtual object to move in the virtual environment in the movement mode based on the predetermined gesture includes: A first moving direction of the gesture operation in the graphical user interface is acquired, and the virtual object is controlled to move along the first moving direction in the virtual environment.
7. The method according to claim 1, characterized in that The movement mode includes an instant movement mode; and controlling the virtual object to move in the virtual environment in the movement mode based on the predetermined gesture includes: In response to the gesture operation conforming to a predetermined gesture, acquiring a second moving direction of the gesture operation in the graphical user interface; determining a target moving position of the virtual object in the virtual environment based on the second moving direction; In response to detecting that the gesture operation does not conform to the predetermined gesture, the virtual object is controlled to move to the target movement position.
8. The method according to claim 7, characterized in that Determining the target moving position of the virtual object in the virtual environment based on the second moving direction includes: Obtain three key points in the gesture operation; generating a parabola extending along the second moving direction based on the three key points; The intersection point of the parabola in the virtual environment is determined as the target moving position.
9. The method according to claim 7, characterized in that: Also includes: Obtaining the elbow position of the gesture operation; The orientation of the virtual object at the target movement position is determined based on the elbow position.
10. The method according to claim 7, characterized in that The determining of the target moving position of the virtual object in the virtual environment further includes: The orientation of the virtual object at the target moving position is displayed with a preset icon.
11. The method according to claim 8, characterized in that The three key points include an elbow key point, a wrist key point and a finger key point.
12. The method according to claim 1, characterized in that The predetermined gesture is a single-hand gesture.
13. The method according to claim 12, characterized in that The predetermined gesture includes: pinching the thumb and middle finger of one hand with the palm facing upward.
14. A gesture-based mobile control device, characterized in that: include: The acquisition module is configured to: acquire the user's gesture operation; A switching module is configured to: in response to the gesture operation conforming to a predetermined gesture and the movement of the gesture operation satisfying a preset condition, switch to a movement mode corresponding to the preset condition; The movement control module is configured to control the virtual object to move in the virtual environment in the movement mode based on the predetermined gesture.
15. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the method according to any one of claims 1 to 13 is implemented.
16. A non-transitory computer-readable storage medium storing computer instructions, characterized in that: The computer instructions are used to cause the computer to execute the method according to any one of claims 1 to 13.
17. A computer program product comprising computer program instructions, characterized in that When the computer program instructions are executed on a computer, the computer is caused to execute the method according to any one of claims 1 to 13.