Method and system for controlling rendering of virtual reality experiences in virtual environments
Patent Information
- Application Number
- PCT/FI2026/050137
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2025-03-24
- Filing Date
- 2026-03-23
- Publication Date
- 2026-10-01
Smart Images

Figure FI2026050137_01102026_PF_FP_ABST
Abstract
Description
[0001] METHOD AND SYSTEM FOR. CONTROLLING RENDERING OF VIRTUAL REALITY EXPERIENCES IN VIRTUAL ENVIRONMENTS
[0002] TECHNICAL FIELD
[0003] The present disclosure relates to methods for controlling rendering of virtual reality experiences in virtual environments. Moreover, the present disclosure relates to virtual reality systems. Furthermore, the present disclosure relates to computer programs.
[0004] BACKGROUND
[0005] Presently, virtual reality system enables a user to experience and interact with computer-generated digital environments through specialized hardware such as head-mounted displays and input devices. In a virtual reality experience, the user perceives a virtual environment from a virtual viewpoint and controls an avatar representing the user within the virtual environment. As the virtual reality system continue to advance, it is increasingly used in applications such as video games, training simulations, collaborative environments, and immersive digital experiences.
[0006] In the virtual reality system, movement of the avatar within the virtual environment is commonly supported to enable navigation and interaction. Such movement may include positional displacement of the avatar from one location to another location within the virtual environment. During such movement, rendering of the virtual environment is typically updated from the virtual viewpoint associated with the avatar. However, continuous updating of a position of the virtual viewpoint in response to the movement of the avatar causes perceptual instability. In particular, discrepancies between a visual motion presented to the user and a physical motion of the user result indiscomfort, motion sickness, or reduced immersion within the virtual reality experience. These issues may negatively affect user comfort, limit duration of use, and reduce overall usability of the virtual reality system.
[0007] However, existing approaches attempt to address portions of the aforesaid challenges by modifying manner in which the virtual viewpoint follows the movement of the avatar. Firstly, certain approaches approaches preserve spatial alignment, continuous virtual viewpoint motion may contribute to discomfort in certain usage scenarios. Secondly, other approaches attempt to reduce discomfort by altering camera behavior or providing alternative locomotion methods. However, such approaches introduce discontinuities in perception, reduce spatial consistency, or affect the sense of the immersion experienced by the user. Consequently, conventional approaches may involve trade-offs between the spatial alignment, perceptual stability, and the user comfort.
[0008] Therefore, in light of the foregoing discussion, there exists a need to overcome the aforementioned drawbacks.
[0009] SUMMARY
[0010] The aim of the present disclosure is to provide a method for controlling rendering of a virtual reality experience in a virtual environment, a virtual reality system and a computer program to reduce motion sickness and improve perceptual stability during execution of a locomotive movement of an avatar while preserving spatial consistency within the virtual environment. The aim of the present disclosure is achieved by a method for controlling rendering of a virtual reality experience in a virtual environment, a virtual reality system and a computer program as defined in the appended independent claims towhich reference is made to. Advantageous features are set out in the appended dependent claims.
[0011] Throughout the description and claims of this specification, the words "comprise" , "include", "have", and "contain" and variations of these words, for example "comprising" and "comprises" , mean "including but not limited to", and do not exclude other components, items, integers or steps not explicitly disclosed also to be present. Moreover, the singular encompasses the plural unless the context otherwise requires. In particular, where the indefinite article is used, the specification is to be understood as contemplating plurality as well as singularity, unless the context requires otherwise.
[0012] BRIEF DESCRIPTION OF THE DRAWINGS
[0013] Embodiments of the present disclosure will now be described, by way of example only, with reference to the following diagrams wherein:
[0014] FIG. 1 illustrates steps of a method for controlling rendering of a virtual reality experience in a virtual environment comprising an avatar, in accordance with an embodiment of the present disclosure;
[0015] FIG. 2 illustrates a block diagram of a virtual reality system for controlling rendering of a virtual reality experience in a virtual environment, in accordance with an embodiment of the present disclosure;
[0016] FIGs. 3A and 3B collectively illustrate an exemplary implementation of a virtual reality system, in accordance with an embodiment of the present disclosure;
[0017] FIGs. 4A, 4B, 4C and 4D collectively illustrate an exemplary scenario of controlling rendering of a virtual reality experience in a virtual environment comprising an avatar, in accordance with an embodiment of the present disclosure;FIGs. 5A, 5B, 5C and 5D collectively illustrate another exemplary scenario for controlling rendering of a virtual reality experience in a virtual environment comprising an avatar, in accordance with an embodiment of the present disclosure;
[0018] FIG. 6 illustrates an exemplary three-dimensional schematic representation of a virtual environment comprising an avatar, in accordance with an embodiment of the present disclosure;
[0019] FIGs. 7A and 7B collectively illustrate experimental evaluation results comparing a first rendering control condition and a second rendering control condition in accordance with an embodiment of the present disclosure; and
[0020] FIG. 8 illustrate a bar graph participant preference counts for initiating a locomotive movement of an avatar within a virtual environment, in accordance with an embodiment of the present disclosure.
[0021] DETAILED DESCRIPTION OF EMBODIMENTS
[0022] The following detailed description illustrates embodiments of the present disclosure and ways in which they can be implemented. Although some modes of carrying out the present disclosure have been disclosed, those skilled in the art would recognize that other embodiments for carrying out or practising the present disclosure are also possible.
[0023] In a first aspect, the present disclosure provides a method for controlling rendering of a virtual reality experience in a virtual environment comprising an avatar, the method comprising: rendering the virtual environment using a first virtual viewpoint; detecting a type of movement of the avatar;
[0024] wherein:if the type of movement of the avatar is a locomotive movement, continue rendering of the virtual environment using the first virtual viewpoint during the locomotive movement, and
[0025] after completion of the locomotive movement, rendering of the virtual environment is switched from using the first virtual viewpoint to using of a second virtual viewpoint, the second virtual viewpoint corresponding to a viewpoint of the avatar after completion of the locomotive movement.
[0026] The aforementioned first aspect provides the method for controlling rendering of the virtual reality experience in the virtual environment. Herein, by continuing rendering of the virtual environment using the first virtual viewpoint during the locomotive movement of the avatar, the method avoids continuous updating of a position of the first virtual viewpoint in response to spatial displacement of the avatar within the virtual environment. As a result, a visual perspective of the virtual environment perceived by a user is stabilized during execution of the locomotive movement, thereby reducing perceptual instability caused by continuous translation of the first virtual viewpoint. Moreover, by switching rendering of the virtual environment from using the first virtual viewpoint to using the second virtual viewpoint only after completion of the locomotive movement, correspondence between the second virtual viewpoint and an updated spatial position of the avatar is re-established in a controlled manner. This preserves spatial consistency within the virtual environment while minimizing visual-vestibular conflict during the locomotive movement. Accordingly, the method improves perceptual stability during execution of the locomotive movement of the avatar, reduces motion sickness and maintains an immersion within the virtual reality experience.
[0027] Throughout the present disclosure, the term "virtual reality experience" refers to a computer-generated interactive experience presented to theuser, wherein the user perceives and interacts with the virtual environment through a virtual reality device. Examples of the virtual reality experience may include, but are not limited to, a video game, a three-dimensional (3D) simulation, a training environment, and a collaborative virtual space. Throughout the present disclosure, the term "virtual environment" refers to a computer-generated 3D digital space in which virtual entities and objects are arranged and within which interactions occur during the virtual reality experience. Optionally, the virtual environment represents real spaces, fictional spaces, and / or abstract spaces. Throughout the present disclosure, the term "avatar" refers to a virtual entity within the virtual environment that represents or corresponds to a user and through which the user performs actions or movements within the virtual environment.
[0028] Throughout the present disclosure, the term "virtual viewpoint" refers to a position and an orientation within the virtual environment from which said virtual environment is rendered and presented to the user during the virtual reality experience. In some examples, the virtual viewpoint may be determined relative to a tracked real-world position and orientation of a head-mounted device of the user, such that movement of the user's head causes a corresponding change in rendering of the virtual environment. Moreover, the virtual viewpoint defines spatial parameters that determine a perspective from which a visual output corresponding to the virtual environment is generated. Herein, the position of the virtual viewpoint is expressed using a Cartesian coordinate within the virtual environment and the orientation of the virtual viewpoint is represented by a viewing vector defining a direction of observation relative to the position. In some examples, the virtual viewpoint may be defined by a positional offset and an orientational offset between the tracked real-world position and orientation of the user and a rendering camera position and orientation used for rendering the virtual environment. For example, the rendering camera positionmay be determined based on a sum of a tracked headset position vector and a virtual viewpoint position offset vector, and the rendering camera orientation may be determined based on a tracked headset orientation and a virtual viewpoint orientation offset. In some examples, the orientation may be represented by a quaternion. In some examples, separate offsets may be used for respective left-eye and right-eye rendering cameras. Moreover, rendering of the virtual environment using the first virtual viewpoint comprises generating the visual output corresponding to the virtual environment using spatial information associated with the first virtual viewpoint. The first virtual viewpoint is positioned at the position (for example having a coordinate (xl, yl, zl)) within the virtual environment and has the orientation defined by a direction vector (for example, DI). The position and the orientation of the first virtual viewpoint determine which of the virtual entities and the objects within the virtual environment are visible within a viewing frustum defined by the first virtual viewpoint and how such virtual entities and the objects are presented to the user during the virtual reality experience.
[0029] The type of the movement of the avatar is detected by monitoring inputs and events associated with the virtual reality experience that indicate the movement of the avatar from a stationary state to a moving state. Moreover, the detected type of the movement corresponds to displacement of the avatar relative to the virtual environment. Furthermore, detected type of the movement of the avatar enables identification of movement behaviour of said avatar within the virtual environment.
[0030] Throughout the present disclosure, the term "locomotive movement" refers to the movement of the avatar that causes spatial displacement of the avatar within the virtual environment wherein the avatar's head movement in virtual reality differs from the user's head movement in the real world. Examples include but are not limited to user-initiatedlocomotive movements such as joystick-controlled walking, running, jumping, climbing, dodging, staggering, translational movement, rotational movement, externally initiated locomotive movements such as the avatar falling down in response to colliding with a virtual object or a combination thereof. Herein, continuing rendering using the first virtual viewpoint comprises generating visual output corresponding to the virtual environment using the spatial information associated with the first virtual viewpoint while the avatar undergoes the locomotive movement within the virtual environment. Thus, even though the avatar changes the position within the virtual environment during the locomotive movement, rendering of the virtual environment continues to be generated using the first virtual viewpoint. Moreover, continuing rendering of the virtual environment using the first virtual viewpoint during the locomotive movement maintains a stable visual perspective during the locomotive movement of the avatar within the virtual environment, thereby improving perceptual stability within the virtual reality experience.
[0031] The second virtual viewpoint corresponds to the viewpoint of the avatar after completion of the locomotive movement. The second virtual viewpoint is positioned at a second position (for example having the coordinate (x2, y2, z2)) within the virtual environment and has the orientation defined by the direction vector (for example, D2). Moreover, rendering of the virtual environment using the second virtual viewpoint generates the visual output corresponding to the virtual environment from a spatial perspective associated with the avatar after completion of the locomotive movement. As a result, the visual perspective presented during the virtual reality experience reflects updated location of the avatar following completion of the locomotive movement. This coordinated control of the rendering during and after the locomotive movement enables comfortable locomotion of the avatar within thevirtual reality experience while maintaining visibility of the avatar and preserving the immersion of the user.
[0032] Optionally, when switching rendering from using the first virtual viewpoint to using of the second virtual viewpoint an orientation associated with the first virtual viewpoint is maintained and a position associated with the first virtual viewpoint is changed to a position associated with the second virtual viewpoint. In this regard, switching rendering comprises updating the spatial information used for rendering the virtual environment. More specifically, switching rendering comprises modifying the position associated with the first virtual viewpoint while preserving the orientation associated with the first virtual viewpoint. The orientation associated with the first virtual viewpoint corresponds to a viewing direction defined by the direction vector associated with the first virtual viewpoint. Herein, maintaining the orientation associated with the first virtual viewpoint comprises preserving the viewing direction of the first virtual viewpoint when rendering is switched to the second virtual viewpoint. Herein, the position associated with the first virtual viewpoint is updated to correspond to the position associated with the second virtual viewpoint. Thus, rendering of the virtual environment is performed from the position associated with the second virtual viewpoint while the orientation associated with the first virtual viewpoint is maintained. Moreover, by maintaining the orientation associated with the first virtual viewpoint while updating the position associated with the first virtual viewpoint to the position associated with the second virtual viewpoint, the viewing direction perceived during the virtual reality experience remains unchanged during switching. A technical effect of the aforementioned feature is that it reduces perceptual instability and improves the user comfort during the virtual reality experience while preserving spatial correspondence between the avatar and the viewpoint.Optionally, when switching rendering of the virtual environment from using the first virtual viewpoint to using the second virtual viewpoint results in occlusion of the avatar by the object within the virtual environment, the position associated with the second virtual viewpoint is adjusted toward the avatar until the avatar is no longer occluded within the virtual environment. In this regard, occlusion of the avatar is detected by performing a raycast, a sphere cast, or a capsule cast from the avatar toward the second virtual viewpoint to determine whether the object within the virtual environment obstructs a line of sight between the avatar and the second virtual viewpoint. When such obstruction is detected, the position associated with the second virtual viewpoint is progressively moved toward the avatar until the occlusion is eliminated. A technical effect of the aforementioned feature is that the visibility of the avatar within the virtual environment is maintained, thereby improving clarity of the virtual environment and preventing loss of visual correspondence between the avatar and the second virtual viewpoint.
[0033] Optionally, the first virtual viewpoint corresponds to a first viewpoint of the avatar from which the avatar perceives the virtual environment, and wherein the position and the orientation associated with the first virtual viewpoint are updated based on tracked movement of a virtual reality device used by a user. In this regard, the term "virtual reality device" refers to an electronic device configured to present the virtual reality experience to the user and to track the movement of the user for interaction within the virtual environment. Examples of the virtual reality device may include, but are not limited to, a head-mounted display, a virtual reality headset, an augmented reality headset, a mixed reality headset, a head-mounted computing device, or a combination thereof. Optionally, the virtual reality device comprises one or more tracking sensors configured to track the movement of the virtual reality device. Examples of the tracking sensors may include, butare not limited to, an inertial measurement unit, an accelerometer, a gyroscope, a magnetometer, an optical tracking sensor, an image sensor, a depth sensor, a structured light sensor, a time-of-flight sensor, or a combination thereof. Herein, the first virtual viewpoint represents a spatial reference corresponding to the first viewpoint of the avatar. Moreover, the movement of the virtual reality device corresponds to movement performed by the user during the virtual reality experience. Therefore, tracking the movement of the virtual reality device enables the position and the orientation associated with the first virtual viewpoint to be updated so that rendering of the virtual environment reflects movement performed by the user. Consequently, when the user moves the virtual reality device, the position associated with the first virtual viewpoint and the orientation associated with the first virtual viewpoint are updated to correspond to the tracked movement of the virtual reality device. Therefore, rendering of the virtual environment using the first virtual viewpoint reflects the movement of the user during the virtual reality experience, thereby enabling the user to observe the virtual environment from the first viewpoint of the avatar. A technical effect of the aforementioned feature is that the rendering of the virtual environment remains synchronized with the movement performed by the user during the virtual reality experience, thereby maintaining spatial correspondence between the avatar and the virtual environment.
[0034] Optionally, the second virtual viewpoint corresponds to a second viewpoint of the avatar from which the avatar perceives the virtual environment after completion of the locomotive movement, wherein an orientation of the second virtual viewpoint corresponds to the orientation of the first virtual viewpoint. In this regard, the orientation of the first virtual viewpoint defines the viewing direction from which the virtual environment is observed during rendering using the first virtual viewpoint. Moreover, rendering of the virtual environment fromthe second virtual viewpoint occurs from an updated spatial position of the avatar while maintaining the same viewing direction that existed prior to completion of the locomotive movement. Furthermore, maintaining the orientation of the second virtual viewpoint corresponding to the orientation of the first virtual viewpoint therefore avoids introduction of rotational change when rendering is switched from using the first virtual viewpoint to using the second virtual viewpoint. As a result, the user continues to observe the virtual environment in same viewing direction while the spatial position of the avatar is updated after completion of the locomotive movement. A technical effect of the aforementioned feature is that the viewing direction perceived during the virtual reality experience remains stable, thereby reducing perceptual disorientation that may occur due to the sudden rotational movement of when switching rendering from using the first virtual viewpoint to using the second virtual viewpoint.
[0035] Optionally, the type of movement detection is initiated after detecting at least one of:
[0036] (a) an input signal generated by a user-operated control device,
[0037] (b) a user gesture detected from motion-tracking data, and
[0038] (c) a change in a state of the virtual environment triggering the movement of the avatar.
[0039] A technical effect of the aforementioned feature is that the type of movement detection is initiated reliably, thereby improving robustness and responsiveness of the movement detection within the virtual reality experience and ensuring that rendering control associated with the locomotive movement is applied in a timely manner.
[0040] In this regard, the term "user-operated control device" refers to an input device configured to generate the input signal in response to physical actuation by the user during the virtual reality experience, wherein the input signal is used to control the movement of the avatarwithin the virtual environment. Examples of the user-operated control device may include, but are not limited to, a handheld controller, a joystick, a button interface, a motion controller, a keyboard, and a combination thereof. Herein, the input signal generated by the useroperated control device corresponds to a command associated with the movement of the avatar within the virtual environment.
[0041] In an example, the user-operated control device may be implemented as a joystick. Herein, a displacement of the joystick from a stationary state generates an input signal corresponding to the movement of the avatar within the virtual environment. Subsequently, detection of the input signal indicates that the movement of the avatar is initiated, thereby initiating detection of the type of movement of the avatar.
[0042] Herein, the term "user gesture" refers to a predefined movement pattern performed by the user and detected from motion-tracking data during the virtual reality experience. The user gesture corresponds to a physical movement of at least a portion of the user's body that is interpretable within the virtual environment as a command or action associated with the avatar. Examples of the user gesture include, but are not limited to, a body movement, a head movement, a hand movement, or a limb movement performed by the user. Moreover, the term "motion-tracking data" refers to data representing the tracked movement of the user within the virtual reality experience. Optionally, the motion-tracking data comprises translational movement and rotational movement detected by one or more tracking sensors associated with the virtual reality device. Herein, the motion-tracking data obtained from the one or more tracking sensor is continuously analysed to identify the predefined movement pattern corresponding to the user gesture. When the predefined pattern is detected from the motion-tracking data, the movement of the avatar corresponding to the user gesture is triggered within the virtual environment. Accordingly,detection of the user gesture initiates detection of the type of movement of the avatar.
[0043] In another example, the user gesture may be a forward movement of a body of the user. Herein, the forward movement is interpreted as an indication that the movement of the avatar is initiated. Accordingly, detection of the user gesture initiates detection of the type of movement of the avatar.
[0044] Herein, detection of the type of movement is initiated after detecting the change in the state of the virtual environment triggering the movement of the avatar. The state of the virtual environment is monitored during the virtual reality experience, wherein the state of the virtual environment changes due to an event occurring within the virtual environment. Examples of the event may include, but are not limited to, an interaction event within the virtual environment, a collision event involving the avatar, activation of an environmental condition that triggers the movement of the avatar, and modification of spatial constraints affecting the avatar. When such change in the state of the virtual environment occurs, the movement of the avatar is triggered, thereby initiating detection of the type of movement of the avatar.
[0045] Optionally, during the locomotive movement, rendering of the virtual environment is switched from using the first virtual viewpoint to using of an intermediate virtual viewpoint. In this regard, the term "intermediate virtual viewpoint" refers to a virtual viewpoint positioned at a spatial location within the virtual environment that is distinct from both the first virtual viewpoint and the second virtual viewpoint. The intermediate virtual viewpoint is configured to control rendering of the virtual environment while the locomotive movement of the avatar is ongoing. The intermediate virtual viewpoint therefore represents a temporary viewpoint used for rendering during execution of the locomotive movement prior to completion of the locomotive movement.Herein, switching rendering to the intermediate virtual viewpoint comprises updating the spatial information used for rendering the virtual environment so that rendering occurs from the intermediate virtual viewpoint while the locomotive movement of the avatar continues. The intermediate virtual viewpoint is spatially positioned relative to the avatar such that rendering of the virtual environment from the intermediate virtual viewpoint maintains visibility of the avatar during the locomotive movement. Accordingly, rendering of the virtual environment is adaptively controlled while the avatar performs the locomotive movement within the virtual environment.
[0046] In an example, the avatar may perform the locomotive movement within a corridor-like region of the virtual environment and may approach a turning region of the virtual environment during the locomotive movement. Herein, rendering of the virtual environment is switched from using the first virtual viewpoint to using the intermediate virtual viewpoint prior to completion of the locomotive movement in order to expose an upcoming region of the virtual environment. Accordingly, the user is able to perceive the upcoming region of the virtual environment while the locomotive movement of the avatar continues.
[0047] A technical effect of switching rendering of the virtual environment from using the first virtual viewpoint to using of the intermediate virtual viewpoint is that rendering of the virtual environment can be dynamically repositioned during execution of the locomotive movement while preserving continuity of the locomotive movement of the avatar. Optionally, switching rendering using the intermediate virtual viewpoint is triggered based on at least one of:
[0048] (a) an elapsed time if a previous switching between virtual viewpoints exceeds a first predetermined time threshold, and(b) a distance between the avatar and the first virtual viewpoint exceeding a predetermined distance threshold,
[0049] (c) a time between start of avatar movement exceeds a second predetermined time threshold and / or
[0050] (d) the avatar movement is not visible from the first virtual viewpoint. A technical effect of the aforementioned feature is that the switching rendering to the intermediate virtual viewpoint occurs responsively, thereby maintaining controlled positioning of the virtual viewpoints relative to the avatar during the locomotive movement and improving stability and consistency of rendering within the virtual reality experience.
[0051] In this regard, the term "elapsed time" refers to a duration measured beginning from the most recent switching between virtual viewpoints and continuing while rendering of the virtual environment is performed. The elapsed time is determined by monitoring a time interval associated with the rendering control of the virtual environment during execution of the locomotive movement of the avatar. Moreover, the first predetermined threshold defines a maximum duration for which rendering of the virtual environment continues using the first virtual viewpoint or the second virtual viewpoint. Herein, when the elapsed time exceeds the first predetermined time threshold, rendering is switched to the intermediate virtual viewpoint in order to maintain an appropriate spatial relationship between the virtual viewpoints and the avatar during execution of the locomotive movement.
[0052] Herein, the distance between the avatar and the first virtual viewpoint corresponds to a spatial separation between a position associated with the avatar and the position associated with the first virtual viewpoint within the virtual environment. The distance is determined based on spatial coordinates of the avatar and the first virtual viewpoint and is continuously evaluated while the avatar performs the locomotivemovement within the virtual environment. Herein, during execution of the locomotive movement, the distance between the avatar and the first virtual viewpoint progressively increases due to the spatial displacement of the avatar within the virtual environment. When the distance exceeds the predetermined distance threshold, switching rendering to the intermediate virtual viewpoint is triggered. Accordingly, triggering switching based on the distance between the avatar and the first virtual viewpoint ensures that the avatar remains clearly visible within the virtual environment during execution of the locomotive movement.
[0053] In an example, the predefined distance threshold lies in a range of 2 metres to 5 meters, wherein the avatar is a human sized character within the virtual environment. Moreover, the predefined distance threshold may lie from 2, 2.25, 2.75, 3.5, or 4.5 meters to 2.50, 3.50, 4.25, 4.75, or 5 meters.
[0054] In another example, the predetermined distance threshold may correspond to an apparent perspective size of the avatar within the virtual environment. Herein, when the apparent size of the avatar decreases below a predefined proportion of an original rendered size of the avatar, the first virtual viewpoint is determined to exceed the predetermined distance threshold. Herein, the predefined proportion lies in a range of 50 percent to 80 percent. Moreover, the predefined portion may lie from 50, 52, 56, 62, or 70 percent to 60, 68, 74, 78, or 80 percent.
[0055] Herein, the start of the avatar movement corresponds to a moment at which the movement of the avatar is initiated within the virtual environment. The time between the start of the avatar movement and the first virtual viewpoint is determined by monitoring a time interval beginning from initiation of the movement of the avatar. The time interval is continuously evaluated while the avatar performs thelocomotive movement within the virtual environment. Optionally, the second predetermined threshold lies in range of 0.5 seconds to 5 seconds. As an example, the second predetermined threshold may lie from 0.5, 0.7, 1.1, 1.9, 3.3, or 4.9 seconds to 0.8, 2.4, 3.6, 4.4, 4.8 or 5 seconds. Herein, the second predetermined time threshold defines a maximum duration for which rendering of the virtual environment continues using the first virtual viewpoint after the start of the avatar movement. When the time between the start of the avatar movement exceeds the second predetermined time threshold, rendering is switched to the intermediate virtual viewpoint.
[0056] Herein, visibility of the avatar from the first virtual viewpoint is determined by evaluating whether the avatar undergoing the locomotive movement remains observable within the viewing frustum defined by the first virtual viewpoint. During execution of the locomotive movement, the spatial displacement of the avatar within the virtual environment may cause the avatar to move outside the viewing frustum defined by the first virtual viewpoint, wherein the avatar is considered not visible from the first virtual viewpoint. Upon determining that the avatar movement is not visible from the first virtual viewpoint, switching rendering using the intermediate virtual viewpoint is triggered.
[0057] Optionally, the movement is deemed to be the locomotive movement if the avatar moves from a first position in the virtual environment to a second position in the virtual environment faster than a first period of time. In this regard, the first position corresponds to a spatial location of the avatar within the virtual environment at the moment when the movement of the avatar is initiated. The second position corresponds to another spatial location of the avatar within the virtual environment that is reached after the locomotive movement of the avatar. The movement of the avatar from the first position to the second position is therefore evaluated by monitoring the spatial coordinates associatedwith the avatar within the virtual environment. Herein, a time interval associated with the spatial displacement of the avatar between the first position and the second position is determined. The time interval is measured beginning from initiation of the movement of the avatar and ending when the avatar reaches the second position within the virtual environment. The determined time interval is compared with the first period of time. When the movement of the avatar from the first position to the second position occurs faster than the first period of time, the movement is determined to correspond to the locomotive movement. Accordingly, the movement of the avatar within the virtual environment is identified as the locomotive movement, enabling differentiation between the locomotive movement and other types of movement of the avatar within the virtual environment. A technical effect of the aforementioned feature is that the locomotive movement of the avatar is identified based on speed of the spatial displacement within the virtual environment, thereby improving reliability of detecting the locomotive movement and ensuring appropriate control of rendering during execution of the locomotive movement.
[0058] Optionally, the movement is deemed to be the locomotive movement if the avatar moves from the first position in the virtual environment to the second position in the virtual environment and the distance between the first position and the second position is larger than a predetermined limit. In this regard, the distance between the first position and the second position corresponds to the spatial separation between the spatial coordinates associated with the avatar at the first position and the spatial coordinates associated with the avatar at the second position within the virtual environment. The distance between the first position and the second position is determined based on the spatial coordinates associated with the avatar within the virtual environment. Herein, movement of the avatar within the virtual environment is monitored to determine whether the avatar moves from the first position to thesecond position during the virtual reality experience. When the avatar moves from the first position to the second position, the distance between the first position and the second position is calculated. The distance is compared with the predetermined limit. When the distance between the first position and the second position is larger than the predetermined limit, the movement is deemed to be the locomotive movement. The predetermined limit corresponds to a spatial threshold that differentiates the locomotive movement from the other types of movement of the avatar that does not result in substantial spatial displacement of the avatar within the virtual environment. Accordingly, movement of the avatar that results in the spatial displacement exceeding the predetermined limit is identified as the locomotive movement. A technical effect of the aforementioned feature is that the locomotive movement of the avatar is identified based on magnitude of the spatial displacement within the virtual environment, thereby improving reliability of distinguishing the locomotive movement from the other types of movement of the avatar and enabling appropriate control of rendering during execution of the locomotive movement.
[0059] Optionally, during the movement, rendering of the virtual environment is switched from using of the first virtual viewpoint to using of the intermediate virtual viewpoint when the user triggers a switching, by a controller input. In this regard, the term "controller input" refers to an input signal generated by the user-operated control device in response to the physical actuation performed by the user during the virtual reality experience, wherein the input signal is distinct from the input signal used to initiate the locomotive movement of the avatar. Herein, the controller input is monitored to detect a command associated with switching rendering of the virtual environment. When the controller input corresponding to the switching command is detected, switching rendering of the virtual environment from using the first virtual viewpoint to using the intermediate virtual viewpoint is performed.Herein, switching rendering comprises updating the spatial information used for rendering the virtual environment so that rendering is performed from the intermediate virtual viewpoint while the movement of the avatar continues. Accordingly, the user is enabled to trigger switching of rendering during the movement of the avatar, thereby allowing the adaptive control of rendering within the virtual environment. A technical effect of the aforementioned feature is that it enables responsive adjustment of rendering of the virtual environment, thereby maintaining visibility of the avatar and improving controllability of rendering during the movement of the avatar within the virtual environment.
[0060] In an example, the controller input may be an activation of a target lock condition within the virtual environment. Herein, when the target lock condition is active and a target within the virtual environment is locked, rendering of the virtual environment is switched from using of the first virtual viewpoint to using of the intermediate virtual viewpoint such that both the avatar and the target are horizontally centred within the rendering of the virtual environment. Accordingly, the user is enabled to maintain alignment with the target while the locomotive movement continues.
[0061] In a second aspect, the present disclosure provides a virtual reality system comprising:
[0062] a virtual reality device comprising a processing circuitry,
[0063] wherein the processing circuitry is configured to execute the aforementioned method of the first aspect.
[0064] The present disclosure also relates to the second aspect as described above. Various embodiments and variants disclosed above, with respect to the aforementioned first aspect, apply mutatis mutandis to the second aspect.The aforementioned second aspect provides the virtual reality system for controlling rendering of a virtual reality experience in a virtual environment. Herein, the processing circuitry comprised in the virtual reality device ensures that rendering of the virtual environment is maintained from a first virtual viewpoint during a locomotive movement, thereby avoiding continuous updating of a position of the first virtual viewpoint in response to spatial displacement of the avatar within the virtual environment. Herein, avoiding such continuous updating provides reduced perceptual instability caused by translation of the first virtual viewpoint. Accordingly, the virtual reality system improves perceptual stability during execution of the locomotive movement of the avatar, reduces motion sickness, and maintains an immersion of a user within the virtual reality experience.
[0065] Throughout the present disclosure, the term "virtual reality system" refers to a computing system configured to generate, control, and present the virtual reality experience to a user.
[0066] It will be appreciated that the term "processing circuitry" refers to a computational element or a combination of computational elements working together operable to execute the aforementioned processing steps of the method. Examples of the processing circuitry may include, but are not limited to, a microprocessor, a microcontroller, a complex instruction set computing (CISC) microprocessor, a reduced instruction set (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, or a controller. Moreover, the processing circuitry may refer to one or more individual processors, processing devices and various elements associated with a processing device that may be shared by other processing devices. In other words, the processing circuitry may be capable of working as a standalone unit or a part of a combination of standalone units.Optionally, the virtual reality device comprises a head orientation tracking means to generate information associated with an orientation for rendering a first virtual viewpoint, an intermediate virtual viewpoint and / or a second virtual viewpoint. In this regard, the term "head orientation tracking means" refers to a component of the virtual reality device configured to detect and generate information associated with the orientation of a head of the user during the virtual reality experience. The head orientation tracking means is configured to determine the orientation of the head of the user relative to the virtual environment and to generate orientation information used for rendering the virtual environment. Optionally, the head orientation tracking means comprises one or more tracking sensors configured to detect rotational movement and translational movement of the head of the user. Examples of the one or more tracking sensors may include, but are not limited to, an inertial measurement unit, a gyroscope, an accelerometer, a magnetometer, an optical tracking sensor, an image sensor, a depth sensor, a structured light sensor, a time-of-flight sensor, or a combination thereof. The generated orientation information corresponds to a viewing direction used for rendering the virtual environment during the virtual reality experience. Accordingly, the orientation information generated by the head orientation tracking means is provided to the processing circuitry of the virtual reality device, and the processing circuitry uses the orientation information to control rendering of the virtual environment from the first virtual viewpoint, the intermediate virtual viewpoint and / or the second virtual viewpoint. Therefore, when the user changes the orientation of the head while interacting with the virtual reality experience, the head orientation tracking means detects the change in orientation and generates updated orientation information. The updated orientation information is used for rendering the virtual environment so that it corresponds to the orientation of the head of the user. A technical effect of theaforementioned feature is that the rendering of the virtual environment remains aligned with the orientation of the head of the user during the virtual reality experience, thereby improving perceptual consistency between the movement of the head of the user and the rendered visual perspective of the virtual environment.
[0067] In a third aspect, the present disclosure provides a computer program which, when stored on a non-volatile computer-readable medium and executed by a processing circuitry of a virtual reality system according to the aforementioned second aspect, cause the processing circuitry to perform the aforementioned method.
[0068] The present disclosure also relates to the third aspect as described above. Various embodiments and variants disclosed above, with respect to the aforementioned first aspect and the aforementioned second aspect, apply mutatis mutandis to the third aspect.
[0069] Throughout the present disclosure, the term "computer program" refers to a software product comprising program instructions that are recorded on the non-transitory machine-readable data storage medium, wherein the software product is executable upon a computing hardware for implementing the aforementioned steps executed by the processing circuitry.
[0070] Optionally, the non-volatile computer-readable medium can direct a machine (such as computer, other programmable data processing apparatus, or other devices) to function in a particular manner, such that the program instructions stored in the non-volatile computer-readable medium case a series of steps to implement the function specified in a flowchart corresponding to the instructions. Examples of the non-volatile computer readable medium includes, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, a portable computer diskette, a hard disk, a randomaccess memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, or any suitable combination thereof.
[0071] EXPERIMENTAL PART
[0072] An experimental evaluation was conducted on the aforementioned virtual reality system for controlling rendering of the virtual reality experience in the virtual environment. The virtual reality system was implemented in a real-time three-dimensional engine and executed using virtual reality device configured to provide tracked movement of a head of a user and receive motion input. Herein, hand-held controllers were provided as the user-operated control device. A total of twenty (N = 20) participants were recruited having varying levels of prior experience with the virtual reality system. During the experimental evaluation, the participants performed locomotive movements of the avatar within the virtual environment, under two rendering control conditions comprising:
[0073] a first rendering control condition in which rendering of the virtual environment was performed using the first virtual viewpoint during the locomotive movement of the avatar and, upon completion of the locomotive movement, rendering was switched from using the first virtual viewpoint to using the second virtual viewpoint, the second virtual viewpoint corresponding to the viewpoint of the avatar; and a second rendering control condition representing a prior art approach in which the position of the virtual viewpoint was continuously updated during the locomotive movement of the avatar, such that rendering ofthe virtual environment followed a positional displacement of the avatar through continuous updating of the position of the virtual viewpoint. Referring to FIG. 7A, illustrated is a box plot comparing a fast motion sickness (FMS) score, in accordance with an embodiment of the present disclosure. Herein, a vertical axis (depicted as X-axis) represents the FMS score for each participant recorded during execution of the locomotive movement. Moreover, a horizontal axis (depicted as Y-axis) represents the first rendering control condition and the second rendering control condition. The first rendering control condition exhibits a lower median FMS score relative to the second rendering control condition. Moreover, an interquartile range associated with the first rendering control condition is lower than that of the second rendering control condition. The second rendering control condition exhibits higher upper-range values and a broader distribution of the FMS score. Moreover, outlier values corresponding to elevated motion sickness are more pronounced under the second rendering control condition. Herein, statistical analysis using a Wilcoxon signed-rank test indicated a statistically significant difference between the two rendering control conditions which is (V = 31.0, p < 0.0001). The median FMS score under the first rendering control condition was 1.0, whereas the median FMS score under the second rendering control condition was 3.0. The box plot demonstrates that continuing rendering of the virtual environment using the first virtual viewpoint during the locomotive movement of the avatar and switching rendering to the second virtual viewpoint only after completion of the locomotive movement significantly reduces motion sickness relative to continuous updating of the position of the virtual viewpoint during the locomotive movement. Accordingly, the claimed control of rendering reduces visual-vestibular conflict and improves perceptual stability during execution of the locomotive movement of the avatar within the virtual environment.Referring to FIG. 7B, illustrated is a bar graph representing participant preference counts between the aforementioned two rendering control conditions. Herein, a horizontal axis (depicted as Y-axis) represents the first rendering control condition and the second rendering control condition. Moreover, a vertical axis (depicted as X-axis) represents the number of participants selecting each condition as preferred. Herein, fourteen participants out of the twenty participants selected the first rendering control condition, whereas six participants selected the second rendering control condition. Therefore, results indicate that a majority of the participants preferred the first rendering control condition .
[0074] Herein, during the experimental evaluation, the participants were required to select a preferred method for initiating the locomotive movement of the avatar within the virtual environment, wherein the method comprises:
[0075] detection of initiation of the locomotive movement based on an input signal generated by a user-operated control device; and
[0076] detection of initiation of the locomotive movement based on motiontracking data corresponding to a gesture of the user.
[0077] Referring to FIG. 8, illustrated is a bar graph representing participant preference counts for initiating the locomotive movement of the avatar within the virtual environment, in accordance with an embodiment of the present disclosure. Herein, a horizontal axis (depicted as Y-axis) represents the aforementioned methods for initiating the locative movement (namely, a dodge roll). Moreover, a button corresponds to initiation detected from the input signal generated by the user-operated control device. Furthermore, a gesture corresponds to initiation detected from the motion-tracking data representing a predefined user gesture. A vertical axis (depicted as Y-axis) represents number of participants selecting each initiation method. As shown, sevenparticipants selected the initiation method based on the input signal generated by the user-operated control device. Moreover, thirteen participants selected the initiation method based on the motion-tracking data corresponding to the gesture of the user. The results indicate that both the aforementioned methods are operable for detecting initiation of the locomotive movement of the avatar. Although a greater number of the participants selected the initiation method based on the motiontracking data.
[0078] DETAILED DESCRIPTION OF THE DRAWINGS
[0079] Referring to FIG. 1, illustrated are steps of a method for controlling rendering of a virtual reality experience in a virtual environment comprising an avatar, in accordance with an embodiment of the present disclosure. At step 102, the virtual environment is rendered using a first virtual viewpoint. At step 104, a type of movement of the avatar is detected. At step 106, if the type of movement of the avatar is a locomotive movement, rendering of the virtual environment is continued using the first virtual viewpoint during the locomotive movement. At step 108, after completion of the locomotive movement, rendering of the virtual environment is switched from using the first virtual viewpoint to using of a second virtual viewpoint. Herein, the second virtual viewpoint of the avatar corresponds to a viewpoint of the avatar after completion of the locomotive movement.
[0080] The aforementioned steps are only illustrative and other alternatives can also be provided where one or more steps are added, one or more steps are removed, or one or more steps are provided in a different sequence without departing from the scope of the claims herein.
[0081] Referring to FIG. 2, illustrated is a block diagram of a virtual reality system 200 for controlling rendering of a virtual reality experience in a virtual environment, in accordance with an embodiment of the present disclosure. The virtual reality system 200 comprises a virtual realitydevice 202. The virtual reality device 202 comprises a processing circuitry 204. Herein, the processing circuitry 204 is configured to execute the method of the aforementioned first aspect. Optionally, the virtual reality device 202 comprises a head orientation tracking means 206 to generate information associated with an orientation for rendering a first virtual viewpoint, an intermediate virtual viewpoint and / or a second virtual viewpoint.
[0082] Referring to FIGs. 3A and 3B collectively, illustrated is an exemplary implementation of a virtual reality system 300, in accordance with an embodiment of the present disclosure. In FIG. 3A, illustrated is a user 302 interacting with the virtual reality system 300. Herein, the user 302 is wearing a head orientation tracking means 304 and operating at least one user-operated control device (depicted as user-operated control devices 306A and 306B). The head-orientation tracking means 304 generate information associated with an orientation for rendering a first virtual viewpoint (shown in FIG. 3B), an intermediate virtual viewpoint and / or a second virtual viewpoint. Moreover, the useroperated control devices 306A and 306B is configured to generate input signals received by a processing circuitry (not shown, for sake of clarity) for detecting a type of movement.
[0083] In FIG. 3B, illustrated is a schematic representation of a virtual environment 308, in accordance with an embodiment of the present disclosure. Herein, the user 302 is wearing the head orientation tracking means 304. Moreover, the virtual environment 308 comprises an avatar 310 and a first virtual viewpoint 312 from which the virtual environment 308 is rendered and presented to the user 302. Moreover, the processing circuitry is configured to execute the method of the aforementioned first aspect.
[0084] Referring to FIGs. 4A, 4B, 4C and 4D collectively, illustrated is an exemplary scenario of controlling rendering of a virtual realityexperience 400 in a virtual environment 402 comprising an avatar 404, in accordance with an embodiment of the present disclosure. In FIGs. 4A, 4B, 4C and 4D collectively, a user 406 is shown wearing a head orientation tracking means 408 and interacting with the virtual reality experience 400.
[0085] Herein, FIG. 4A illustrates rendering of the virtual environment 402 using a first virtual viewpoint prior to initiation of a locomotive movement of the avatar 404. The avatar 404 is positioned at a first position within the virtual environment 402 in proximity to a virtual entity 410 (namely, a giant) and a target indicator (not shown). The user 406 is shown performing a preparatory physical movement corresponding to initiation of a locomotive movement.
[0086] Herein, FIG. 4B illustrates detecting of initiation of the locomotive movement of the avatar 404. Optionally, a gesture of the user 406 is detected from motion-tracking data. Herein, the user 406 initiates the locomotive movement by throwing both hands forward. In response to the detected initiation, the avatar 404 begins movement from the first position toward a second position within the virtual environment 402 over a first period of time. The user 406 is shown performing the physical movement corresponding to the locomotive movement of the avatar 404. Herein, rendering of the virtual environment 402 is continued using the first virtual viewpoint, and visibility of the avatar 404 within the virtual environment 402 is preserved.
[0087] Herein, FIG. 4C illustrates the avatar 404 performing the locomotive movement (namely, a dodge roll) over the first period of time within the virtual environment 402. During the locomotive movement, rendering of the virtual environment 402 is controlled to maintain visibility of the avatar 404. The user 406 continues performing a corresponding physical movement, thereby illustrating alignment between the gesture of the user 406 and movement of the avatar 404.Herein, FIG. 4D illustrates completion of the locomotive movement of the avatar 404 at the second position within the virtual environment 402. Upon completion of the locomotive movement, rendering of the virtual environment 402 is switched to a second virtual viewpoint corresponding to a viewpoint of the avatar 404. Optionally, when switching rendering from using the first virtual viewpoint to using of the virtual viewpoint an orientation associated with the first virtual viewpoint is maintained and a position associated with the first virtual viewpoint is changed to a position associated with the second virtual viewpoint. Optionally, rendering of the virtual environment 402 is switched from using the first virtual viewpoint to using of an intermediate virtual viewpoint in order to maintain a predefined spatial relationship between the intermediate virtual viewpoint and the avatar 404, during the locomotive movement. Herein, switching rendering using the intermediate virtual viewpoint is triggered based on the movement of the avatar 404 which is not visible from the first virtual viewpoint.
[0088] Referring to FIGs. 5A, 5B, 5C and 5D collectively, illustrated is another exemplary scenario for controlling rendering of a virtual reality experience in a virtual environment 502 comprising an avatar 504, in accordance with an embodiment of the present disclosure.
[0089] Herein, FIG. 5A illustrates an initial state of the virtual environment 502. The avatar 504 is at a first position within the virtual environment 502 and rendering of the virtual environment 502 is performed using a first virtual viewpoint 506. The first virtual viewpoint 506 defines the position and an orientation from which the virtual environment 502 is rendered and presented to a user during the virtual reality experience. Herein, 5B illustrates initiation of a locomotive movement of the avatar 504 within the virtual environment 502. During execution of the locomotive movement, the avatar 504 undergoes spatial displacementrelative to the virtual environment 502. Herein, rendering of the virtual environment 502 continues using the first virtual viewpoint 506 during the locomotive movement of the avatar 504.
[0090] Herein, 5C illustrates a state in which the avatar 504 has moved to a second position within the virtual environment 502 after completion of the locomotive movement. Moreover, rendering of the virtual environment 502 is switched from using the first virtual viewpoint 506 to using of a second virtual viewpoint 508. Herein, the second virtual viewpoint corresponds to a viewpoint of the avatar 504 after completion of the locomotive movement. Herein, when switching rendering from using the first viewpoint 506 to using of the second virtual viewpoint 508 the orientation associated with the first virtual viewpoint 506 is maintained.
[0091] Herein, FIG. 3 illustrates a state in which movement of the avatar 504 within the virtual environment 502 is not visible from a first virtual viewpoint 506 during execution of the locomotive movement of the avatar 504. The avatar 504 moves to a spatial region within the virtual environment 502 that is outside a viewing frustum associated with the first virtual viewpoint 506. Consequently, the locomotive movement of the avatar 504 is not visible from the first virtual viewpoint 506.
[0092] Optionally, during the locomotive movement, rendering of the virtual environment 502 is switched from using the first virtual viewpoint 506 to using of an intermediate virtual viewpoint (not shown).
[0093] Referring to FIG. 6, illustrated is an exemplary three-dimensional schematic representation of a virtual environment 602 comprising an avatar 604, in accordance with an embodiment of the present disclosure. Herein, the avatar 604 represents a user interacting with a virtual reality experience. The avatar 604 is positioned within the virtual environment 602 and represents a virtual entity through which the user performs movements. Herein, a first virtual viewpoint 606 (forexample having a coordinate (x, y, z)) represents a spatial position within the virtual environment 602 from which rendering of the virtual environment 602 is performed and presented to the user. Furthermore, an X-axis represents a horizontal direction within the virtual environment 602, an Y-axis represents another horizontal direction orthogonal to the X-axis, and Z-axis represents a vertical direction within the virtual environment 602. Herein, numerical markings along the X-axis, Y-axis and Z-axis indicate spatial coordinate values defining a location of the first virtual viewpoint 606 and the avatar within the virtual environment 602. Herein, a first viewing direction (depicted as DI) and a second viewing direction (depicted as D2) are associated with the first virtual viewpoint 606. The first viewing direction DI represents a first orientation associated with the first virtual viewpoint 606 from which rendering of the virtual environment 602 is performed. The second viewing direction D2 represents another orientation associated with the first virtual viewpoint 606. Herein, the first viewing direction DI and the second viewing direction D2 extend from the first virtual viewpoint 606 representing that the first viewing direction DI changes to the second viewing direction D2 without changing the spatial position of the first virtual viewpoint 606. Optionally, the virtual environment 602 represents a plurality of visible objects (depicted as visible objects 608A and 608B), wherein the visible objects 608A and 608B represents entities that may become visible when the first viewing direction DI changes to the second viewing direction D2.
[0094] Provided figures are merely examples, which should not unduly limit the scope of the claims herein. A person skilled in the art will recognize many variations, alternatives, and modifications of embodiments of the present disclosure.
Claims
CLAIMS1. A method for controlling rendering of a virtual reality experience (400) in a virtual environment (308, 402, 502, 602) comprising an avatar (310, 404, 504, 604), the method comprising:rendering the virtual environment using a first virtual viewpoint (312, 506, 606);detecting a type of movement of the avatar;wherein:if the type of movement of the avatar is a locomotive movement, continue rendering of the virtual environment using the first virtual viewpoint during the locomotive movement, andafter completion of the locomotive movement, rendering of the virtual environment is switched from using the first virtual viewpoint to using of a second virtual viewpoint (508), the second virtual viewpoint corresponding to a viewpoint of the avatar after completion of the locomotive movement.
2. The method according to claim 1, wherein when switching rendering from using the first virtual viewpoint (312, 506, 606) to using of the second virtual viewpoint (508) an orientation associated with the first virtual viewpoint is maintained and a position associated with the first virtual viewpoint is changed to a position associated with the second virtual viewpoint.
3. The method according to any of the preceding claims, wherein the first virtual viewpoint (312, 506, 606) corresponds to a first viewpoint of the avatar (310, 404, 504, 604) from which the avatar perceives the virtual environment (308, 402, 502, 602), and wherein the position and the orientation associated with the first virtual viewpoint are updated based on tracked movement of a virtual reality device (202) used by a user (302, 406).
4. The method according to claim3, wherein the second virtual viewpoint (508) corresponds to a second viewpoint of the avatar (310, 404, 504, 604) from which the avatar perceives the virtual environment (308, 402, 502, 602) after completion of the locomotive movement, wherein an orientation of the second virtual viewpoint corresponds to the orientation of the first virtual viewpoint (312, 506, 606).
5. The method according to any of the preceding claims, wherein the type of movement detection is initiated after detecting at least one of: (a) an input signal generated by a user-operated control device (306A, 306B),(b) a user gesture detected from motion-tracking data, and(c) a change in a state of the virtual environment (308, 402, 502, 602) triggering the movement of the avatar (310, 404, 504, 604).
6. The method according to any of the preceding claims, wherein, during the locomotive movement, rendering of the virtual environment (308, 402, 502, 602) is switched from using the first virtual viewpoint (312, 506, 606) to using of an intermediate virtual viewpoint.
7. The method according to claim 6, wherein switching rendering using the intermediate virtual viewpoint is triggered based on at least one of:(a) an elapsed time if a previous switching between virtual viewpoints exceeds a first predetermined time threshold, and(b) a distance between the avatar (310, 404, 504, 604) and the first virtual viewpoint (312, 506, 606) exceeding a predetermined distance threshold,(c) a time between start of avatar movement exceeds a second predetermined time threshold and / or(d) the avatar movement is not visible from the first virtual viewpoint.
8. The method according to any of preceding claims, wherein the movement is deemed to be the locomotive movement if the avatar (310, 404, 504, 604) moves from a first position in the virtual environment (308, 402, 502, 602) to a second position in the virtual environment faster than a first period of time.
9. The method according to any of the claims 1-7, wherein the movement is deemed to be the locomotive movement if the avatar (310, 404, 504, 604) moves from the first position in the virtual environment (308, 402, 502, 602) to the second position in the virtual environment and the distance between the first position and the second position is larger than a predetermined limit.
10. The method according to any of the claims 6, 8 and 9 wherein, during the movement, rendering of the virtual environment (308, 402, 502, 602) is switched from using of the first virtual viewpoint (312, 506, 606) to using of the intermediate virtual viewpoint when the user (302, 406) triggers a switching, by a controller input.
11. A virtual reality system (200, 300) comprising:a virtual reality device (202) comprising a processing circuitry (204), wherein the processing circuitry (204) is configured to execute the method according to any of claims 1-10.
12. The virtual reality system (200, 300) according to claim 11 wherein the virtual reality device (202) comprises a head orientation tracking means (206, 304, 408) to generate information associated with an orientation for rendering a first virtual viewpoint (312, 506, 606), an intermediate virtual viewpoint and / or a second virtual viewpoint (508).
13. A computer program comprising instructions which, when stored on a non-volatile computer-readable medium and executed by a processing circuitry (204) of the virtual reality system (200, 300)according to claim 11 or 12, cause the processing circuitry to perform the method according to any of claims 1-10.