WO2018141928A1 - Method and system for moving a virtual character in a virtual environment - Google Patents
Method and system for moving a virtual character in a virtual environment Download PDFInfo
- Publication number
- WO2018141928A1 WO2018141928A1 PCT/EP2018/052702 EP2018052702W WO2018141928A1 WO 2018141928 A1 WO2018141928 A1 WO 2018141928A1 EP 2018052702 W EP2018052702 W EP 2018052702W WO 2018141928 A1 WO2018141928 A1 WO 2018141928A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- virtual
- movement
- controller
- real
- displacement
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/80—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
- A63F2300/8082—Virtual reality
Definitions
- the present invention relates to the field of virtual reality and, in particular, the movement of a virtual character in a virtual environment following a movement of a real user.
- a virtual reality computer system that includes:
- a headset to display images of a virtual environment
- controllers equipped with actuators (button, touchpad, joystick, trigger, etc.) and
- a computer computer connected to the headphones and controllers so as to modify the displayed images according to the movement or actions of the controllers.
- Such a virtual reality computer system is known to those skilled in the art, especially in the field of video games so as to allow a real user to live an immersive experience.
- the computer calculator generates a virtual environment with which a virtual character can interact using the controllers.
- Virtual reality artificially reproduces a sensory experience, which can include sight, touch, hearing and smell.
- a virtual reality computer system comprising a multidirectional treadmill to allow the real user to perform real movement movements.
- the actual movement movements are measured by the multidirectional treadmill and then provided to the computer calculator in order to be able to modify the display of the helmet and allow a movement of the virtual character.
- a multidirectional treadmill has a very significant cost and bulk.
- Such a solution unfortunately can not suit the general public.
- patent application US2014 / 1 18244 discloses a method of moving menus onto a screen by means of a vision camera using the movement of a user's arm. This document is not about moving a virtual character into a virtual environment.
- Document US2012 / 200497 teaches a conventional joystick with a motion sensor. The invention was born in the field of video games but it goes without saying that the invention applies to any application of virtual reality, including entertainment, training and learning operators, etc.
- the invention relates to a method of moving a virtual character in a virtual environment following a movement of a real user, said virtual environment being generated by at least one computer computer and modified at least by means of a controller held in the hand by said real user, the method comprising:
- the actual movement of the controller makes it possible to mimic a real movement, which advantageously avoids any disturbance of the inner ear during a virtual movement.
- a move is immersive and allows a user to stay focused on the virtual environment without feeling discomfort.
- the movement of the controller is interpreted by the computer as a modification of the virtual environment.
- the virtual character feels like pulling the virtual scene towards him during a trip. before, which maintains the illusion of a displacement while the real user does not move his legs.
- the virtual displacement step is performed in real time following the real motion step.
- the user feels like moving in the virtual environment in a natural way.
- the actual user is equipped with a headset for displaying images of a virtual environment.
- the virtual movement speed is a function of the actual movement speed of said controller.
- the real movement is directly a function of the virtual displacement, which gives the impression to the real user that he is actually realizing the virtual displacements of the virtual character.
- the speed of virtual displacement is also a function of the intrinsic speed of the virtual character in the virtual environment.
- the real movement of the controller makes it possible to modify the intrinsic speed of the virtual character in the virtual scene.
- the virtual character may have an intrinsic virtual speed that is related to the virtual scene, for example, a slip or a drive by a virtual vehicle or another virtual character.
- the controller comprising a travel actuator
- the actual motion is measured when the travel actuator is actuated.
- this allows a virtual move only when the real user decides.
- this allows the actual user to use the controller for another function when the travel actuator is not actuated, for example, to fire a shot for an application in a first-shot video game. nobody.
- the actual movement of said controller defines a motion vector between two consecutive measurements of the position of said controller, the motion vector defining the direction and direction of the actual motion.
- the position of the controller is followed so as to interpret the desired movement by the user (direction of movement and speed of movement).
- the type of virtual displacement can thus be chosen accurately and conveniently by the actual user, which enhances immersion in the virtual environment.
- the user can walk, jump, swim, climb, etc.
- the virtual user being equipped with a headset displaying images of the virtual environment at a given display frequency, the position of the controller is measured at the display frequency of said headset.
- the vertical component of the motion vector is canceled to define the virtual displacement.
- the real user realizes a shift in a quarter circle (from the front to the bottom)
- only the horizontal component and the lateral component are taken into account to advance the virtual character.
- the virtual character is not moved up.
- Such a step allows a virtual character to move in a practical way in the horizontal plane (plane transverse to the vertical axis) without imposing on the real user to move his arm exactly in the horizontal plane, which could be tiring and away from a natural movement.
- the method comprises a step of calculating a new virtual displacement speed (V n + i) from the preceding virtual displacement speed (V n ) so as to allow a deceleration of the virtual displacement when the travel actuator is no longer operated.
- Virtual deceleration simulates the presence of gravity and friction of the air on the virtual character during a movement initiated by a real movement. The virtual character and thus braked in a similar way to a real user, which reinforces the feeling of immersion. Releasing the travel actuator allows the user to brake progressively.
- the new virtual displacement speed (V n + i) is calculated according to a first law.
- a high threshold makes it possible to set the deceleration of the virtual character according to a speed threshold which is preferably predetermined. Thus, any significant speed is limited to allow the real user to keep control of the virtual character.
- V n + 1 V n - Q (V n ) in which the function Q is an increasing function.
- Such a first law makes it possible to impose a braking which is proportional to the virtual speed. The faster the virtual character moves, the faster the deceleration will be. This allows the real user to easily control the virtual character following a virtual move at high speed. Thus, the real user can easily chain virtual movements without feeling discomfort or discomfort related to his inner ear.
- the new virtual displacement speed (V n + i) is calculated according to a second law.
- the use of a low threshold makes it possible to set the deceleration of the virtual character in order to avoid any sensation of displacement at very low speed which is not natural.
- the second law cancels the new virtual displacement speed (V n + 1).
- the slip impression of the virtual character is advantageously eliminated, which reinforces the feeling of immersion.
- the new virtual displacement speed (V n + i) is calculated according to a third law.
- the third law makes it possible to smooth the virtual displacement in order to slow down the virtual character progressively from high speed to low speed.
- the virtual character remains controllable while maintaining an immersive displacement.
- the third law is a linear deceleration law.
- the degree of deceleration is less than the first law but greater than the second law to allow a progressive deceleration.
- the virtual character is surrounded by a virtual capsule during a virtual movement, the virtual capsule being not visible in the absence of displacement.
- the virtual capsule is fixed with respect to said virtual character.
- the virtual capsule is attached to the virtual character and remains fixed relative thereto, which forms a fixed point which helps the inner ear to assimilate the fact that the body of the real user does not move then that the view of the real user perceives the movement of the virtual character. Disturbances of the inner ear are then reduced.
- the virtual capsule is in the form of a plurality of elementary zones spaced in the vertical direction.
- a virtual capsule does not obstruct the field of view of the real user but allows to remain visible regardless of where the real user directs his eyes.
- the virtual capsule does not interfere with the experience of the real user.
- each elemental area is in the form of a circle.
- Such a zone advantageously occupies a peripheral space around the user to capture his gaze independently of its direction.
- at least one elementary zone comprises a crenated portion.
- a crenate portion has the advantage of fixing the gaze, which facilitates its interpretation by the inner ear.
- a crenated portion defines a plurality of points or angles that fix the look unlike a continuous circle. The crenellated portion highlights the fact that the elementary zone does not belong to the virtual environment but is attached to the virtual character.
- the invention also relates to a method of moving a virtual character in a virtual environment following a movement of a real user, said virtual environment being generated by at least one computer and modified at least by means of a controller held in the hand by said real user, the method comprising a step of displaying a virtual capsule around the virtual character during a virtual movement in the virtual environment, the virtual capsule being not visible in the absence of displacement.
- the invention also relates to a system for moving a virtual character by a real user, the displacement system comprising:
- At least one computer computer configured to generate a virtual environment
- at least one helmet adapted to display the virtual environment generated by the computer computer
- controller connected to said computer, configured to modify the virtual environment, the controller comprising a device for detecting the position of said controller in space,
- the computer computer is configured to measure a real movement of said controller by said real user in a given direction and direction;
- the computer calculator is configured to control a virtual displacement of said virtual character in the same direction as the actual motion but in an opposite direction so as to reproduce the movement of an arm of a real user during a real movement.
- Such a displacement system allows a real user to live an immersive experience in which the movements of his virtual character are natural and comfortable since the controller simulates the movement of an arm during the displacement.
- Figure 1 is a schematic representation of a computer system for generating a virtual environment according to an embodiment of the invention
- Figure 2 is a schematic representation of the movements of the arms of a real user during a movement of the virtual character
- FIG. 3 is a schematic representation of the movement of the controller held by hand
- FIG. 4 is a curve representing the fall of the virtual speed V over time T following a virtual displacement
- Figure 5 is a schematic representation of a virtual user and a virtual capsule.
- FIG. 1 there is shown a computer system for moving a virtual character PV in a virtual environment, which will be designated later, computer system S for brevity.
- Such computer system S is configured to create an immersive virtual environment in which a real user, that is to say a human person, is represented in the virtual environment by a virtual character that can be human or otherwise. In virtual reality, the real user feels sensations through his virtual character who represents him.
- the computer system S comprises a computer computer 1, a headset 2, placed on the head of the real user UR and two controllers 3 which are respectively placed in both hands of the real user UR.
- the headset 2 comprises a display screen intended to be worn close to the eyes of the real user, the headset 2 is connected to the computer computer 1 by a wireless link, in particular, by infrared or radio link .
- the headset 2 receives images of virtual environment that is created by the calculator 1.
- the headset 2 displays images of the virtual environment at a given display frequency.
- the computer computer 1 is remote from the real user UR and is in the form of a game console or a personal computer.
- the headset 2 comprises a smart phone having a display screen forming the display screen of the headphones 2 and a printed circuit board equipped with a processor that forms the computer computer 1 of the computer system S.
- the two controllers 3 are identical. Also, for the sake of clarity and brevity, only a controller 3 will now be presented in detail. Nevertheless, it goes without saying that the controllers 3 could be different, for example, in order to perform different functions and / or to adapt to the morphology of the right hand and the left hand of the real user UR.
- the computer system S could include only a single controller 3 to allow movement.
- the use of two controllers 3 simultaneously or sequentially makes it possible to vary the type of virtual movements and thus enrich the immersion of the real user UR.
- Each controller 3 comprises actuators and a position detection device so as to detect the actual movement of the controller 3 (made by the real user UR) in real space.
- the actuators of each controller 3 are in the form of buttons, a steerable rod known as the English name "joystick”, a trigger and a touchpad. It goes without saying that the nature of the actuators may vary depending on the desired application.
- the device for detecting the position in real space is in the form of a laser scanning device, an optical tracking device (stereoscopic type or not) or the like.
- the detection device makes it possible to determine a position with a horizontal component, a vertical component and a lateral component.
- each controller 3 comprises a travel actuator 30 which can move between an activated state corresponding to a will of the real user UR and a deactivated state corresponding to a stop of the real user UR.
- the travel actuator 30 is in the form of a push button which is pressed in the activated state and released in the deactivated state.
- the computer computer 1 is configured to measure a real movement of said controller 3 by said real user UR in a given direction and direction. As will be presented hereinafter with the implementation examples, the actual movement of the controller 3 is obtained by the position device of said computer 1.
- the computer computer 1 is configured to control a virtual displacement of said virtual character in the same direction as the real movement but in the opposite direction so as to reproduce the movement of an arm of a real user UR at a time. real displacement.
- the actual movement of the controller 3 is transmitted to the computer computer 1 which consequently changes the virtual environment with respect to the virtual character.
- the computer computer 1 receives a plurality of new images in his helmet 2, which gives him the impression of moving in the virtual environment.
- the real user has the impression of pulling towards him the virtual environment that he sees through his helmet 2.
- the real movement achieved by the The actual user's UR arm holding the controller 3 is close to that of a person who is walking while walking (swaying hands).
- the displacement is natural, which reinforces the immersion.
- the real user UR uses one or more controllers 3.
- the real user UR is equipped, in each hand, with a controller 3 which comprises a travel actuator 30.
- the real user UR realizes a step of moving the controller 3 from the front to the back while keeping the travel actuator 30 pressed (state enabled).
- the travel actuator 30 is activated by the actual user UR, this determines a starting position.
- the travel actuator 30 is released (disabled state) by the actual user, this determines an arrival position from which virtual deceleration can be applied.
- the position of the controller 3 with the travel actuator 30 supported is measured so as to define a motion vector K between the previous position P n- i and the current position P n .
- the motion vector K comprises a direction, an orientation and an amplitude.
- the motion vector K is determined by the position detection device of said controller 3.
- the motion vector K has a horizontal component, a vertical component and a lateral component.
- FIG. 3 it is schematically represented the displacement of a controller 3 between a previous position P n -i and a current position P n and the resulting motion vector K.
- the motion vector K is independent of the path of the real motion in space.
- the virtual displacement is performed in the direction of the motion vector K but oriented in the opposite direction.
- the virtual character PV moves forward. That is particularly advantageous since this allows the arm of the real user to make a similar movement to that achieved during a forward march.
- the inner ear perceives a forward movement thanks to its sight and thanks to the movement of its arm. Also, the inner ear is not disturbed and the user is not subject to nausea or headache.
- the virtual speed is a function of the amplitude of the motion vector K.
- the higher the real speed the higher the virtual speed is important.
- the vertical component of the motion vector K is canceled to define the virtual displacement.
- the real user realizes a shift in a quarter circle (from the front to the bottom)
- only the horizontal component and the lateral component are taken into account to advance the virtual character.
- the virtual character is not moved up.
- Such a step allows a virtual character to move conveniently in the horizontal plane (plane transverse to the vertical axis) without forcing the real user to move his arm in the horizontal plane.
- the threshold height is determined to distinguish when the actual user is in a standing position or in a lowered position.
- the vertical component is filtered because the real user does not wish to make a vertical movement in the standing position.
- the vertical component is used for the jump and requires the user to be lowered to simulate the impulse of a jump.
- the threshold height is equal to 40 cm for a real user whose size is 1.80 m. It goes without saying that the threshold height could be determined differently, in particular, by learning or during initialization.
- the virtual displacement is also optimal since the computer computer 1 generates a display in which the virtual environment located forward is closer to the virtual user.
- the real user UR feels that he is grabbing the virtual environment in front of him with his hand and pulling it towards him (controller movement 3 from back to front during activation of the travel actuator 30).
- the immersion of the real user UR is not affected by the displacement that remains natural.
- a plurality of motion vectors K are calculated in order to periodically change the speed and the direction of the virtual movement. Freedom of movement is greatly optimized.
- a virtual movement speed V is calculated from the amplitude and the speed of the last motion vector K supplied by the controller 3.
- the virtual movement speed V is decreased so as to allow a deceleration and a stop of the virtual character PV in the virtual environment.
- a new virtual displacement velocity V n + i is calculated periodically from the previous virtual displacement velocity V n .
- Vn + 1 F (Vn)
- the initial virtual displacement speed advantageously allows initialization.
- a high threshold Si a low threshold S2.
- a single threshold or more than two thresholds could be appropriate.
- the use of two thresholds Si, S2 is a good compromise to ensure sufficient immersion without requiring significant computing power.
- the new virtual traveling speed V n + i is calculated according to a first law F1 called "high speed”. If the previous virtual movement speed V n is lower than the low predetermined threshold S2, the new virtual displacement speed V n + i is calculated according to a second law F2 called “average speed”. If the previous virtual movement speed V n is between the low predetermined threshold S2 and the predetermined high threshold Si, the new virtual displacement speed V n + i is calculated according to a third law F3 called "low speed”.
- F1 first law
- the new virtual displacement speed V n + i is calculated according to a second law F2 called “average speed”. If the previous virtual movement speed V n is between the low predetermined threshold S2 and the predetermined high threshold Si, the new virtual displacement speed V n + i is calculated according to a third law F3 called "low speed”.
- the first "high speed” law F1 is adapted to obtain a decreasing deceleration. In other words, the decrease is proportional to the value of the speed of previous virtual displacement V n.
- the first "high speed” law F1 can be stated as follows:
- the second law "low speed" F2 is adapted to cancel the speed if the latter is below the low threshold S2.
- the second law “low speed” F2 avoids the phenomenon of "slip” or “drift” at low speed PV virtual character at low speed.
- the inner ear of a human being is not adapted to perceive a movement at very low speed, which causes nausea and, moreover, impairs immersion, this displacement is not considered as real. .
- the third law "medium speed” F3 is adapted to obtain a linear deceleration. In other words, the decrease is gradual.
- the third law "medium speed” F3 can be stated as follows:
- the third law “medium speed” F3 can dampen the significant deceleration suffered by the virtual character by the first law “high speed” F1.
- Linear deceleration also makes it possible to reduce the sensation of inertia which is incoherent with that felt by the inner ear of the real user UR.
- the high threshold Si and the low threshold S2 are defined by tests according to the desired virtual application in order to obtain a compromise between the comfort of the user and the feeling of immersion.
- the high threshold Si and the low threshold S2 are equal.
- only the first law “high speed” F1 and the second law “low speed” F2 are implemented.
- a deceleration occurs only when none of the travel actuators 30 is actuated.
- the virtual displacement starts as soon as the controller 3 is moved by a real movement of the real user UR with the activated travel actuator 30.
- the release of the travel actuator 30 makes it possible to start the deceleration as presented above.
- computer computer 1 is configured to display a virtual capsule 4 around said virtual character PV during a virtual displacement as illustrated in FIG.
- Said virtual capsule 4 envelops the virtual character PV so as to be always visible by the latter during a trip.
- a virtual capsule 4 makes it possible to form a geographical reference linked to the virtual PV character and fixed with respect to said virtual character PV.
- the inner ear of the real user UR can rely on the vision of the virtual capsule 4 to apprehend a displacement in the virtual environment while keeping a fixed reference that responds to the sensation of non-displacement perceived by the body of the real user UR.
- the presence of such a virtual capsule 4 makes it possible to deceive the inner ear by giving it an impression of immobility despite a virtual displacement.
- the virtual capsule 4 is in the form of a plurality of elementary zones 40 spaced in the vertical direction as shown in Figure 5 so as to remain visible, regardless of the viewing direction of the virtual character PV.
- each elementary zone 40 is in the form of a circle in order to limit the visual impact while remaining visible.
- the elementary zones 40 make it possible to delimit an overall envelope around the virtual character PV.
- at least one elementary zone 40 has a crenated portion so as to focus the attention of the real user when in the virtual environment. Indeed, a crenellated portion has discontinuities and projections that attract the eye of the user. More preferably, the elementary zones 40 all comprise crenellated portions.
- the joint use of the displacement method and a virtual capsule 4 makes it possible to avoid any disturbance of the inner ear while maintaining a feeling of immersion.
- the running movement is performed by repeating a walking movement with a controller 3 or several controllers 3 alternately.
- the real user UR must repeat arm swings, that is to say the controller 3, to allow to advance at high speed its virtual character PV.
- the repeated cadence of the arm movements allows to advance at a high speed by avoiding the effects of deceleration.
- the jump movement is achieved by rapid movement of the controller (s) 3 downwards.
- Fast movement downwards means a real movement whose vertical speed is greater than 3 m / s, preferably greater than 4 m / s.
- the real user UR must bend to simulate the impulse of a jump and allow the virtual character PV to make a jump.
- the vertical position of the controller 3 must be less than the predetermined threshold height for the vertical component of the motion vector K to be taken into account.
- the jump movement is achieved using the two controllers 3, which allows to mimic the actual movement of the arms during a vertical jump.
- the travel actuator 30 of the controllers 3 must be activated during the jump.
- Such real movements can also be interpreted differently depending on the position of the virtual character in the virtual scene. For example, if the virtual character is in a pool filled with water of the virtual environment, the actual movement of the controllers 3 allows him to swim in said basin to move. Similarly, if the virtual character is near an upper surface that can be scaled in the virtual environment, the jump movement is interpreted as a climbing move that allows the virtual character to climb on said upper surface.
- an upper threshold height is determined in order to take into account the vertical component of the motion vector K during a climb.
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
A method for moving a virtual character in a virtual environment following a movement of a real user (UR), said virtual environment being generated by at least one computer (1) and modified at least by means of a controller (3) held in the hand of the real user (UR), the method comprising: - a step of real movement of the controller (3) by the real user (UR) in a given direction and sense and - a step of virtual movement of the virtual character in the same direction as the real movement but in an opposite sense so as to reproduce the movement of an arm of a real user (UR) during a real movement.
Description
METHODE ET SYSTEME DE DEPLACEMENT D'UN PERSONNAGE VIRTUEL DANS UN METHOD AND SYSTEM FOR MOVING A VIRTUAL CHARACTER IN A
ENVIRONNEMENT VIRTUEL VIRTUAL ENVIRONMENT
DOMAINE TECHNIQUE GENERAL ET ART ANTERIEUR GENERAL TECHNICAL FIELD AND PRIOR ART
La présente invention concerne le domaine de la réalité virtuelle et, notamment, le déplacement d'un personnage virtuel dans un environnement virtuel suite à un mouvement d'un utilisateur réel. The present invention relates to the field of virtual reality and, in particular, the movement of a virtual character in a virtual environment following a movement of a real user.
De manière connue, pour vivre une expérience virtuelle, un utilisateur réel dispose d'un système informatique de réalité virtuelle qui comprend : In known manner, to live a virtual experience, a real user has a virtual reality computer system that includes:
un casque pour afficher des images d'un environnement virtuel, a headset to display images of a virtual environment,
un ou plusieurs contrôleurs équipés d'actionneurs (bouton, pavé tactile, manette, gâchette, etc.) et one or more controllers equipped with actuators (button, touchpad, joystick, trigger, etc.) and
un calculateur informatique relié au casque et aux contrôleurs de manière à modifier les images affichées en fonction du mouvement ou des actions des contrôleurs. a computer computer connected to the headphones and controllers so as to modify the displayed images according to the movement or actions of the controllers.
Un tel système informatique de réalité virtuelle est connu de l'homme du métier, notamment, dans le domaine des jeux vidéo de manière à permettre à un utilisateur réel de vivre une expérience immersive. Le calculateur informatique génère un environnement virtuel avec lequel un personnage virtuel peut interagir à l'aide des contrôleurs. La réalité virtuelle reproduit artificiellement une expérience sensorielle, qui peut inclure la vue, le toucher, l'ouïe et l'odorat. Such a virtual reality computer system is known to those skilled in the art, especially in the field of video games so as to allow a real user to live an immersive experience. The computer calculator generates a virtual environment with which a virtual character can interact using the controllers. Virtual reality artificially reproduces a sensory experience, which can include sight, touch, hearing and smell.
Plusieurs technologies ont été développées pour permettre à un personnage virtuel de se déplacer dans un environnement virtuel. Tout d'abord, il a été proposé d'utiliser un contrôleur que l'utilisateur réel pointe dans une direction de l'environnement virtuel. Puis, l'utilisateur réel actionne un actionneur du contrôleur afin de déplacer le personnage virtuel dans un lieu différent de l'environnement virtuel selon la direction pointée, à la manière, d'une téléportation. Un tel mode de déplacement est pratique dans l'environnement virtuel mais perturbe l'oreille interne de l'utilisateur réel étant donné que ses yeux perçoivent un déplacement alors que son corps ne se déplace pas. Cette perturbation de l'oreille interne est un des principaux freins qui retardent l'expansion de la réalité virtuelle auprès du grand public. Several technologies have been developed to allow a virtual character to move in a virtual environment. First, it has been proposed to use a controller that the actual user points in a direction of the virtual environment. Then, the real user actuates an actuator of the controller to move the virtual character to a different location from the virtual environment in the direction pointed, in the manner of a teleportation. Such a mode of displacement is practical in the virtual environment but disturbs the inner ear of the real user since his eyes perceive a displacement while his body does not move. This disruption of the inner ear is one of the main obstacles to delaying the expansion of virtual reality among the general public.
Pour éliminer cet inconvénient, il a été proposé un système informatique de réalité virtuelle comportant un tapis roulant multidirectionnel afin de permettre à l'utilisateur réel de réaliser des mouvements réels de déplacement. Les mouvements réels de déplacement sont mesurés par le tapis roulant multidirectionnel puis fournis au calculateur informatique afin de pouvoir modifier
l'affichage du casque et permettre un déplacement du personnage virtuel. Bien qu'une telle solution soit séduisante, un tapis roulant multidirectionnel présente un coût et un encombrement très importants. Une telle solution ne peut malheureusement pas convenir au grand public. Aussi, il existe un besoin pour une méthode et système de déplacement d'un personnage virtuel dans un environnement virtuel qui soit confortable, naturel et pratique afin de conserver le sentiment d'immersion de l'utilisateur sans perturbation de son oreille interne. To eliminate this drawback, it has been proposed a virtual reality computer system comprising a multidirectional treadmill to allow the real user to perform real movement movements. The actual movement movements are measured by the multidirectional treadmill and then provided to the computer calculator in order to be able to modify the display of the helmet and allow a movement of the virtual character. Although such a solution is attractive, a multidirectional treadmill has a very significant cost and bulk. Such a solution unfortunately can not suit the general public. Also, there is a need for a method and system for moving a virtual character into a virtual environment that is comfortable, natural and practical to maintain the user's sense of immersion without disturbing his or her inner ear.
De manière incidente, on connaît par la demande de brevet US2014/1 18244 une méthode pour déplacer des menus sur un écran au moyen d'une caméra de vision à l'aide du mouvement du bras d'un utilisateur. Ce document en concerne pas le déplacement d'un personnage virtuel dans un environnement virtuel. Le document US2012/200497 enseigne une manette classique avec un capteur de mouvement. L'invention est née dans le domaine des jeux vidéo mais il va de soi que l'invention s'applique à toute application de la réalité virtuelle, notamment, le divertissement, la formation et l'apprentissage d'opérateurs, etc. Incidentally, patent application US2014 / 1 18244 discloses a method of moving menus onto a screen by means of a vision camera using the movement of a user's arm. This document is not about moving a virtual character into a virtual environment. Document US2012 / 200497 teaches a conventional joystick with a motion sensor. The invention was born in the field of video games but it goes without saying that the invention applies to any application of virtual reality, including entertainment, training and learning operators, etc.
PRESENTATION GENERALE DE L'INVENTION GENERAL PRESENTATION OF THE INVENTION
A cet effet, l'invention concerne une méthode de déplacement d'un personnage virtuel dans un environnement virtuel suite à un mouvement d'un utilisateur réel, ledit environnement virtuel étant généré par au moins un calculateur informatique et modifié au moins au moyen d'un contrôleur tenu à la main par ledit utilisateur réel, la méthode comprenant : For this purpose, the invention relates to a method of moving a virtual character in a virtual environment following a movement of a real user, said virtual environment being generated by at least one computer computer and modified at least by means of a controller held in the hand by said real user, the method comprising:
- une étape de mouvement réel dudit contrôleur par ledit utilisateur réel selon une direction et un sens donnés et a step of real movement of said controller by said real user in a given direction and direction and
une étape de déplacement virtuel dudit personnage virtuel selon la même direction que le mouvement réel mais dans un sens opposé de manière à reproduire le mouvement d'un bras d'un utilisateur réel lors d'un déplacement réel. a step of virtual displacement of said virtual character in the same direction as the real movement but in an opposite direction so as to reproduce the movement of an arm of a real user during a real movement.
Grâce à l'invention, le mouvement réel du contrôleur permet de mimer un déplacement réel, ce qui évite avantageusement toute perturbation de l'oreille interne lors d'un déplacement virtuel. Un tel déplacement est immersif et permet à un utilisateur de rester concentré sur l'environnement virtuel sans ressentir un inconfort. Dans le monde virtuel, le mouvement du contrôleur est interprété par le calculateur comme une modification de l'environnement virtuel. En pratique, le personnage virtuel à l'impression de tirer la scène virtuelle vers lui lors d'un déplacement en
avant, ce qui maintient l'illusion d'un déplacement alors que l'utilisateur réel ne bouge pas ses jambes. L'étape de déplacement virtuel est réalisée en temps réel suite à l'étape de mouvement réel. Ainsi, l'utilisateur à l'impression de se déplacer dans l'environnement virtuel de manière naturelle. Thanks to the invention, the actual movement of the controller makes it possible to mimic a real movement, which advantageously avoids any disturbance of the inner ear during a virtual movement. Such a move is immersive and allows a user to stay focused on the virtual environment without feeling discomfort. In the virtual world, the movement of the controller is interpreted by the computer as a modification of the virtual environment. In practice, the virtual character feels like pulling the virtual scene towards him during a trip. before, which maintains the illusion of a displacement while the real user does not move his legs. The virtual displacement step is performed in real time following the real motion step. Thus, the user feels like moving in the virtual environment in a natural way.
De préférence, l'utilisateur réel est équipé d'un casque pour afficher des images d'un environnement virtuel. Preferably, the actual user is equipped with a headset for displaying images of a virtual environment.
Selon un aspect préféré, la vitesse de déplacement virtuel est fonction de la vitesse de mouvement réel dudit contrôleur. Ainsi, le mouvement réel est directement fonction du déplacement virtuel, ce qui donne l'impression à l'utilisateur réel qu'il réalise réellement les déplacements virtuels du personnage virtuel. In a preferred aspect, the virtual movement speed is a function of the actual movement speed of said controller. Thus, the real movement is directly a function of the virtual displacement, which gives the impression to the real user that he is actually realizing the virtual displacements of the virtual character.
De manière préférée, la vitesse de déplacement virtuel est également fonction de la vitesse intrinsèque du personnage virtuel dans l'environnement virtuel. Ainsi, le mouvement réel du contrôleur permet de modifier la vitesse intrinsèque du personnage virtuel dans la scène virtuelle. En effet, le personnage virtuel peut posséder une vitesse virtuelle intrinsèque qui est liée à la scène virtuelle, par exemple, une glissade ou un entraînement par un véhicule virtuel ou un autre personnage virtuel. Preferably, the speed of virtual displacement is also a function of the intrinsic speed of the virtual character in the virtual environment. Thus, the real movement of the controller makes it possible to modify the intrinsic speed of the virtual character in the virtual scene. Indeed, the virtual character may have an intrinsic virtual speed that is related to the virtual scene, for example, a slip or a drive by a virtual vehicle or another virtual character.
De préférence, le contrôleur comprenant un actionneur de voyage, le mouvement réel est mesuré lorsque l'actionneur de voyage est actionné. Ainsi, cela permet de réaliser un déplacement virtuel uniquement lorsque l'utilisateur réel le décide. De plus, cela permet à l'utilisateur réel d'utiliser le contrôleur pour une autre fonction lorsque l'actionneur de voyage n'est pas actionné, par exemple, pour réaliser un tir pour une application dans un jeu vidéo de tir à la première personne. Preferably, the controller comprising a travel actuator, the actual motion is measured when the travel actuator is actuated. Thus, this allows a virtual move only when the real user decides. In addition, this allows the actual user to use the controller for another function when the travel actuator is not actuated, for example, to fire a shot for an application in a first-shot video game. nobody.
De préférence encore, la position du contrôleur étant mesurée de manière périodique, le mouvement réel dudit contrôleur définit un vecteur de mouvement entre deux mesures consécutives de la position dudit contrôleur, le vecteur de mouvement définissant la direction et le sens du mouvement réel. De manière avantageuse, la position du contrôleur est suivie de manière à interpréter le mouvement désiré par l'utilisateur (direction du mouvement et vitesse du mouvement). Le type de déplacement virtuel peut ainsi être choisi de manière précise et pratique par l'utilisateur réel, ce qui renforce l'immersion dans l'environnement virtuel. Selon la direction et l'environnement virtuel, l'utilisateur peut marcher, sauter, nager, grimper, etc.
De manière préférée, l'utilisateur virtuel étant équipé d'un casque affichant des images de l'environnement virtuel à une fréquence d'affichage donnée, la position du contrôleur est mesurée à la fréquence d'affichage dudit casque. De manière préférée, si la position verticale du contrôleur est supérieure à une hauteur seuil prédéterminée lors du mouvement réel, la composante verticale du vecteur de mouvement est annulée pour définir le déplacement virtuel. Autrement dit, si l'utilisateur réel réalise un déplacement en quart de cercle (de l'avant vers le bas), seule la composante horizontale et la composante latérale sont prises en compte pour faire avancer le personnage virtuel. Le personnage virtuel n'est pas déplacé vers le haut. Une telle étape permet à un personnage virtuel de se déplacer de manière pratique dans le plan horizontal (plan transversal à l'axe vertical) sans imposer à l'utilisateur réel de déplacer son bras exactement dans le plan horizontal, ce qui pourrait être fatiguant et éloigné d'un mouvement naturel. De manière préférée, la méthode comprend une étape de calcul d'une nouvelle vitesse de déplacement virtuel (Vn+i) à partir de la vitesse de déplacement virtuel précédente (Vn) de manière à permettre une décélération du déplacement virtuel lorsque l'actionneur de voyage n'est plus actionné. La décélération virtuelle permet de simuler la présence de la gravité et des frottements de l'air sur le personnage virtuel lors d'un déplacement initié par un mouvement réel. Le personnage virtuel et ainsi freiné de manière analogue à un utilisateur réel, ce qui renforce le sentiment d'immersion. Le relâchement de l'actionneur de voyage permet à l'utilisateur de freiner de manière progressive. More preferably, since the controller's position is measured periodically, the actual movement of said controller defines a motion vector between two consecutive measurements of the position of said controller, the motion vector defining the direction and direction of the actual motion. Advantageously, the position of the controller is followed so as to interpret the desired movement by the user (direction of movement and speed of movement). The type of virtual displacement can thus be chosen accurately and conveniently by the actual user, which enhances immersion in the virtual environment. Depending on the direction and the virtual environment, the user can walk, jump, swim, climb, etc. Preferably, the virtual user being equipped with a headset displaying images of the virtual environment at a given display frequency, the position of the controller is measured at the display frequency of said headset. Preferably, if the vertical position of the controller is greater than a predetermined threshold height during the actual motion, the vertical component of the motion vector is canceled to define the virtual displacement. In other words, if the real user realizes a shift in a quarter circle (from the front to the bottom), only the horizontal component and the lateral component are taken into account to advance the virtual character. The virtual character is not moved up. Such a step allows a virtual character to move in a practical way in the horizontal plane (plane transverse to the vertical axis) without imposing on the real user to move his arm exactly in the horizontal plane, which could be tiring and away from a natural movement. Preferably, the method comprises a step of calculating a new virtual displacement speed (V n + i) from the preceding virtual displacement speed (V n ) so as to allow a deceleration of the virtual displacement when the travel actuator is no longer operated. Virtual deceleration simulates the presence of gravity and friction of the air on the virtual character during a movement initiated by a real movement. The virtual character and thus braked in a similar way to a real user, which reinforces the feeling of immersion. Releasing the travel actuator allows the user to brake progressively.
De préférence, si la vitesse de déplacement virtuel précédente (Vn) est supérieure à un seuil prédéterminé haut, la nouvelle vitesse de déplacement virtuel (Vn+i) est calculée selon une première loi. L'utilisation d'un seuil haut permet de paramétrer la décélération du personnage virtuel en fonction d'un seuil de vitesse qui est, de préférence, prédéterminé. Ainsi, toute vitesse importante est limitée pour permettre à l'utilisateur réel de garder le contrôle du personnage virtuel. Preferably, if the preceding virtual displacement speed (V n ) is greater than a predetermined high threshold, the new virtual displacement speed (V n + i) is calculated according to a first law. The use of a high threshold makes it possible to set the deceleration of the virtual character according to a speed threshold which is preferably predetermined. Thus, any significant speed is limited to allow the real user to keep control of the virtual character.
De manière préférée, la première loi est du type Vn+i=Vn - Q(Vn) dans laquelle la fonction Q est une fonction croissante. Une telle première loi permet d'imposer un freinage qui est proportionnel à la vitesse virtuelle. Plus le personnage virtuel se déplace vite, plus la décélération subie sera importante. Cela permet à l'utilisateur réel de pouvoir facilement contrôler le personnage virtuel suite à un déplacement virtuel à vive allure. Ainsi, l'utilisateur réel peut aisément enchaîner des déplacements virtuels sans ressentir d'inconfort ou de gêne liée à son oreille interne.
De préférence, si la vitesse de déplacement virtuel précédente (Vn) est inférieure à un seuil prédéterminé bas, la nouvelle vitesse de déplacement virtuel (Vn+i) est calculée selon une deuxième loi. L'utilisation d'un seuil bas permet de paramétrer la décélération du personnage virtuel afin d'éviter toute sensation de déplacement à très basse vitesse qui n'est pas naturelle. De manière préférée, la deuxième loi annule la nouvelle vitesse de déplacement virtuel (Vn+i). L'impression de glissement du personnage virtuel est avantageusement éliminée, ce qui renforce le sentiment d'immersion. Preferably, the first law is of the type V n + 1 = V n - Q (V n ) in which the function Q is an increasing function. Such a first law makes it possible to impose a braking which is proportional to the virtual speed. The faster the virtual character moves, the faster the deceleration will be. This allows the real user to easily control the virtual character following a virtual move at high speed. Thus, the real user can easily chain virtual movements without feeling discomfort or discomfort related to his inner ear. Preferably, if the preceding virtual displacement speed (V n ) is lower than a predetermined low threshold, the new virtual displacement speed (V n + i) is calculated according to a second law. The use of a low threshold makes it possible to set the deceleration of the virtual character in order to avoid any sensation of displacement at very low speed which is not natural. Preferably, the second law cancels the new virtual displacement speed (V n + 1). The slip impression of the virtual character is advantageously eliminated, which reinforces the feeling of immersion.
De manière avantageuse, si la vitesse de déplacement virtuel précédente (Vn) est comprise entre le seuil prédéterminé bas et seuil prédéterminé haut, la nouvelle vitesse de déplacement virtuel (Vn+i) est calculée selon une troisième loi. Ainsi, la troisième loi permet de lisser le déplacement virtuel afin de ralentir le personnage virtuel de manière progressive de la haute vitesse à la basse vitesse. Le personnage virtuel demeure ainsi contrôlable tout en conservant un déplacement immersif. Advantageously, if the preceding virtual displacement speed (V n ) is between the predetermined low threshold and the predetermined high threshold, the new virtual displacement speed (V n + i) is calculated according to a third law. Thus, the third law makes it possible to smooth the virtual displacement in order to slow down the virtual character progressively from high speed to low speed. The virtual character remains controllable while maintaining an immersive displacement.
De manière préférée, la troisième loi est une loi de décélération linéaire. Ainsi, le degré de décélération est inférieur à la première loi mais supérieur à la deuxième loi pour permettre une décélération progressive. Preferably, the third law is a linear deceleration law. Thus, the degree of deceleration is less than the first law but greater than the second law to allow a progressive deceleration.
De préférence, le personnage virtuel est entouré d'une capsule virtuelle lors d'un déplacement virtuel, la capsule virtuelle n'étant pas visible en l'absence de déplacement. De manière préférée, la capsule virtuelle est fixe par rapport audit personnage virtuel. De manière avantageuse, la capsule virtuelle est attachée au personnage virtuel et demeure fixe par rapport à ce dernier, ce qui forme un point fixe qui aide l'oreille interne à assimiler le fait que le corps de l'utilisateur réel ne se déplace pas alors que la vue de l'utilisateur réel perçoit le déplacement du personnage virtuel. Les perturbations de l'oreille interne sont alors réduites. Preferably, the virtual character is surrounded by a virtual capsule during a virtual movement, the virtual capsule being not visible in the absence of displacement. Preferably, the virtual capsule is fixed with respect to said virtual character. Advantageously, the virtual capsule is attached to the virtual character and remains fixed relative thereto, which forms a fixed point which helps the inner ear to assimilate the fact that the body of the real user does not move then that the view of the real user perceives the movement of the virtual character. Disturbances of the inner ear are then reduced.
De préférence, la capsule virtuelle se présente sous la forme d'une pluralité de zones élémentaires espacées selon la direction verticale. Une telle capsule virtuelle n'obstrue pas le champ de vision de l'utilisateur réel mais permet de rester visible indépendamment du lieu où l'utilisateur réel oriente son regard. La capsule virtuelle n'entrave ainsi pas l'expérience de l'utilisateur réel.
De préférence, chaque zone élémentaire se présente sous la forme d'un cercle. Une telle zone occupe avantageusement un espace périphérique autour de l'utilisateur pour capter son regard indépendamment de sa direction. De préférence encore, au moins une zone élémentaire comporte une portion crénelée. Une portion crénelée présente l'avantage de fixer le regard, ce qui facilite son interprétation par l'oreille interne. Une portion crénelée permet de définir une pluralité de points ou d'angles qui fixent le regard à la différence d'un cercle continu. La portion crénelée permet de mettre en avant le fait que la zone élémentaire n'appartient pas à l'environnement virtuel mais est rattachée au personnage virtuel. Preferably, the virtual capsule is in the form of a plurality of elementary zones spaced in the vertical direction. Such a virtual capsule does not obstruct the field of view of the real user but allows to remain visible regardless of where the real user directs his eyes. The virtual capsule does not interfere with the experience of the real user. Preferably, each elemental area is in the form of a circle. Such a zone advantageously occupies a peripheral space around the user to capture his gaze independently of its direction. More preferably, at least one elementary zone comprises a crenated portion. A crenate portion has the advantage of fixing the gaze, which facilitates its interpretation by the inner ear. A crenated portion defines a plurality of points or angles that fix the look unlike a continuous circle. The crenellated portion highlights the fact that the elementary zone does not belong to the virtual environment but is attached to the virtual character.
L'invention concerne également une méthode de déplacement d'un personnage virtuel dans un environnement virtuel suite à un mouvement d'un utilisateur réel, ledit environnement virtuel étant généré par au moins un calculateur informatique et modifié au moins au moyen d'un contrôleur tenu à la main par ledit utilisateur réel, la méthode comprenant une étape d'affichage d'une capsule virtuelle autour du personnage virtuel lors d'un déplacement virtuel dans l'environnement virtuel, la capsule virtuelle n'étant pas visible en l'absence de déplacement. The invention also relates to a method of moving a virtual character in a virtual environment following a movement of a real user, said virtual environment being generated by at least one computer and modified at least by means of a controller held in the hand by said real user, the method comprising a step of displaying a virtual capsule around the virtual character during a virtual movement in the virtual environment, the virtual capsule being not visible in the absence of displacement.
L'invention concerne également un système de déplacement d'un personnage virtuel par un utilisateur réel, le système de déplacement comportant : The invention also relates to a system for moving a virtual character by a real user, the displacement system comprising:
au moins un calculateur informatique configuré pour générer un environnement virtuel, au moins un casque adapté pour afficher l'environnement virtuel généré par le calculateur informatique, at least one computer computer configured to generate a virtual environment, at least one helmet adapted to display the virtual environment generated by the computer computer,
au moins un contrôleur, relié audit calculateur informatique, configuré pour modifier l'environnement virtuel, le contrôleur comportant un dispositif de détection de la position dudit contrôleur dans l'espace, at least one controller, connected to said computer, configured to modify the virtual environment, the controller comprising a device for detecting the position of said controller in space,
le calculateur informatique est configuré pour mesurer un mouvement réel dudit contrôleur par ledit utilisateur réel selon une direction et un sens donnés ; the computer computer is configured to measure a real movement of said controller by said real user in a given direction and direction;
le calculateur informatique est configuré pour commander un déplacement virtuel dudit personnage virtuel selon la même direction que le mouvement réel mais dans un sens opposé de manière à reproduire le mouvement d'un bras d'un utilisateur réel lors d'un déplacement réel. the computer calculator is configured to control a virtual displacement of said virtual character in the same direction as the actual motion but in an opposite direction so as to reproduce the movement of an arm of a real user during a real movement.
Un tel système de déplacement permet à un utilisateur réel de vivre une expérience immersive dans laquelle les déplacements de son personnage virtuel sont naturels et confortables étant donné que le contrôleur simule le mouvement d'un bras lors du déplacement.
PRESENTATION DES FIGURES Such a displacement system allows a real user to live an immersive experience in which the movements of his virtual character are natural and comfortable since the controller simulates the movement of an arm during the displacement. PRESENTATION OF FIGURES
L'invention sera mieux comprise à la lecture de la description qui va suivre, donnée uniquement à titre d'exemple, et se référant aux dessins annexés sur lesquels : The invention will be better understood on reading the description which will follow, given solely by way of example, and referring to the appended drawings in which:
la figure 1 est une représentation schématique d'un système informatique de génération d'un environnement virtuel selon une forme de réalisation de l'invention ; Figure 1 is a schematic representation of a computer system for generating a virtual environment according to an embodiment of the invention;
la figure 2 est une représentation schématique des mouvements des bras d'un utilisateur réel lors d'un déplacement du personnage virtuel ; Figure 2 is a schematic representation of the movements of the arms of a real user during a movement of the virtual character;
- la figure 3 est une représentation schématique du mouvement du contrôleur tenu à la main ; - Figure 3 is a schematic representation of the movement of the controller held by hand;
la figure 4 est une courbe représentant la chute de la vitesse virtuelle V au cours du temps T suite à un déplacement virtuel ; et FIG. 4 is a curve representing the fall of the virtual speed V over time T following a virtual displacement; and
la figure 5 est une représentation schématique d'un utilisateur virtuel et d'une capsule virtuelle. Figure 5 is a schematic representation of a virtual user and a virtual capsule.
Il faut noter que les figures exposent l'invention de manière détaillée pour mettre en œuvre l'invention, lesdites figures pouvant bien entendu servir à mieux définir l'invention le cas échéant. DESCRIPTION D'UN OU PLUSIEURS MODES DE REALISATION ET DE MISE EN OEUVRE It should be noted that the figures disclose the invention in detail to implement the invention, said figures can of course be used to better define the invention where appropriate. DESCRIPTION OF ONE OR MORE MODES OF REALIZATION AND IMPLEMENTATION
En référence à la figure 1 , il est représenté un système informatique de déplacement d'un personnage virtuel PV dans un environnement virtuel, qui sera désigné par la suite, système informatique S par souci de concision. Un tel système informatique S est configuré pour créer un environnement virtuel immersif dans lequel un utilisateur réel, c'est-à-dire une personne humaine, est représenté dans l'environnement virtuel par un personnage virtuel pouvant être humain ou autre. Dans la réalité virtuelle, l'utilisateur réel ressent des sensations par l'intermédiaire de son personnage virtuel qui le représente. Comme illustré à la figure 1 , le système informatique S comporte un calculateur informatique 1 , un casque 2, placé sur la tête de l'utilisateur réel UR et deux contrôleurs 3 qui sont respectivement placés dans les deux mains de l'utilisateur réel UR. Referring to Figure 1, there is shown a computer system for moving a virtual character PV in a virtual environment, which will be designated later, computer system S for brevity. Such computer system S is configured to create an immersive virtual environment in which a real user, that is to say a human person, is represented in the virtual environment by a virtual character that can be human or otherwise. In virtual reality, the real user feels sensations through his virtual character who represents him. As illustrated in Figure 1, the computer system S comprises a computer computer 1, a headset 2, placed on the head of the real user UR and two controllers 3 which are respectively placed in both hands of the real user UR.
Dans cet exemple, le casque 2 comporte un écran d'affichage destiné à être porté à proximité des yeux de l'utilisateur réel, le casque 2 est relié au calculateur informatique 1 par une liaison sans fil, notamment, par infrarouge ou par liaison radio. Le casque 2 reçoit des images de
renvironnement virtuel qui sont créées par le calculateur 1 . Le casque 2 permet d'afficher des images de l'environnement virtuel à une fréquence d'affichage donnée. In this example, the headset 2 comprises a display screen intended to be worn close to the eyes of the real user, the headset 2 is connected to the computer computer 1 by a wireless link, in particular, by infrared or radio link . The headset 2 receives images of virtual environment that is created by the calculator 1. The headset 2 displays images of the virtual environment at a given display frequency.
Dans cette forme de réalisation, le calculateur informatique 1 est déporté de l'utilisateur réel UR et se présente sous la forme d'une console de jeux ou d'un ordinateur personnel. In this embodiment, the computer computer 1 is remote from the real user UR and is in the form of a game console or a personal computer.
Un tel casque 2 et un tel calculateur informatique 1 sont connus de l'homme du métier et ne seront pas présentés plus en détails par la suite. Néanmoins, il va de soi que le calculateur informatique 1 pourrait être également porté par ledit utilisateur réel UR, notamment, dans le casque 2. Selon un aspect de l'invention, le casque 2 comporte un téléphone intelligent comportant un écran d'affichage formant l'écran d'affichage du casque 2 et une carte imprimée équipée d'un processeur qui forme le calculateur informatique 1 du système informatique S. Such a helmet 2 and such a computing computer 1 are known to those skilled in the art and will not be presented in more detail later. Nevertheless, it goes without saying that the computer computer 1 could also be worn by said real user UR, especially in the headset 2. According to one aspect of the invention, the headset 2 comprises a smart phone having a display screen forming the display screen of the headphones 2 and a printed circuit board equipped with a processor that forms the computer computer 1 of the computer system S.
Dans cet exemple, les deux contrôleurs 3 sont identiques. Aussi, par souci de clarté et de concision, uniquement un contrôleur 3 va être dorénavant présenté en détails. Néanmoins, il va de soi que les contrôleurs 3 pourraient être différents, par exemple, afin de réaliser des fonctions différentes et/ou s'adapter à la morphologie de la main droite et de la main gauche de l'utilisateur réel UR. In this example, the two controllers 3 are identical. Also, for the sake of clarity and brevity, only a controller 3 will now be presented in detail. Nevertheless, it goes without saying that the controllers 3 could be different, for example, in order to perform different functions and / or to adapt to the morphology of the right hand and the left hand of the real user UR.
Il va de soi que le système informatique S pourrait ne comprendre qu'un unique contrôleur 3 pour permettre le déplacement. L'utilisation de deux contrôleurs 3 de manière simultanée ou séquentielle permet de varier le type de mouvements virtuels et ainsi enrichir l'immersion de l'utilisateur réel UR. It goes without saying that the computer system S could include only a single controller 3 to allow movement. The use of two controllers 3 simultaneously or sequentially makes it possible to vary the type of virtual movements and thus enrich the immersion of the real user UR.
Chaque contrôleur 3 comporte des actionneurs et un dispositif de détection de la position de manière à détecter le mouvement réel du contrôleur 3 (réalisé par l'utilisateur réel UR) dans l'espace réel. Dans cet exemple, les actionneurs de chaque contrôleur 3 se présentent sous la forme de boutons, d'une tige orientable connue sous sa désignation anglaise « joystick », d'une gâchette et d'un pavé tactile. Il va de soi que la nature des actionneurs peut varier en fonction de l'application souhaitée. Each controller 3 comprises actuators and a position detection device so as to detect the actual movement of the controller 3 (made by the real user UR) in real space. In this example, the actuators of each controller 3 are in the form of buttons, a steerable rod known as the English name "joystick", a trigger and a touchpad. It goes without saying that the nature of the actuators may vary depending on the desired application.
De manière préférée, le dispositif de détection de la position dans l'espace réel se présente sous la forme d'un dispositif à balayage laser, un dispositif de repérage optique (du type stéréoscopique ou non) ou analogue. De manière connue, le dispositif de détection permet de
déterminer une position avec une composante horizontale, une composante verticale et une composante latérale. Preferably, the device for detecting the position in real space is in the form of a laser scanning device, an optical tracking device (stereoscopic type or not) or the like. In known manner, the detection device makes it possible to determine a position with a horizontal component, a vertical component and a lateral component.
Dans cet exemple, chaque contrôleur 3 comporte un actionneur de voyage 30 qui peut évoluer entre un état activé correspondant à une volonté de déplacement de l'utilisateur réel UR et un état désactivé correspondant à une volonté d'arrêt de l'utilisateur réel UR. De manière préférée, l'actionneur de voyage 30 se présente sous la forme d'un bouton poussoir qui est appuyé à l'état activé et relâché à l'état désactivé. Selon l'invention, le calculateur informatique 1 est configuré pour mesurer un mouvement réel dudit contrôleur 3 par ledit utilisateur réel UR selon une direction et un sens donnés. Comme cela sera présenté par la suite avec les exemples de mise en œuvre, le mouvement réel du contrôleur 3 est obtenu par le dispositif de position dudit calculateur 1 . De plus, le calculateur informatique 1 est configuré pour commander un déplacement virtuel dudit personnage virtuel selon la même direction que le mouvement réel mais dans un sens opposé de manière à reproduire le mouvement d'un bras d'un utilisateur réel UR lors d'un déplacement réel. Autrement dit, le mouvement réel du contrôleur 3 est transmis au calculateur informatique 1 qui modifie en conséquence l'environnement virtuel par rapport au personnage virtuel. En d'autres termes, du point de vue du personnage virtuel, celui-ci reçoit une pluralité de nouvelles images dans son casque 2, ce qui lui donne l'impression de se déplacer dans l'environnement virtuel. En pratique, pour avancer dans l'environnement virtuel, l'utilisateur réel a l'impression de tirer vers lui l'environnement virtuel qu'il voit à travers son casque 2. Comme illustré à la figure 2, le mouvement réel réalisé par le bras de l'utilisateur réel UR tenant le contrôleur 3 est proche de celui d'une personne qui se déplace en marchant (balancement des mains). Le déplacement est donc naturel, ce qui renforce l'immersion. In this example, each controller 3 comprises a travel actuator 30 which can move between an activated state corresponding to a will of the real user UR and a deactivated state corresponding to a stop of the real user UR. Preferably, the travel actuator 30 is in the form of a push button which is pressed in the activated state and released in the deactivated state. According to the invention, the computer computer 1 is configured to measure a real movement of said controller 3 by said real user UR in a given direction and direction. As will be presented hereinafter with the implementation examples, the actual movement of the controller 3 is obtained by the position device of said computer 1. In addition, the computer computer 1 is configured to control a virtual displacement of said virtual character in the same direction as the real movement but in the opposite direction so as to reproduce the movement of an arm of a real user UR at a time. real displacement. In other words, the actual movement of the controller 3 is transmitted to the computer computer 1 which consequently changes the virtual environment with respect to the virtual character. In other words, from the point of view of the virtual character, it receives a plurality of new images in his helmet 2, which gives him the impression of moving in the virtual environment. In practice, to advance in the virtual environment, the real user has the impression of pulling towards him the virtual environment that he sees through his helmet 2. As illustrated in Figure 2, the real movement achieved by the The actual user's UR arm holding the controller 3 is close to that of a person who is walking while walking (swaying hands). The displacement is natural, which reinforces the immersion.
Il va être dorénavant présenté plusieurs déplacements réels d'un ou plusieurs contrôleurs 3 pour réaliser différents mouvements virtuels dans l'environnement virtuel. Comme cela sera présenté en détails par la suite, la corrélation entre les déplacements réels et les mouvements virtuels est optimale afin d'éviter tout dysfonctionnement de l'oreille interne, ce qui limite l'apparition de nausées ou de maux de tête.
A titre d'exemple, il va être présenté un mouvement de marche, de course, de saut, de nage et de grimpe. Il va de soi que ces mouvements sont donnés uniquement à titre d'exemple et que d'autres mouvements pourraient être mise en œuvre. Le mouvement de marche va être présenté de manière détaillée, notamment, en ce qui concerne les aspects relatifs à la décélération. Les autres mouvements virtuels seront présentés de manière plus concise de manière à mettre en avant les différences avec le mouvement de marche. Pour réaliser un déplacement virtuel, l'utilisateur réel UR utilise un ou plusieurs contrôleurs 3. Dans les exemples qui vont suivre, l'utilisateur réel UR est équipé, dans chaque main, d'un contrôleur 3 qui comporte un actionneur de voyage 30. It will now be presented several real displacements of one or more controllers 3 to achieve different virtual movements in the virtual environment. As will be discussed in detail later, the correlation between actual movements and virtual movements is optimal to avoid any dysfunction of the inner ear, which limits the onset of nausea or headaches. For example, it will be presented a movement of walking, running, jumping, swimming and climbing. It goes without saying that these movements are given only as an example and that other movements could be implemented. The walking movement will be presented in detail, particularly with regard to the aspects relating to deceleration. The other virtual movements will be presented in a more concise way in order to highlight the differences with the walking movement. To achieve a virtual displacement, the real user UR uses one or more controllers 3. In the examples that follow, the real user UR is equipped, in each hand, with a controller 3 which comprises a travel actuator 30.
Pour réaliser un déplacement virtuel de marche vers l'avant, l'utilisateur réel UR réalise une étape de déplacement réel dudit contrôleur 3 de l'avant vers l'arrière tout en maintenant l'actionneur de voyage 30 appuyé (état activé). Lorsque l'actionneur de voyage 30 est activé par l'utilisateur réel UR, cela détermine une position de départ. Lorsque l'actionneur de voyage 30 est relâché (état désactivé) par l'utilisateur réel, cela détermine une position d'arrivée à partir de laquelle une décélération virtuelle peut être appliquée. To perform a forward virtual travel, the real user UR realizes a step of moving the controller 3 from the front to the back while keeping the travel actuator 30 pressed (state enabled). When the travel actuator 30 is activated by the actual user UR, this determines a starting position. When the travel actuator 30 is released (disabled state) by the actual user, this determines an arrival position from which virtual deceleration can be applied.
De manière périodique, en particulier, à la fréquence d'affichage du casque 2, la position du contrôleur 3 avec l'actionneur de voyage 30 appuyé est mesurée de manière à définir un vecteur de mouvement K entre la position précédente Pn-i et la position actuelle Pn. Le vecteur de mouvement K comprend une direction, une orientation et une amplitude. Le vecteur de mouvement K est déterminé grâce au dispositif de détection de position dudit contrôleur 3. Le vecteur de mouvement K comporte une composante horizontale, une composante verticale et une composante latérale. Periodically, in particular, at the display frequency of the helmet 2, the position of the controller 3 with the travel actuator 30 supported is measured so as to define a motion vector K between the previous position P n- i and the current position P n . The motion vector K comprises a direction, an orientation and an amplitude. The motion vector K is determined by the position detection device of said controller 3. The motion vector K has a horizontal component, a vertical component and a lateral component.
En référence à la figure 3, il est représenté de manière schématique le déplacement d'un contrôleur 3 entre une position précédente Pn-i et une position actuelle Pn et le vecteur de mouvement K qui en résulte. De manière incidente, le vecteur de mouvement K est indépendant du chemin du mouvement réel dans l'espace. Referring to Figure 3, it is schematically represented the displacement of a controller 3 between a previous position P n -i and a current position P n and the resulting motion vector K. Incidentally, the motion vector K is independent of the path of the real motion in space.
De manière avantageuse, le déplacement virtuel est réalisé selon la direction du vecteur de mouvement K mais orienté dans le sens opposé. Autrement dit, lorsque le vecteur de mouvement K est orienté de l'avant vers l'arrière, le personnage virtuel PV se déplace vers l'avant. Cela est
particulièrement avantageux étant donné que cela permet au bras de l'utilisateur réel de faire un mouvement analogue à celui réalisé lors d'une marche vers l'avant. L'oreille interne perçoit un déplacement vers l'avant grâce à sa vue et grâce au mouvement de son bras. Aussi, l'oreille interne n'est pas perturbée et l'utilisateur n'est pas sujet à des nausées ou maux de tête. Advantageously, the virtual displacement is performed in the direction of the motion vector K but oriented in the opposite direction. In other words, when the motion vector K is oriented from front to back, the virtual character PV moves forward. That is particularly advantageous since this allows the arm of the real user to make a similar movement to that achieved during a forward march. The inner ear perceives a forward movement thanks to its sight and thanks to the movement of its arm. Also, the inner ear is not disturbed and the user is not subject to nausea or headache.
La vitesse virtuelle est fonction de l'amplitude du vecteur de mouvement K. Ainsi, plus la vitesse réelle est importante, plus la vitesse virtuelle est importante. The virtual speed is a function of the amplitude of the motion vector K. Thus, the higher the real speed, the higher the virtual speed is important.
De manière préférée, si la position verticale du contrôleur 3 est supérieure à une hauteur seuil prédéterminée lors du mouvement réel, la composante verticale du vecteur de mouvement K est annulée pour définir le déplacement virtuel. Autrement dit, si l'utilisateur réel réalise un déplacement en quart de cercle (de l'avant vers le bas), seule la composante horizontale et la composante latérale sont prises en compte pour faire avancer le personnage virtuel. Le personnage virtuel n'est pas déplacé vers le haut. Une telle étape permet à un personnage virtuel de se déplacer de manière pratique dans le plan horizontal (plan transversal à l'axe vertical) sans imposer à l'utilisateur réel de déplacer son bras dans le plan horizontal. Preferably, if the vertical position of the controller 3 is greater than a predetermined threshold height during the actual motion, the vertical component of the motion vector K is canceled to define the virtual displacement. In other words, if the real user realizes a shift in a quarter circle (from the front to the bottom), only the horizontal component and the lateral component are taken into account to advance the virtual character. The virtual character is not moved up. Such a step allows a virtual character to move conveniently in the horizontal plane (plane transverse to the vertical axis) without forcing the real user to move his arm in the horizontal plane.
De manière préférée, la hauteur seuil est déterminée pour distinguer lorsque l'utilisateur réel est en position debout ou en position baissée. En position debout, c'est-à-dire lorsque la position verticale du contrôleur 3 est supérieure à la hauteur seuil, la composante verticale est filtrée car l'utilisateur réel ne souhaite pas réaliser un mouvement vertical en position debout. Comme cela sera présenté par la suite, la composante verticale est utilisée pour le saut et requiert que l'utilisateur soit baissé afin de simuler l'impulsion d'un saut. En pratique, la hauteur seuil est égale à 40 cm pour un utilisateur réel dont la taille est de 1 ,80 m. Il va de soi que la hauteur de seuil pourrait être déterminée de manière différente, en particulier, par apprentissage ou lors de l'initialisation. Preferably, the threshold height is determined to distinguish when the actual user is in a standing position or in a lowered position. In the upright position, that is to say when the vertical position of the controller 3 is greater than the threshold height, the vertical component is filtered because the real user does not wish to make a vertical movement in the standing position. As will be shown later, the vertical component is used for the jump and requires the user to be lowered to simulate the impulse of a jump. In practice, the threshold height is equal to 40 cm for a real user whose size is 1.80 m. It goes without saying that the threshold height could be determined differently, in particular, by learning or during initialization.
Dans l'environnement virtuel, le déplacement virtuel est également optimal étant donné que le calculateur informatique 1 génère un affichage dans lequel l'environnement virtuel situé vers l'avant est rapproché de l'utilisateur virtuel. Autrement dit, l'utilisateur réel UR à l'impression d'attraper avec sa main l'environnement virtuel situé vers l'avant et le tirer vers lui (mouvement du contrôleur 3 de l'arrière vers l'avant lors de l'activation de l'actionneur de voyage 30). Aussi, l'immersion de l'utilisateur réel UR n'est pas affectée par le déplacement qui reste naturel.
Lorsque l'utilisateur réel UR réalise un mouvement ample avec son bras tenant le contrôleur 3, une pluralité de vecteurs de mouvement K sont calculés afin de modifier de manière périodique la vitesse et la direction du déplacement virtuel. La liberté de mouvement est grandement optimisée. In the virtual environment, the virtual displacement is also optimal since the computer computer 1 generates a display in which the virtual environment located forward is closer to the virtual user. In other words, the real user UR feels that he is grabbing the virtual environment in front of him with his hand and pulling it towards him (controller movement 3 from back to front during activation of the travel actuator 30). Also, the immersion of the real user UR is not affected by the displacement that remains natural. When the real user UR makes a large movement with his arm holding the controller 3, a plurality of motion vectors K are calculated in order to periodically change the speed and the direction of the virtual movement. Freedom of movement is greatly optimized.
Afin de conserver une immersion optimale tout en ne perturbant pas l'oreille interne, il est également important de gérer la décélération du déplacement virtuel de manière optimale. La décélération est activée dès que l'actionneur de voyage 30 est relâché. De manière préférée, une vitesse de déplacement virtuel V est calculée à partir de l'amplitude et de la vitesse du dernier vecteur de mouvement K fournis par le contrôleur 3. In order to maintain optimal immersion while not disturbing the inner ear, it is also important to manage the deceleration of the virtual displacement optimally. The deceleration is activated as soon as the travel actuator 30 is released. Preferably, a virtual movement speed V is calculated from the amplitude and the speed of the last motion vector K supplied by the controller 3.
Puis, la vitesse de déplacement virtuel V est diminuée de manière à permettre une décélération et un arrêt du personnage virtuel PV dans l'environnement virtuel. A cet effet, une nouvelle vitesse de déplacement virtuel Vn+i est calculée de manière périodique à partir de la vitesse de déplacement virtuel précédente Vn. Then, the virtual movement speed V is decreased so as to allow a deceleration and a stop of the virtual character PV in the virtual environment. For this purpose, a new virtual displacement velocity V n + i is calculated periodically from the previous virtual displacement velocity V n .
Vn+1 =F(Vn) Vn + 1 = F (Vn)
Selon un aspect préféré, la vitesse de déplacement virtuel initiale permet avantageusement l'initialisation. According to a preferred aspect, the initial virtual displacement speed advantageously allows initialization.
Dans cet exemple, on détermine plusieurs seuils de vitesse : un seuil haut Si et un seuil bas S2. Il va de soi qu'un unique seuil ou plus de deux seuils pourraient convenir. L'utilisation de deux seuils Si, S2 est un bon compromis pour assurer une immersion suffisante sans nécessiter une puissance de calcul importante. In this example, several speed thresholds are determined: a high threshold Si and a low threshold S2. It goes without saying that a single threshold or more than two thresholds could be appropriate. The use of two thresholds Si, S2 is a good compromise to ensure sufficient immersion without requiring significant computing power.
En référence à la figure 4 représentant la valeur de la vitesse de déplacement V au cours du temps T suite à un déplacement virtuel, si la vitesse de déplacement virtuel précédente Vn est supérieure au seuil prédéterminé haut Si, la nouvelle vitesse de déplacement virtuel Vn+i est calculée selon une première loi F1 dite « haute vitesse ». Si la vitesse de déplacement virtuel précédente Vn est inférieure au seuil prédéterminé bas S2, la nouvelle vitesse de déplacement virtuel Vn+i est calculée selon une deuxième loi F2 dite « moyenne vitesse ». Si la vitesse de déplacement virtuel précédente Vn est comprise entre le seuil prédéterminé bas S2 et le seuil prédéterminé haut Si, la nouvelle vitesse de déplacement virtuel Vn+i est calculée selon une troisième loi F3 dite « basse vitesse ». Ainsi, les différentes lois permettent de déterminer une
décélération à haute vitesse, une décélération à moyenne vitesse et une décélération à basse vitesse. With reference to FIG. 4 representing the value of the displacement velocity V during time T following a virtual displacement, if the preceding virtual traveling speed V n is greater than the predetermined high threshold Si, the new virtual traveling speed V n + i is calculated according to a first law F1 called "high speed". If the previous virtual movement speed V n is lower than the low predetermined threshold S2, the new virtual displacement speed V n + i is calculated according to a second law F2 called "average speed". If the previous virtual movement speed V n is between the low predetermined threshold S2 and the predetermined high threshold Si, the new virtual displacement speed V n + i is calculated according to a third law F3 called "low speed". Thus, the various laws make it possible to determine a high speed deceleration, medium speed deceleration and low speed deceleration.
Dans cet exemple, la première loi « haute vitesse » F1 est adaptée pour obtenir une décélération décroissante. Autrement dit, la diminution est proportionnelle à la valeur de la vitesse de déplacement virtuel précédent Vn. A titre d'exemple, la première loi « haute vitesse » F1 peut s'énoncer comme suit : In this example, the first "high speed" law F1 is adapted to obtain a decreasing deceleration. In other words, the decrease is proportional to the value of the speed of previous virtual displacement V n. By way of example, the first "high speed" law F1 can be stated as follows:
(F1 ) Vn+1 =Vn - Q(Vn) dans laquelle la fonction Q est une fonction croissante Une telle première loi « haute vitesse » F1 permet de diminuer la décélération de manière progressive afin de permettre à l'oreille interne de conserver un repère dans l'espace malgré la sensation de vitesse. La fonction Q est choisie en fonction de l'application virtuelle désirée. (F1) Vn + 1 = Vn-Q (Vn) in which the function Q is an increasing function Such a first "high speed" law F1 makes it possible to decrease the deceleration in a progressive manner so as to allow the inner ear to maintain a landmark in space despite the sensation of speed. The Q function is chosen according to the desired virtual application.
Dans cet exemple, la deuxième loi « basse vitesse » F2 est adaptée pour annuler la vitesse si cette dernière est inférieure au seuil bas S2.In this example, the second law "low speed" F2 is adapted to cancel the speed if the latter is below the low threshold S2.
La deuxième loi « basse vitesse » F2 permet d'éviter le phénomène de « glissement » ou de « dérive » à basse vitesse du personnage virtuel PV à basse vitesse. En effet, l'oreille interne d'un être humain n'est pas adaptée pour percevoir un mouvement à très basse vitesse, ce qui entraîne des nausées et, par ailleurs nuit à l'immersion, ce déplacement n'étant pas considéré comme réel. The second law "low speed" F2 avoids the phenomenon of "slip" or "drift" at low speed PV virtual character at low speed. In fact, the inner ear of a human being is not adapted to perceive a movement at very low speed, which causes nausea and, moreover, impairs immersion, this displacement is not considered as real. .
Dans cet exemple, la troisième loi « moyenne vitesse » F3 est adaptée pour obtenir une décélération linéaire. Autrement dit, la diminution est progressive. A titre d'exemple, la troisième loi « moyenne vitesse » F3 peut s'énoncer comme suit : In this example, the third law "medium speed" F3 is adapted to obtain a linear deceleration. In other words, the decrease is gradual. By way of example, the third law "medium speed" F3 can be stated as follows:
(F3) Vn+i=Vn - Y dans laquelle Y est une valeur constante. (F3) V n + 1 = V n - Y where Y is a constant value.
La troisième loi « moyenne vitesse » F3 permet d'amortir la décélération importante subie par le personnage virtuel par la première loi « haute vitesse » F1. Une décélération linéaire permet en outre de réduire la sensation d'inertie qui est incohérente avec celle ressentie par l'oreille interne de l'utilisateur réel UR. The third law "medium speed" F3 can dampen the significant deceleration suffered by the virtual character by the first law "high speed" F1. Linear deceleration also makes it possible to reduce the sensation of inertia which is incoherent with that felt by the inner ear of the real user UR.
A titre d'exemple, le seuil haut Si et le seuil bas S2 sont définis par essais en fonction de l'application virtuelle souhaitée afin d'obtenir un compromis entre le confort de l'utilisateur et le sentiment d'immersion.
Selon une forme de réalisation de l'invention, le seuil haut Si et le seuil bas S2 Sont égaux. Aussi, seules la première loi « haute vitesse » F1 et la deuxième loi « basse vitesse » F2 sont mises en œuvre. For example, the high threshold Si and the low threshold S2 are defined by tests according to the desired virtual application in order to obtain a compromise between the comfort of the user and the feeling of immersion. According to one embodiment of the invention, the high threshold Si and the low threshold S2 are equal. Also, only the first law "high speed" F1 and the second law "low speed" F2 are implemented.
Selon une autre forme de réalisation, lorsqu'un mouvement réel est réalisé par le déplacement d'un ou plusieurs contrôleurs 3, une décélération ne survient que lorsqu'aucun des actionneurs de voyage 30 est actionné. De manière préférée, le déplacement virtuel débute dès que le contrôleur 3 est déplacé par un mouvement réel de l'utilisateur réel UR avec l'actionneur de voyage 30 activé. Autrement dit, il n'est pas nécessaire de relâcher l'actionneur de voyage 30 pour débuter un déplacement virtuel. Cela est particulièrement avantageux étant donné que le mouvement du personnage virtuel PV est réalisé en temps réel, ce qui facilite l'immersion. Le relâchement de l'actionneur de voyage 30 permet de débuter la décélération telle que présentée précédemment. According to another embodiment, when a real movement is achieved by moving one or more controllers 3, a deceleration occurs only when none of the travel actuators 30 is actuated. Preferably, the virtual displacement starts as soon as the controller 3 is moved by a real movement of the real user UR with the activated travel actuator 30. In other words, it is not necessary to release the travel actuator 30 to begin a virtual move. This is particularly advantageous since the movement of the virtual PV character is realized in real time, which facilitates immersion. The release of the travel actuator 30 makes it possible to start the deceleration as presented above.
Afin d'éviter toute perturbation de l'oreille interne, la calculateur informatique 1 est configuré pour afficher une capsule virtuelle 4 autour dudit personnage virtuel PV lors d'un déplacement virtuel comme illustré à la figure 5. In order to avoid any disturbance of the inner ear, computer computer 1 is configured to display a virtual capsule 4 around said virtual character PV during a virtual displacement as illustrated in FIG.
Ladite capsule virtuelle 4 enveloppe le personnage virtuel PV de manière à être toujours visible par ce dernier lors d'un déplacement. En effet, une telle capsule virtuelle 4 permet de former un repère géographique lié au personnage virtuel PV et fixe par rapport audit personnage virtuel PV. Ainsi, l'oreille interne de l'utilisateur réel UR peut s'appuyer sur la vision de la capsule virtuelle 4 pour appréhender un déplacement dans l'environnement virtuel tout en gardant un repère fixe qui répond à la sensation de non-déplacement perçu par le corps de l'utilisateur réel UR. La présence d'une telle capsule virtuelle 4 permet de tromper l'oreille interne en lui donnant une impression d'immobilisme malgré un déplacement virtuel. De manière préférée, la capsule virtuelle 4 se présente sous la forme d'une pluralité de zones élémentaires 40 espacées selon la direction verticale comme illustré à la figure 5 de manière à demeurer visible, indépendamment de la direction du regard du personnage virtuel PV. De manière préférée, chaque zone élémentaire 40 se présente sous la forme d'un cercle afin de limiter l'impact visuel tout en restant visible.
Ainsi, les zones élémentaires 40 permettent de délimiter une enveloppe globale autour du personnage virtuel PV. De préférence, au moins une zone élémentaire 40 comporte une portion crénelée de manière à fixer l'attention de l'utilisateur réel lorsqu'il est dans l'environnement virtuel. En effet, une portion crénelée comporte des discontinuités et saillies qui attirent le regard de l'utilisateur. De préférence encore, les zones élémentaires 40 comportent toutes des portions crénelées. Said virtual capsule 4 envelops the virtual character PV so as to be always visible by the latter during a trip. In fact, such a virtual capsule 4 makes it possible to form a geographical reference linked to the virtual PV character and fixed with respect to said virtual character PV. Thus, the inner ear of the real user UR can rely on the vision of the virtual capsule 4 to apprehend a displacement in the virtual environment while keeping a fixed reference that responds to the sensation of non-displacement perceived by the body of the real user UR. The presence of such a virtual capsule 4 makes it possible to deceive the inner ear by giving it an impression of immobility despite a virtual displacement. Preferably, the virtual capsule 4 is in the form of a plurality of elementary zones 40 spaced in the vertical direction as shown in Figure 5 so as to remain visible, regardless of the viewing direction of the virtual character PV. Preferably, each elementary zone 40 is in the form of a circle in order to limit the visual impact while remaining visible. Thus, the elementary zones 40 make it possible to delimit an overall envelope around the virtual character PV. Preferably, at least one elementary zone 40 has a crenated portion so as to focus the attention of the real user when in the virtual environment. Indeed, a crenellated portion has discontinuities and projections that attract the eye of the user. More preferably, the elementary zones 40 all comprise crenellated portions.
L'utilisation conjointe de la méthode de déplacement et d'une capsule virtuelle 4 permet d'éviter toute perturbation de l'oreille interne tout en conservant un sentiment d'immersion important. The joint use of the displacement method and a virtual capsule 4 makes it possible to avoid any disturbance of the inner ear while maintaining a feeling of immersion.
De manière préférée, le mouvement de course est réalisé par répétition d'un mouvement de marche avec un contrôleur 3 ou plusieurs contrôleurs 3 de manière alternée. A la manière d'une course réelle, l'utilisateur réel UR doit répéter des balancements de bras, c'est-à-dire du contrôleur 3, pour permettre de faire avancer à grande vitesse son personnage virtuel PV. La cadence répétée des mouvements de bras permet d'avancer à une vitesse élevée en s'affranchissant des effets de la décélération. In a preferred manner, the running movement is performed by repeating a walking movement with a controller 3 or several controllers 3 alternately. In the manner of a real race, the real user UR must repeat arm swings, that is to say the controller 3, to allow to advance at high speed its virtual character PV. The repeated cadence of the arm movements allows to advance at a high speed by avoiding the effects of deceleration.
De manière analogue, le mouvement de saut est réalisé par un mouvement rapide du ou des contrôleurs 3 vers le bas. On entend par mouvement rapide vers le bas, un mouvement réel dont la vitesse verticale est supérieure à 3 m/s, de préférence, supérieure à 4 m/s. Dans cet exemple, l'utilisateur réel UR doit se baisser pour simuler l'impulsion d'un saut et permettre au personnage virtuel PV de réaliser un saut. Autrement dit, la position verticale du contrôleur 3 doit être inférieure à la hauteur seuil prédéterminée pour que la composante verticale du vecteur de mouvement K soit prise en compte. Similarly, the jump movement is achieved by rapid movement of the controller (s) 3 downwards. Fast movement downwards means a real movement whose vertical speed is greater than 3 m / s, preferably greater than 4 m / s. In this example, the real user UR must bend to simulate the impulse of a jump and allow the virtual character PV to make a jump. In other words, the vertical position of the controller 3 must be less than the predetermined threshold height for the vertical component of the motion vector K to be taken into account.
De préférence, le mouvement de saut est réalisé à l'aide des deux contrôleurs 3, ce qui permet de mimer le mouvement réel des bras lors d'un saut vertical. De manière analogue à précédemment, l'actionneur de voyage 30 des contrôleurs 3 doit être activé lors du saut. De tels mouvements réels peuvent être également interprétés de manière différente en fonction de la position du personnage virtuel dans la scène virtuelle. A titre d'exemple, si le personnage virtuel se situe dans un bassin rempli d'eau de l'environnement virtuel, le mouvement réel des contrôleurs 3 lui permet de nager dans ledit bassin afin de se déplacer. De même, si le personnage virtuel se situe à proximité d'une surface supérieure pouvant être escaladée dans l'environnement virtuel, le mouvement de saut est interprété comme un
déplacement d'escalade qui permet au personnage virtuel de grimper sur ladite surface supérieure. De manière préférée, on détermine une hauteur seuil supérieure afin de pouvoir prendre en compte la composante verticale du vecteur de mouvement K lors d'une grimpe. Comme indiqué précédemment, l'invention est née dans le domaine des jeux vidéo mais il va de soi que l'invention s'applique à toute application de la réalité virtuelle, notamment, le divertissement, la formation et l'apprentissage d'opérateurs, etc.
Preferably, the jump movement is achieved using the two controllers 3, which allows to mimic the actual movement of the arms during a vertical jump. In a similar manner to previously, the travel actuator 30 of the controllers 3 must be activated during the jump. Such real movements can also be interpreted differently depending on the position of the virtual character in the virtual scene. For example, if the virtual character is in a pool filled with water of the virtual environment, the actual movement of the controllers 3 allows him to swim in said basin to move. Similarly, if the virtual character is near an upper surface that can be scaled in the virtual environment, the jump movement is interpreted as a climbing move that allows the virtual character to climb on said upper surface. Preferably, an upper threshold height is determined in order to take into account the vertical component of the motion vector K during a climb. As indicated above, the invention was born in the field of video games but it goes without saying that the invention applies to any application of virtual reality, including entertainment, training and operator training, etc.
Claims
1. Méthode de déplacement d'un personnage virtuel (PV) dans un environnement virtuel suite à un mouvement d'un utilisateur réel (UR), ledit environnement virtuel étant généré par au moins un calculateur informatique (1 ) et modifié au moins au moyen d'un contrôleur (3) tenu à la main par ledit utilisateur réel (UR), la méthode comprenant : A method of moving a virtual character (PV) in a virtual environment following a movement of a real user (UR), said virtual environment being generated by at least one computing computer (1) and modified at least by means of a controller (3) held in the hand by said real user (UR), the method comprising:
- une étape de mouvement réel dudit contrôleur (3) par ledit utilisateur réel (UR) selon une direction et un sens donnés et a step of real movement of said controller (3) by said real user (UR) in a given direction and direction and
- une étape de déplacement virtuel dudit personnage virtuel (PV) selon la même direction que le mouvement réel mais dans un sens opposé de manière à reproduire le mouvement d'un bras d'un utilisateur réel (UR) lors d'un déplacement réel. a step of virtual displacement of said virtual character (PV) in the same direction as the real movement but in an opposite direction so as to reproduce the movement of an arm of a real user (UR) during a real movement.
2. Méthode selon la revendication 1 , dans laquelle la vitesse de déplacement virtuel est fonction de la vitesse de mouvement réel dudit contrôleur (3). 2. Method according to claim 1, wherein the virtual displacement speed is a function of the actual movement speed of said controller (3).
3. Méthode selon l'une des revendications précédentes, dans laquelle, le contrôleur (3) comprenant un actionneur de voyage (30), le mouvement réel est mesuré lorsque l'actionneur de voyage (30) est actionné. 3. Method according to one of the preceding claims, wherein, the controller (3) comprising a travel actuator (30), the actual motion is measured when the travel actuator (30) is actuated.
4. Méthode selon la revendication 3, dans laquelle, la position du contrôleur (3) étant mesurée de manière périodique, le mouvement réel dudit contrôleur (3) définit un vecteur de mouvement (K) entre deux mesures consécutives de la position dudit contrôleur (3), le vecteur de mouvement (K) définissant la direction et le sens du mouvement réel. 4. Method according to claim 3, wherein, the position of the controller (3) being measured periodically, the actual movement of said controller (3) defines a motion vector (K) between two consecutive measurements of the position of said controller ( 3), the motion vector (K) defining the direction and direction of the actual motion.
5. Méthode selon l'une des revendications 3 à 4, comprenant une étape de calcul d'une nouvelle vitesse de déplacement virtuel (Vn+i) à partir de la vitesse de déplacement virtuel précédente (Vn) de manière à permettre une décélération du déplacement virtuel lorsque l'actionneur de voyage (30) n'est plus actionné. 5. Method according to one of claims 3 to 4, comprising a step of calculating a new virtual movement speed (V n + i) from the previous virtual displacement speed (V n ) so as to allow a decelerating the virtual displacement when the travel actuator (30) is no longer actuated.
6. Méthode selon la revendication 5, dans laquelle, si la vitesse de déplacement virtuel précédente (Vn) est supérieure à un seuil prédéterminé haut (Si), la nouvelle vitesse de déplacement virtuel (Vn+i) est calculée selon une première loi (F1 ).
The method of claim 5, wherein, if the preceding virtual traveling speed (V n ) is greater than a predetermined high threshold (Si), the new virtual traveling speed (V n + i) is calculated according to a first law (F1).
7. Méthode selon l'une des revendications 5 à 6, dans laquelle, si la vitesse de déplacement virtuel précédente (Vn) est inférieure à un seuil prédéterminé bas (S2), la nouvelle vitesse de déplacement virtuel (Vn+i) est calculée selon une deuxième loi (F2). 7. Method according to one of claims 5 to 6, wherein, if the preceding virtual movement speed (V n ) is less than a predetermined low threshold (S2), the new virtual displacement speed (V n + i) is calculated according to a second law (F2).
8. Méthode selon l'une des revendications 1 à 7, dans laquelle le personnage virtuel (PV) est entouré d'une capsule virtuelle (4) lors d'un déplacement virtuel, la capsule virtuelle n'étant pas visible en l'absence de déplacement. 8. Method according to one of claims 1 to 7, wherein the virtual character (PV) is surrounded by a virtual capsule (4) during a virtual displacement, the virtual capsule is not visible in the absence of displacement.
9. Méthode selon la revendication 8, dans laquelle la capsule virtuelle (4) est fixe par rapport audit personnage virtuel (PV). 9. The method of claim 8, wherein the virtual capsule (4) is fixed with respect to said virtual character (PV).
10. Système de déplacement d'un personnage virtuel (PV) par un utilisateur réel (UR), le système de déplacement (S) comportant : 10. System for moving a virtual character (PV) by a real user (UR), the displacement system (S) comprising:
- au moins un calculateur informatique (1 ) configuré pour générer un environnement virtuel, at least one computer computer (1) configured to generate a virtual environment,
- au moins un casque (2) adapté pour afficher l'environnement virtuel généré par le calculateur informatique (1 ), at least one helmet (2) adapted to display the virtual environment generated by the computer computer (1),
- au moins un contrôleur (3), relié audit calculateur informatique (1 ), configuré pour modifier l'environnement virtuel, le contrôleur (3) comportant un dispositif de détection de la position dudit contrôleur (3) dans l'espace, at least one controller (3), connected to said computer (1), configured to modify the virtual environment, the controller (3) comprising a device for detecting the position of said controller (3) in space,
- le calculateur informatique (1 ) est configuré pour mesurer un mouvement réel dudit contrôleur (3) par ledit utilisateur réel (UR) selon une direction et un sens donnés ; the computer computer (1) is configured to measure a real movement of said controller (3) by said real user (UR) in a given direction and direction;
- le calculateur informatique (1 ) est configuré pour commander un déplacement virtuel dudit personnage virtuel (PV) selon la même direction que le mouvement réel mais dans un sens opposé de manière à reproduire le mouvement d'un bras d'un utilisateur réel (UR) lors d'un déplacement réel.
the computer computer (1) is configured to control a virtual displacement of said virtual character (PV) in the same direction as the real movement but in an opposite direction so as to reproduce the movement of an arm of a real user (UR) ) during a real move.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1750969 | 2017-02-06 | ||
FR1750969A FR3062731B1 (en) | 2017-02-06 | 2017-02-06 | METHOD AND SYSTEM FOR MOVING A VIRTUAL CHARACTER IN A VIRTUAL ENVIRONMENT |
US201762455928P | 2017-02-07 | 2017-02-07 | |
US62/455,928 | 2017-02-07 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018141928A1 true WO2018141928A1 (en) | 2018-08-09 |
Family
ID=58992985
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2018/052702 WO2018141928A1 (en) | 2017-02-06 | 2018-02-02 | Method and system for moving a virtual character in a virtual environment |
Country Status (2)
Country | Link |
---|---|
FR (1) | FR3062731B1 (en) |
WO (1) | WO2018141928A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112000228A (en) * | 2020-09-04 | 2020-11-27 | 李欢 | Method and system for controlling movement in immersive virtual reality |
CN116501175A (en) * | 2023-06-25 | 2023-07-28 | 江西格如灵科技股份有限公司 | Virtual character moving method, device, computer equipment and medium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120200497A1 (en) | 2011-02-04 | 2012-08-09 | Invensense, Inc. | High fidelity remote contoller device for digital living room |
US20140118244A1 (en) | 2012-10-25 | 2014-05-01 | Pointgrab Ltd. | Control of a device by movement path of a hand |
-
2017
- 2017-02-06 FR FR1750969A patent/FR3062731B1/en not_active Expired - Fee Related
-
2018
- 2018-02-02 WO PCT/EP2018/052702 patent/WO2018141928A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120200497A1 (en) | 2011-02-04 | 2012-08-09 | Invensense, Inc. | High fidelity remote contoller device for digital living room |
US20140118244A1 (en) | 2012-10-25 | 2014-05-01 | Pointgrab Ltd. | Control of a device by movement path of a hand |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112000228A (en) * | 2020-09-04 | 2020-11-27 | 李欢 | Method and system for controlling movement in immersive virtual reality |
CN112000228B (en) * | 2020-09-04 | 2024-04-05 | 河北大学 | Method and system for controlling movement in immersive virtual reality |
CN116501175A (en) * | 2023-06-25 | 2023-07-28 | 江西格如灵科技股份有限公司 | Virtual character moving method, device, computer equipment and medium |
CN116501175B (en) * | 2023-06-25 | 2023-09-22 | 江西格如灵科技股份有限公司 | Virtual character moving method, device, computer equipment and medium |
Also Published As
Publication number | Publication date |
---|---|
FR3062731B1 (en) | 2019-03-15 |
FR3062731A1 (en) | 2018-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10943382B2 (en) | Virtual reality | |
US10621792B2 (en) | Focus control for virtual objects in augmented reality (AR) and virtual reality (VR) displays | |
KR102664868B1 (en) | Light projector using an acousto-optical control device | |
US10438410B2 (en) | Text enhancements for head-mounted displays | |
JP2020109522A (en) | Current drain reduction in ar/vr display systems | |
FR2957266A1 (en) | METHOD AND APPARATUS FOR REMOTE CONTROL OF A DRONE, IN PARTICULAR A ROTARY SAILING DRONE. | |
JP7177054B2 (en) | Head-mounted display with user head rotation guide | |
RU2017102195A (en) | LOOKING BASED PLACEMENT OF OBJECTS IN A VIRTUAL REALITY | |
EP2478513B1 (en) | Method for simulating specific movements by haptic feedback, and device implementing the method | |
JP2018517159A (en) | Active shutter head mounted display | |
EP3714313B1 (en) | Mitigating binocular rivalry in near-eye displays | |
WO2018141928A1 (en) | Method and system for moving a virtual character in a virtual environment | |
US20180359463A1 (en) | Information processing device, information processing method, and program | |
US20180364488A1 (en) | Display device | |
KR102205691B1 (en) | Method and apparatus for motion sickness decrease in vr motion platform | |
US20240184105A1 (en) | Position tracking systems and methods for head-mounted display systems | |
JP2023536064A (en) | Eye Tracking Using Alternate Sampling | |
US10831266B2 (en) | Personalized adaptation of virtual reality content based on eye strain context | |
WO2018115840A1 (en) | Virtual reality content control | |
WO2017149254A1 (en) | Man/machine interface with 3d graphics applications | |
FR3120719A1 (en) | Rotational navigation in virtual environment with visual reference | |
WO2023147996A1 (en) | Orientation assistance system comprising means for acquiring a real or virtual visual environment, non-visual human-machine interface means and means for processing the digital representation of said visual environment. | |
FR2957265A1 (en) | Method for implementing remote control apparatus e.g. Iphone type cellular telephone used to remotely control helicopter, involves activating control command based on analysis results | |
WO2024194573A1 (en) | System and method for reducing cybersickness | |
FR3020492A1 (en) | METHOD FOR DETERMINING HANDLE TORQUE, PROGRAM FOR IMPLEMENTING SAID METHOD, AND BIKE STIMULATOR |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18706654 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18706654 Country of ref document: EP Kind code of ref document: A1 |