Display position adjustment method, device, storage medium and electronic device
By using the change of the head and hand position of the target object wearing the somatosensory device, the target change distance of the display position of the virtual scene is solved, and the problem that the virtual scene cannot be adjusted from a distance is achieved, and the rapid adjustment and precise control of the virtual scene are achieved.
Patent Information
- Application Number
- CN202211229977.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-10-09
- Publication Date
- 2025-08-08
- Estimated Expiration
- 2042-10-09
AI Technical Summary
In the prior art, due to the constraints of the real environment space, the display position of the virtual scene cannot be adjusted long distance, which makes it impossible to apply to virtual scenes with a large space range.
By wearing the target object of the somatosensory device, the relative position changes between the head and the hand are used to determine the target change distance of the current display position of the virtual scene, and make corresponding adjustments, including obtaining the initial and moving position coordinates, and combining the preset distance change control parameters to achieve rapid adjustment of the virtual scene.
It has got rid of the spatial limitations of real scenes during virtual reality interaction, and can be compatible with virtual scenes with a large space range, enrich the interactive experience, and improve the accuracy of virtual scene display position adjustment.
Smart Images

Figure CN115607967B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of virtual reality technology, and in particular to a display position adjustment method, a display position adjustment device, a computer-readable storage medium, and an electronic device. Background Art
[0002] VR (Virtual Reality) technology can provide users with an immersive virtual world experience. For VR games, players typically control the movement of a virtual character in the virtual world by changing their own position in the real world, thereby changing the virtual scene's display position.
[0003] In related technologies, the movement speed of the controlled virtual character in the virtual scene is consistent with the movement speed of the game player in the real environment. Due to the constraints of the real environment space, the game player cannot move long distances, which causes the movement of the controlled virtual character to be restricted. As a result, the display position of the virtual scene cannot be adjusted over a long distance, and it cannot be well applied to virtual scenes with a larger spatial range.
[0004] It should be noted that the information disclosed in the above background technology section is only used to enhance the understanding of the background of the present disclosure, and therefore may include information that does not constitute prior art known to ordinary technicians in the field. Summary of the Invention
[0005] The present disclosure provides a display position adjustment method, a display position adjustment device, a computer-readable storage medium and an electronic device, thereby at least to a certain extent solving the problem in the related art that the display position of a virtual scene cannot be adjusted over a long distance due to the constraints of the real environment space.
[0006] Other features and advantages of the present disclosure will become apparent from the following detailed description, or may be learned in part by practice of the present disclosure.
[0007] According to a first aspect of the present disclosure, a display position adjustment method is provided, in which a target object interacts with a virtual scene through a somatosensory device worn by the target object, and the method includes: in response to a triggering operation of a display position adjustment event, determining a first distance between the head and hand of the target object, the first distance being the distance between the head and hand of the target object when the display position adjustment event is triggered; in response to a movement operation of the head and / or hand of the target object, determining a second distance between the head and hand of the target object, the second distance being the distance between the head and hand of the target object after the head and / or hand of the target object moves; determining a target change distance corresponding to the current display position of the virtual scene based on the first distance and the second distance, and adjusting the current display position of the virtual scene based on the target change distance.
[0008] In an exemplary embodiment of the present disclosure, determining the first distance between the head and hand of the target object includes: obtaining the first position coordinates of the target object's head and the second position coordinates of the target object's hand, the first position coordinates being the position coordinates of the target object's head when the display position adjustment event is triggered, and the second position coordinates being the position coordinates of the target object's hand when the display position adjustment event is triggered; and obtaining the first distance between the target object's head and the hand based on the first position coordinates of the target object's head and the second position coordinates of the target object's hand.
[0009] In an exemplary embodiment of the present disclosure, determining the second distance between the head and hand of the target object includes: obtaining third position coordinates of the target object's head and fourth position coordinates of the target object's hand, the third position coordinates being the position coordinates of the target object's head after the head and / or hand of the target object move, and the fourth position coordinates being the position coordinates of the target object's hand after the head and / or hand of the target object move; and obtaining the second distance between the target object's head and hand based on the third position coordinates of the target object's head and the fourth position coordinates of the target object's hand.
[0010] In an exemplary embodiment of the present disclosure, determining the target change distance corresponding to the current display position of the virtual scene based on the first distance and the second distance includes: determining the relative moving distance of the moving operation based on the difference between the first distance and the second distance; determining the target change distance corresponding to the current display position of the virtual scene based on the relative moving distance of the moving operation and a preset distance change control parameter.
[0011] In an exemplary embodiment of the present disclosure, determining the target change distance corresponding to the current display position of the virtual scene based on the relative moving distance of the moving operation and the preset distance change control parameter includes: adjusting the preset distance change control parameter according to the hand state of the target object; and determining the target change distance corresponding to the current display position of the virtual scene based on the relative moving distance of the moving operation and the adjusted preset distance change control parameter.
[0012] In an exemplary embodiment of the present disclosure, the hand state of the target object includes a hand rotation angle of the target object.
[0013] In an exemplary embodiment of the present disclosure, the triggering operation of the display position adjustment event includes the target object's hand being in a fist state.
[0014] According to a second aspect of the present disclosure, a display position adjustment device is provided, in which a target object interacts with a virtual scene through a somatosensory device worn by the target object, and the device includes: a first distance determination module, for determining a first distance between the head and hand of the target object in response to a triggering operation of a display position adjustment event, wherein the first distance is the distance between the head and hand of the target object when the display position adjustment event is triggered; a second distance determination module, for determining a second distance between the head and hand of the target object in response to a movement operation of the head and / or hand of the target object, wherein the second distance is the distance between the head and hand of the target object after the head and / or hand of the target object moves; a display position adjustment module, for determining a target change distance corresponding to the current display position of the virtual scene based on the first distance and the second distance, and adjusting the current display position of the virtual scene based on the target change distance.
[0015] According to a third aspect of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the display position adjustment method described above is implemented.
[0016] According to a fourth aspect of the present disclosure, an electronic device is provided, comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to perform the above-mentioned display position adjustment method by executing the executable instructions.
[0017] The technical solution disclosed in this disclosure has the following beneficial effects:
[0018] During the display position adjustment process, in response to a triggering operation of a display position adjustment event, a first distance between the target object's head and hand is determined. The first distance is the distance between the target object's head and hand when the display position adjustment event is triggered. In response to a movement operation of the target object's head and / or hand, a second distance between the target object's head and hand is determined. The second distance is the distance between the target object's head and hand after the movement of the target object's head and / or hand. Based on the first and second distances, a target change distance corresponding to the current display position of the virtual scene is determined, and the current display position of the virtual scene is adjusted based on the target change distance. This process enables rapid adjustment of the current display position of the virtual scene based on the position changes of the target object's head and hand. On the one hand, it can break away from the spatial limitations of the real scene during virtual reality interaction, allowing compatibility with virtual scenes with larger spatial scope, thereby enriching the interactive experience. On the other hand, it can avoid errors caused by absolute displacement caused by the target object's body movement, and can improve the accuracy of target object control when adjusting the virtual scene display position.
[0019] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] The accompanying drawings are incorporated into and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the specification, serve to explain the principles of the present disclosure. Obviously, the drawings described below are only some embodiments of the present disclosure, and it is possible for a person skilled in the art to derive other drawings based on these drawings without inventive effort.
[0021] Figure 1 A flow chart showing a method for adjusting a display position in this exemplary embodiment is shown;
[0022] Figure 2 A flow chart of determining a first distance between a head and a hand of a target object in this exemplary embodiment is shown;
[0023] Figure 3 A flow chart of determining a second distance between a target object's head and hand in this exemplary embodiment is shown;
[0024] Figure 4A An example diagram showing the positions of the head and hands of a target object when a display position adjustment event is triggered in this exemplary embodiment;
[0025] Figure 4B An example diagram showing the positions of the head and hands of a target object after the head and / or hands move in this exemplary embodiment;
[0026] Figure 5A A diagram showing an example of a scene display before the virtual scene display position is adjusted in this exemplary embodiment is shown;
[0027] Figure 5B A diagram showing an example of a scene display after the virtual scene display position is adjusted in this exemplary embodiment is shown;
[0028] Figure 6 A flow chart of determining a target change distance according to a difference between a first distance and a second distance in this exemplary embodiment is shown;
[0029] Figure 7 A flow chart showing a method of determining a target change distance according to a relative moving distance of a moving operation and a preset distance change control parameter in this exemplary embodiment is shown;
[0030] Figure 8 A flowchart showing a preferred display position adjustment in this exemplary embodiment is shown;
[0031] Figure 9 A structural block diagram of a display position adjustment device according to this exemplary embodiment is shown;
[0032] Figure 10 An electronic device for implementing the above-mentioned display position adjustment method in this exemplary embodiment is shown. DETAILED DESCRIPTION
[0033] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that the present disclosure will be more comprehensive and complete and will fully convey the concepts of the example embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, many specific details are provided to provide a full understanding of the embodiments of the present disclosure. However, those skilled in the art will appreciate that the technical solutions of the present disclosure may be practiced while omitting one or more of the specific details, or that other methods, components, devices, steps, etc. may be employed. In other cases, well-known technical solutions are not shown or described in detail to avoid obscuring various aspects of the present disclosure.
[0034] The terms "a", "an", "the" and "said" are used in this specification to indicate the presence of one or more elements / components / etc.; the terms "including" and "having" are used to express open-ended inclusion and mean that additional elements / components / etc. may exist in addition to the listed elements / components / etc.; the terms "first" and "second" etc. are used only as labels and are not intended to limit the quantity of their objects.
[0035] In addition, the accompanying drawings are merely schematic illustrations of the present disclosure and are not necessarily drawn to scale. Identical reference numerals in the figures denote identical or similar parts, and thus repetitive descriptions thereof will be omitted. Some of the block diagrams shown in the accompanying drawings are functional entities that do not necessarily correspond to physically or logically separate entities. These functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.
[0036] In related technologies, such as VR games, the player's absolute position in the real environment is often used to change the virtual character's position, thereby changing the display position of the virtual scene. Due to the limitations of real-world spatial dimensions, gamers cannot move over long distances, which creates inconveniences for the management and application of large-scale virtual scenes such as SLGs (Simulation Games).
[0037] In view of one or more of the above problems, an exemplary embodiment of the present disclosure provides a display position adjustment method, which can be applied to VR interaction scenarios such as SLG that require the display position of the virtual scene to be adjusted remotely, and can be deployed on a VR interaction platform that can communicate with a somatosensory device.
[0038] An exemplary embodiment of the present disclosure provides a display position adjustment method, such as Figure 1 As shown, the target object interacts with the virtual scene through the somatosensory device worn by the target object, which may specifically include the following steps S110 to S130:
[0039] Step S110, in response to a triggering operation of a display position adjustment event, determining a first distance between the head and the hand of the target object, the first distance being the distance between the head and the hand of the target object when the display position adjustment event is triggered;
[0040] Step S120, in response to the movement operation of the target object's head and / or hand, determining a second distance between the target object's head and hand, the second distance being the distance between the target object's head and hand after the target object's head and / or hand moves;
[0041] Step S130 , determining a target change distance corresponding to the current display position of the virtual scene according to the first distance and the second distance, and adjusting the current display position of the virtual scene according to the target change distance.
[0042] During this display position adjustment process, the current display position of the virtual scene is rapidly adjusted based on the changes in the target subject's head and hand positions. This, on the one hand, overcomes the spatial constraints of the real scene during virtual reality interaction, allowing for compatibility with larger virtual scenes and enriching the interactive experience. On the other hand, it avoids errors caused by absolute displacement due to the target subject's body movement, improving the precision of target subject control during virtual scene display position adjustment.
[0043] The following are Figure 1 Each step is described in detail.
[0044] Step S110 , in response to a triggering operation of a display position adjustment event, determining a first distance between the head and hand of the target object, where the first distance is the distance between the head and hand of the target object when the display position adjustment event is triggered.
[0045] A display position adjustment event refers to a VR interaction event that controls the change in the display position of a virtual scene. The triggering operation of the display position adjustment event may include one or more specific gestures of the target object. Optionally, the triggering operation of the display position adjustment event may include the target object's hand being in a fist state. It should be noted that the hand involved in the triggering operation of the display position adjustment event can be the right hand or the left hand, and can be set specifically according to the daily behavior habits of the target object, and is not specifically limited here.
[0046] The target object refers to an object in the real scene that can interact with the virtual scene. The target object can control the behavior of the virtual character in the virtual scene, for example, it can control the virtual character to move forward or backward in the virtual scene.
[0047] Taking VR gaming as an example, the target object may be a gamer wearing a motion sensing device. The motion sensing device can be an electronic device that can sense the player's physical state, such as a VR helmet or handheld device that can sense the position of the player's head or hands.
[0048] The first distance is the distance between the target object's head and hand when the display position adjustment event is triggered. The distance between the target object's head and hand can be determined based on the position of the target object's head and hand. Specifically, when the display position adjustment event is triggered, the position of the target object's head and hand can be sensed by a somatosensory device, and the first distance can be obtained based on the position of the target object's head and hand.
[0049] In an optional embodiment, the first distance between the target object's head and hand is determined, such as Figure 2 As shown, this can be achieved by the following steps:
[0050] Step S210, obtaining the first position coordinates of the target object's head and the second position coordinates of the target object's hand;
[0051] Step S220 , obtaining a first distance between the target object's head and hand based on the first position coordinates of the target object's head and the second position coordinates of the target object's hand.
[0052] The first position coordinates are the head position coordinates of the target object when the display position adjustment event is triggered, and the second position coordinates are the hand position coordinates of the target object when the display position adjustment event is triggered.
[0053] It should be noted that when determining the first distance, the second position coordinate can be the right hand position coordinate of the target object, or the left hand position coordinate of the target object. It can be set according to the daily behavior habits of the target object or the wearing condition of the VR somatosensory device. No specific limitation is made here.
[0054] For example, if the first position coordinates of the target object's head are (a, b, c) and the first position coordinates of the target object's hand are (d, e, f), then S1 can be calculated as [(ad) 2 +(be ) 2+(cf) 2 ]1 / 2 obtains the first distance, where S1 represents the first distance.
[0055] Figure 2 The steps shown determine a first distance based on the position coordinates of the target object's head and hand at the moment the display position adjustment event is triggered, and use the first distance as the initial distance between the target object's head and hand, so as to determine the relative displacement between the target object's head and hand based on the initial distance, thereby avoiding the absolute displacement caused by the target object's body movement.
[0056] Step S120, in response to the movement operation of the target object's head and / or hand, determine the second distance between the target object's head and hand, the second distance being the distance between the target object's head and hand after the target object's head and / or hand moves.
[0057] Hand movement operations may include, but are not limited to, upward, downward, left, and right movement operations. Head movement operations may include, but are not limited to, upward, downward, left, and right movement operations. The specific movement direction of the movement operation can be determined by the target object and is not specifically limited in this disclosure.
[0058] After the display position adjustment event is triggered, the movement status of the target object's head and / or hand can be monitored in real time. If the target object's head and / or hand moves, the second distance between the target object's head and hand can be determined based on the position of the target object's head and the position of the hand after the target object's head and / or hand move.
[0059] In an optional embodiment, the second distance between the target object's head and hand is determined, such as Figure 3 As shown, this can be achieved by the following steps:
[0060] Step S310, obtaining the third position coordinates of the target object's head and the fourth position coordinates of the target object's hand;
[0061] Step S320 : Obtaining a second distance between the target object's head and hand based on the third position coordinates of the target object's head and the fourth position coordinates of the target object's hand.
[0062] Among them, the third position coordinates are the head position coordinates of the target object after the head and / or hand of the target object moves, and the fourth position coordinates are the hand position coordinates of the target object after the head and / or hand of the target object moves.
[0063] For example, if the third position coordinates of the target object's head are (a, b, c) and the fourth position coordinates of the target object's hand are (g, h, i), then S2 can be calculated as [(ag) 2 +(bh) 2 +(ci) 2 ]1 / 2 obtains the second distance, where S2 represents the second distance.
[0064] It should be noted that the fourth position coordinate and the second position coordinate can be the position coordinates of the same hand of the target object at different times. For example, if the second position coordinate is the position coordinate of the left hand of the target object when the display position adjustment event is triggered, the fourth position coordinate is the position coordinate of the left hand of the target object after the head and / or hand of the target object moves; if the second position coordinate is the position coordinate of the right hand of the target object when the display position adjustment event is triggered, the fourth position coordinate can be the position coordinate of the right hand of the target object after the head and / or hand of the target object moves. In addition, the fourth position coordinate and the second position coordinate can be the position coordinates of different hands of the target object at different times. For example, if the second position coordinate is the position coordinate of the left hand of the target object when the display position adjustment event is triggered, the fourth position coordinate is the position coordinate of the right hand of the target object after the head and / or hand of the target object moves; if the second position coordinate is the position coordinate of the right hand of the target object when the display position adjustment event is triggered, the fourth position coordinate can be the position coordinate of the left hand of the target object after the head and / or hand of the target object moves.
[0065] Figure 3 The steps shown determine the real-time distance between the target object's head and hands so as to determine the relative displacement between the target object's head and hands based on the initial distance, thereby avoiding the absolute displacement caused by the target object's body movement, thereby improving the accuracy of the virtual scene display position adjustment.
[0066] like Figure 4A As shown, an example diagram of the positions of the head and hands of the target object when the display position adjustment event is triggered is provided, wherein x1, y1, and z1 are the coordinate differences between the position coordinates corresponding to the head of the target object 401 and the position coordinates corresponding to the hand of the target object 401 when the display position adjustment event is triggered; Figure 4B As shown, an example diagram of the positions of the head and hands of the target object after the head and / or hands move is provided, wherein x2, y2, and z2 are the coordinate differences between the position coordinates corresponding to the head of the target object 401 and the position coordinates corresponding to the hand of the target object 401 after the head and / or hands of the target object 401 move.
[0067] Step S130 , determining a target change distance corresponding to the current display position of the virtual scene according to the first distance and the second distance, and adjusting the current display position of the virtual scene according to the target change distance.
[0068] The target change distance refers to the distance the current display position of the virtual scene needs to move under the control of the target subject's head and / or hand movement. The relative difference between the first distance and the second distance is used as reference data for the adjustment required for the current display position of the virtual scene. The larger the difference between the first and second distances, the larger the target change distance.
[0069] For example, Figure 5A This is a scene display example diagram before the virtual scene display position is adjusted. Figure 5B This is a scene display instance diagram after the virtual scene display position is adjusted.
[0070] Taking SLG games as an example, the game camera follows the movement of the virtual character controlled by the game player, and the virtual scene display position can be determined by the game screen captured by the game camera. Therefore, when the current display position of the virtual scene is adjusted based on the target change distance, the virtual character in the virtual scene can be controlled to move based on the target change distance to achieve the adjustment of the current display position of the virtual scene. In addition, when the current display position of the virtual scene is adjusted based on the target change distance, the game camera can also be controlled to move to achieve the adjustment of the current display position of the virtual scene.
[0071] In an optional embodiment, the target change distance corresponding to the current display position of the virtual scene is determined according to the difference between the first distance and the second distance, such as Figure 6 As shown, this can be achieved by the following steps:
[0072] Step S610, determining a relative moving distance of the moving operation according to a difference between the first distance and the second distance;
[0073] Step S620 : determining a target change distance corresponding to the current display position of the virtual scene according to the relative movement distance of the movement operation and a preset distance change control parameter.
[0074] The relative movement distance of a move operation refers to the relative movement distance between the target object's head and hand in the real scene. For example, the difference between the first distance and the second distance can be directly used as the relative movement distance of the move operation, that is, S3 = |S1 - S2|, where S3 is the relative movement distance of the move operation, S1 represents the first distance, and S2 represents the second distance.
[0075] In addition, the direction of movement of the current display position of the virtual scene can also be controlled based on the positive or negative sign of the difference between the first distance and the second distance. For example, if the S1-S2 value is positive, the current display position of the virtual scene is controlled to move forward; if the S1-S2 value is negative, the current display position of the virtual scene is controlled to move backward. It should be noted that when controlling the current display position of the virtual scene to move forward or backward based on the positive or negative sign of the difference between the first distance and the second distance, the specific direction of movement can be set according to the daily behavior habits of the target object and is not specifically limited here.
[0076] The preset distance control variation parameter can be used to control the mapping relationship between the per-unit change in the relative movement distance of a move operation and the target movement distance corresponding to the virtual scene display position. For example, if the preset distance control variation parameter k is 100 and the relative movement distance of the move operation is 1 meter, the target change distance corresponding to the virtual scene display position can be 100 meters.
[0077] When determining the target change distance corresponding to the current display position of the virtual scene based on the relative moving distance of the moving operation and the preset distance change control parameter, the target change distance can be obtained by calculating S=S3×k, where S represents the target change distance, S3 represents the relative moving distance of the moving operation, and k represents the preset distance control change parameter.
[0078] It should be noted that the parameter value of the preset distance control change parameter k can be obtained through continuous user testing to ensure the visual comfort of the target object when the virtual scene display position changes.
[0079] Figure 6 The steps shown control the changing speed of the virtual scene display position based on the preset distance change control parameters, so that the virtual scene display position can break free from the limitations of the real scene space range, so as to realize the long-distance movement of the virtual scene display position, thereby enriching the applicable scenarios of VR applications.
[0080] In an optional embodiment, the target change distance corresponding to the current display position of the virtual scene is determined according to the relative moving distance of the moving operation and the preset distance change control parameter, such as Figure 7 As shown, this can be achieved by the following steps:
[0081] Step S710, adjusting the preset distance change control parameter according to the hand state of the target object;
[0082] Step S720 : determining a target change distance corresponding to the current display position of the virtual scene based on the relative movement distance of the movement operation and the adjusted preset distance change control parameter.
[0083] The hand state of the target object is used to control the adjustment scale of the preset distance change control parameter. The hand state of the target object includes but is not limited to the rotation angle of the target object's hand, the number of fingers extended by the target object, etc.
[0084] The hand rotation angle of the target object refers to the rotation angle of the hand of the target object from the time the display position adjustment event is triggered to the time the head and / or hand moves.
[0085] When adjusting the preset distance change control parameter based on the target object's hand rotation angle, the greater the target object's hand rotation angle, the greater the adjustment scale of the preset distance change control parameter. For example, if the target object's hand rotation angle is a, the preset change control parameter is k1, and the adjusted preset change control parameter is k1*a, then the target change distance S corresponding to the current display position of the virtual scene = S3*k1*a, where S represents the target change distance and S3 is the relative movement distance of the move operation. k1 can be a system-fixed value determined in advance through testing.
[0086] If the target object's hand rotates by an angle a1 relative to the base angle reference orientation when the display position adjustment event is triggered, and the target object's hand rotates by an angle a2 relative to the base angle reference orientation after the head and / or hand moves, the difference between a1 and a2 can be used as the target object's hand rotation angle, that is, a = |a1-a2|, so as to increase the preset distance change control parameter, thereby achieving a longer distance movement of the virtual scene display position. It should be noted that the base reference angle can be pre-configured to quantify the target object's hand rotation angle. For example, the orientation of the left hand with a fist facing downward can be used as the base reference angle. When the target object's left hand is clenched downward, the target object's hand is rotated by 0 degrees relative to the base angle reference orientation; when the target object's left hand is clenched to the right, the target object's hand is rotated by 90 degrees relative to the base angle reference orientation.
[0087] In addition, when adjusting the preset distance change control parameter by the hand rotation angle of the target object, the preset distance change control parameter can also be increased or decreased according to the positive or negative value of a1-a2. For example, if a1-a2 is a positive value, the value of k1*(a1-a2) can be used as the adjusted preset change control parameter to increase the preset distance change control parameter; if a1-a2 is a negative value, the value of k1*[1 / (a1-a2)] can be used as the adjusted preset change control parameter to decrease the preset distance change control parameter, thereby achieving free adjustment of the preset distance change control parameter.
[0088] When adjusting the preset distance change control parameter based on the number of fingers extended by the target object, the greater the number of fingers extended by the target object, the greater the adjustment scale. For example, if the number of fingers extended by the target object is b, the preset change control parameter is k2, and the adjusted preset change control parameter is k2*b, then the target change distance S corresponding to the current display position of the virtual scene = S3*k2*b, where S represents the target change distance and S3 is the relative movement distance of the move operation. k2 can be a system-fixed value determined in advance through testing.
[0089] Figure 7The steps shown realize the automatic adjustment of the preset distance change control parameters, and enhance the flexibility of controlling the movement of the virtual scene display position, so as to meet the diverse adjustment requirements of the target object.
[0090] also, Figure 8 A preferred display position adjustment method is provided, which may specifically include the following steps S810 to S850:
[0091] Step S810: If the somatosensory device detects that the target object's right hand is in a clenched fist, a display position adjustment event is triggered, a first position coordinate of the target object's head and a second position coordinate of the target object's hand are obtained, and a first distance between the target object's head and hand is obtained based on the first position coordinate of the target object's head and the second position coordinate of the target object's hand;
[0092] Step S820: In response to the movement operation of the target object's head and / or hand, obtaining third position coordinates of the target object's head and fourth position coordinates of the target object's hand, and obtaining a second distance between the target object's head and hand based on the third position coordinates of the target object's head and the fourth position coordinates of the target object's hand;
[0093] Step S830, determining a relative moving distance of the move operation according to the difference between the first distance and the second distance, and adjusting a preset distance change control parameter according to the left hand rotation angle of the target object;
[0094] Step S840 : determining a target change distance corresponding to the current display position of the virtual scene based on the relative movement distance of the movement operation and the adjusted preset distance change control parameter.
[0095] Step S850: Adjust the current display position of the virtual scene according to the target change distance.
[0096] Figure 8 The steps shown here enable rapid adjustment of the current display position of the virtual scene based on the changes in the target subject's head and hand positions. This, on the one hand, overcomes the spatial constraints of the real scene during VR interaction, allowing for compatibility with larger virtual scenes and enriching the interactive experience. Furthermore, it avoids errors caused by absolute displacement due to the target subject's body movement, improving the precision of the target subject's control during virtual scene display position adjustment.
[0097] The exemplary embodiment of the present disclosure further provides a display position adjustment device, wherein the target object interacts with the virtual scene through the somatosensory device worn by the target object, such as Figure 9 As shown, the display position adjustment device 900 may include:
[0098] A first distance determining module 910 is configured to determine a first distance between the head and hand of the target object in response to a triggering operation of a display position adjustment event, where the first distance is the distance between the head and hand of the target object when the display position adjustment event is triggered;
[0099] a second distance determining module 920 for determining a second distance between the target object's head and hand in response to a movement operation of the target object's head and / or hand, the second distance being the distance between the target object's head and hand after the movement of the target object's head and / or hand;
[0100] The display position adjustment module 930 is configured to determine a target change distance corresponding to the current display position of the virtual scene according to the first distance and the second distance, and adjust the current display position of the virtual scene according to the target change distance.
[0101] In an optional embodiment, the first distance determination module 910 determines the first distance between the target object's head and hand, which can be configured as follows: obtaining the first position coordinates of the target object's head and the second position coordinates of the target object's hand, the first position coordinates being the position coordinates of the target object's head when the display position adjustment event is triggered, and the second position coordinates being the position coordinates of the target object's hand when the display position adjustment event is triggered; based on the first position coordinates of the target object's head and the second position coordinates of the target object's hand, obtaining the first distance between the target object's head and hand.
[0102] In an optional embodiment, the second distance determination module 920 determines the second distance between the target object's head and hand, which can be configured as follows: obtaining the third position coordinates of the target object's head and the fourth position coordinates of the target object's hand, the third position coordinates being the position coordinates of the target object's head after the target object's head and / or hand move, and the fourth position coordinates being the position coordinates of the target object's hand after the target object's head and / or hand move; and obtaining the second distance between the target object's head and hand based on the third position coordinates of the target object's head and the fourth position coordinates of the target object's hand.
[0103] In an optional embodiment, the display position adjustment module 930 may include: a relative movement distance determination module, used to determine the relative movement distance of the moving operation based on the difference between the first distance and the second distance; a target change distance determination module, used to determine the target change distance corresponding to the current display position of the virtual scene based on the relative movement distance of the moving operation and the preset distance change control parameters.
[0104] In an optional embodiment, the target change distance determination module can be configured to: adjust the preset distance change control parameter according to the hand state of the target object; and determine the target change distance corresponding to the current display position of the virtual scene based on the relative movement distance of the moving operation and the adjusted preset distance change control parameter.
[0105] In an optional implementation, the hand state of the target object may include a hand rotation angle of the target object.
[0106] In an optional implementation, the triggering operation of the display position adjustment event may include the target object's hand being in a fist state.
[0107] The specific details of each part of the above-mentioned display position adjustment device 900 have been described in detail in the implementation method part. The undisclosed details can be found in the implementation method part, and thus will not be repeated here.
[0108] The exemplary embodiments of the present disclosure further provide a computer-readable storage medium storing a program product capable of implementing the display position adjustment method described above. In some possible implementations, various aspects of the present disclosure may also be implemented in the form of a program product comprising program code that, when executed on an electronic device, causes the electronic device to execute the steps described in the "Exemplary Methods" section above according to various exemplary embodiments of the present disclosure.
[0109] Specifically, the program product stored on the computer-readable storage medium can enable the electronic device to perform the following steps:
[0110] In response to a triggering operation of a display position adjustment event, determining a first distance between a head and a hand of the target object, the first distance being the distance between the head and the hand of the target object when the display position adjustment event is triggered;
[0111] In response to a movement operation of the target object's head and / or hand, determining a second distance between the target object's head and hand, the second distance being the distance between the target object's head and hand after the target object's head and / or hand has moved;
[0112] The target change distance corresponding to the current display position of the virtual scene is determined according to the first distance and the second distance, and the current display position of the virtual scene is adjusted according to the target change distance.
[0113] In an optional embodiment, the above-mentioned determination of the first distance between the target object's head and hand can be specifically achieved through the following steps: obtaining the first position coordinates of the target object's head and the second position coordinates of the target object's hand, the first position coordinates being the position coordinates of the target object's head when the display position adjustment event is triggered, and the second position coordinates being the position coordinates of the target object's hand when the display position adjustment event is triggered; based on the first position coordinates of the target object's head and the second position coordinates of the target object's hand, the first distance between the target object's head and hand is obtained.
[0114] In an optional embodiment, the above-mentioned determination of the second distance between the target object's head and hand can be specifically achieved through the following steps: obtaining the third position coordinates of the target object's head and the fourth position coordinates of the target object's hand, the third position coordinates being the position coordinates of the target object's head after the target object's head and / or hand move, and the fourth position coordinates being the position coordinates of the target object's hand after the target object's head and / or hand move; based on the third position coordinates of the target object's head and the fourth position coordinates of the target object's hand, obtaining the second distance between the target object's head and hand.
[0115] In an optional embodiment, the above-mentioned determination of the target change distance corresponding to the current display position of the virtual scene based on the first distance and the second distance can be specifically achieved through the following steps: determining the relative moving distance of the moving operation based on the difference between the first distance and the second distance; determining the target change distance corresponding to the current display position of the virtual scene based on the relative moving distance of the moving operation and the preset distance change control parameter.
[0116] In an optional embodiment, the above-mentioned determination of the target change distance corresponding to the current display position of the virtual scene based on the relative moving distance of the moving operation and the preset distance change control parameter can be specifically achieved through the following steps: adjusting the preset distance change control parameter according to the hand state of the target object; determining the target change distance corresponding to the current display position of the virtual scene based on the relative moving distance of the moving operation and the adjusted preset distance change control parameter.
[0117] In an optional embodiment, the hand state of the target object includes a hand rotation angle of the target object.
[0118] In an optional embodiment, the triggering operation of the display position adjustment event includes the target object's hand being in a fist state.
[0119] During this display position adjustment process, the current display position of the virtual scene is rapidly adjusted based on the changes in the target subject's head and hand positions. This, on the one hand, overcomes the spatial constraints of the real scene during virtual reality interaction, allowing for compatibility with larger virtual scenes and enriching the interactive experience. On the other hand, it avoids errors caused by absolute displacement due to the target subject's body movement, improving the precision of target subject control during virtual scene display position adjustment.
[0120] The program product may be a portable compact disc read-only memory (CD-ROM) and include program code, and may be run on an electronic device, such as a personal computer. However, the program product of the present disclosure is not limited thereto, and in this document, a readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
[0121] The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or component, or any combination thereof. More specific examples (a non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof.
[0122] A computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, which carries readable program code. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium that can transmit, propagate, or transfer a program for use by or in conjunction with an instruction execution system, apparatus, or device.
[0123] The program code embodied on the readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0124] Program code for performing the operations of the present disclosure may be written in any combination of one or more programming languages, including object-oriented programming languages such as Java, C++, and the like, as well as conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a stand-alone software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving a remote computing device, the remote computing device may be connected to the user computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0125] The exemplary embodiment of the present disclosure also provides an electronic device capable of implementing the above display position adjustment method. Figure 10 1000 according to this exemplary embodiment of the present disclosure will be described. Figure 10 The electronic device 1000 shown is merely an example and should not limit the functions and scope of use of the embodiments of the present disclosure.
[0126] like Figure 10 As shown, electronic device 1000 may be implemented as a general-purpose computing device. Components of electronic device 1000 may include, but are not limited to, at least one processing unit 1010, at least one storage unit 1020, a bus 1030 connecting various system components (including storage unit 1020 and processing unit 1010), and a display unit 1040.
[0127] The storage unit 1020 stores program codes, which can be executed by the processing unit 1010 to enable the processing unit 1010 to perform the steps according to various exemplary embodiments of the present disclosure described in the above “Exemplary Method” section of this specification.
[0128] Specifically, the processing unit 1010 may perform the following steps:
[0129] In response to a triggering operation of a display position adjustment event, determining a first distance between a head and a hand of the target object, the first distance being the distance between the head and the hand of the target object when the display position adjustment event is triggered;
[0130] In response to a movement operation of the target object's head and / or hand, determining a second distance between the target object's head and hand, the second distance being the distance between the target object's head and hand after the target object's head and / or hand has moved;
[0131] The target change distance corresponding to the current display position of the virtual scene is determined according to the first distance and the second distance, and the current display position of the virtual scene is adjusted according to the target change distance.
[0132] In an optional embodiment, the above-mentioned determination of the first distance between the target object's head and hand can be specifically achieved through the following steps: obtaining the first position coordinates of the target object's head and the second position coordinates of the target object's hand, the first position coordinates being the position coordinates of the target object's head when the display position adjustment event is triggered, and the second position coordinates being the position coordinates of the target object's hand when the display position adjustment event is triggered; based on the first position coordinates of the target object's head and the second position coordinates of the target object's hand, the first distance between the target object's head and hand is obtained.
[0133] In an optional embodiment, the above-mentioned determination of the second distance between the target object's head and hand can be specifically achieved through the following steps: obtaining the third position coordinates of the target object's head and the fourth position coordinates of the target object's hand, the third position coordinates being the position coordinates of the target object's head after the target object's head and / or hand move, and the fourth position coordinates being the position coordinates of the target object's hand after the target object's head and / or hand move; based on the third position coordinates of the target object's head and the fourth position coordinates of the target object's hand, obtaining the second distance between the target object's head and hand.
[0134] In an optional embodiment, the above-mentioned determination of the target change distance corresponding to the current display position of the virtual scene based on the first distance and the second distance can be specifically achieved through the following steps: determining the relative moving distance of the moving operation based on the difference between the first distance and the second distance; determining the target change distance corresponding to the current display position of the virtual scene based on the relative moving distance of the moving operation and the preset distance change control parameter.
[0135] In an optional embodiment, the above-mentioned determination of the target change distance corresponding to the current display position of the virtual scene based on the relative moving distance of the moving operation and the preset distance change control parameter can be specifically achieved through the following steps: adjusting the preset distance change control parameter according to the hand state of the target object; determining the target change distance corresponding to the current display position of the virtual scene based on the relative moving distance of the moving operation and the adjusted preset distance change control parameter.
[0136] In an optional embodiment, the hand state of the target object includes a hand rotation angle of the target object.
[0137] In an optional embodiment, the triggering operation of the display position adjustment event includes the target object's hand being in a fist state.
[0138] During this display position adjustment process, the current display position of the virtual scene is rapidly adjusted based on the changes in the target subject's head and hand positions. This, on the one hand, overcomes the spatial constraints of the real scene during virtual reality interaction, allowing for compatibility with larger virtual scenes and enriching the interactive experience. On the other hand, it avoids errors caused by absolute displacement due to the target subject's body movement, improving the precision of target subject control during virtual scene display position adjustment.
[0139] The storage unit 1020 may include a readable medium in the form of a volatile storage unit, such as a random access memory unit (RAM) 1021 and / or a cache memory unit 1022 , and may further include a read-only memory unit (ROM) 1023 .
[0140] The storage unit 1020 may also include a program / utility 1024 having a set (at least one) of program modules 1025, such program modules 1025 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment.
[0141] Bus 1030 may represent one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.
[0142] The electronic device 1000 may also communicate with one or more external devices 1100 (e.g., keyboards, pointing devices, Bluetooth devices, etc.), one or more devices that enable a user to interact with the electronic device 1000, and / or any device that enables the electronic device 1000 to communicate with one or more other computing devices (e.g., routers, modems, etc.). Such communication may be performed through an input / output (I / O) interface 1050. Furthermore, the electronic device 1000 may also communicate with one or more networks (e.g., a local area network (LAN), a wide area network (WAN), and / or a public network, such as the Internet) through a network adapter 1060. Figure 10 As shown, the network adapter 1060 communicates with other modules of the electronic device 1000 via the bus 1030. Figure 10 Not shown, other hardware and / or software modules may be used in conjunction with electronic device 1000, including but not limited to microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0143] Through the description of the above embodiments, it is easy for those skilled in the art to understand that the example embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solution according to the embodiments of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which can be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to the exemplary embodiment of the present disclosure.
[0144] Furthermore, the figures above are merely illustrative of the processes included in the methods according to exemplary embodiments of the present disclosure and are not intended to be limiting. It is readily understood that the processes illustrated in the figures above do not indicate or limit the temporal order of these processes. Furthermore, it is readily understood that these processes may be executed synchronously or asynchronously, for example, in multiple modules.
[0145] It should be noted that although several modules or units of the device for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the exemplary embodiments of the present disclosure, the features and functions of two or more modules or units described above can be concretized in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided into multiple modules or units to be concretized.
[0146] It will be appreciated by those skilled in the art that various aspects of the present disclosure may be implemented as systems, methods or program products. Therefore, various aspects of the present disclosure may be specifically implemented as the following forms, namely: a complete hardware implementation, a complete software implementation (including firmware, microcode, etc.), or an implementation combining hardware and software, which may be collectively referred to herein as a "circuit", "module" or "system". Other embodiments of the present disclosure will readily occur to those skilled in the art after considering the specification and practicing the invention disclosed herein. This application is intended to cover any variations, uses or adaptations of the present disclosure, which follow the general principles of the present disclosure and include common knowledge or customary technical means in the art that are not disclosed in the present disclosure. The specification and implementation are intended to be exemplary only, with the true scope and spirit of the present disclosure being indicated by the claims.
[0147] It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.
Claims
1. A display position adjustment method, characterized in that: The target object interacts with the virtual scene through the somatosensory device worn by the target object, and the method includes: In response to a triggering operation of a display position adjustment event, determining a first distance between the head and the hand of the target object, where the first distance is the distance between the head and the hand of the target object when the display position adjustment event is triggered; In response to a movement operation of the target object's head and / or hand, determining a second distance between the target object's head and hand, the second distance being the distance between the target object's head and hand after the target object's head and / or hand moves; A target change distance corresponding to the current display position of the virtual scene is determined according to the first distance and the second distance, and the current display position of the virtual scene is adjusted according to the target change distance.
2. The method according to claim 1, characterized in that Determining a first distance between the head and the hand of the target object includes: Obtaining first position coordinates of the target object's head and second position coordinates of the target object's hand, where the first position coordinates are the position coordinates of the target object's head when the display position adjustment event is triggered, and the second position coordinates are the position coordinates of the target object's hand when the display position adjustment event is triggered; A first distance between the head and the hand of the target object is obtained based on the first position coordinates of the target object's head and the second position coordinates of the target object's hand.
3. The method according to claim 1, characterized in that Determining a second distance between the head and the hand of the target object includes: Obtaining third position coordinates of the target object's head and fourth position coordinates of the target object's hand, where the third position coordinates are the position coordinates of the target object's head after the target object's head and / or hand move, and the fourth position coordinates are the position coordinates of the target object's hand after the target object's head and / or hand move; A second distance between the head and the hand of the target object is obtained based on the third position coordinates of the target object's head and the fourth position coordinates of the target object's hand.
4. The method according to claim 1, wherein The determining, based on the first distance and the second distance, a target change distance corresponding to the current display position of the virtual scene includes: determining a relative moving distance of the moving operation according to a difference between the first distance and the second distance; According to the relative moving distance of the moving operation and the preset distance change control parameter, a target change distance corresponding to the current display position of the virtual scene is determined.
5. The method according to claim 4, characterized in that The determining, based on the relative moving distance of the moving operation and a preset distance change control parameter, a target change distance corresponding to the current display position of the virtual scene includes: adjusting a preset distance change control parameter according to the hand state of the target object; Based on the relative moving distance of the moving operation and the adjusted preset distance change control parameter, a target change distance corresponding to the current display position of the virtual scene is determined.
6. The method according to claim 5, characterized in that The hand state of the target object includes a hand rotation angle of the target object.
7. The method according to claim 1, characterized in that The triggering operation of the display position adjustment event includes the target object's hand being in a fist state.
8. A display position adjustment device, characterized in that: The target object interacts with the virtual scene through the somatosensory device worn by the target object, and the device includes: a first distance determining module, configured to determine, in response to a triggering operation of a display position adjustment event, a first distance between the head and the hand of the target object, wherein the first distance is the distance between the head and the hand of the target object when the display position adjustment event is triggered; a second distance determining module, configured to determine a second distance between the head and hand of the target object in response to a movement operation of the head and / or hand of the target object, wherein the second distance is the distance between the head and hand of the target object after the head and / or hand of the target object moves; The display position adjustment module is used to determine a target change distance corresponding to the current display position of the virtual scene according to the first distance and the second distance, and adjust the current display position of the virtual scene according to the target change distance.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.
10. An electronic device, characterized in that: include: processor; as well as a memory for storing executable instructions of the processor; The processor is configured to perform the method according to any one of claims 1 to 7 by executing the executable instructions.
Citation Information
Patent Citations
Virtual reality interaction method and device, storage medium and electronic equipment
CN108563335A
Method and device for realizing virtual reality, intelligent equipment and storage medium
CN109725782A