Method for controlling a sight extension using a joystick and corresponding joystick
Abstract
Method for controlling an aiming cursor by means of a game actuating device (10) equipped with at least one direction control element (12) arranged to occupy a rest position (X0, Y0) and move at least along an axis (X, Y), and having a dead zone (ZM) defined around the rest position, comprising the following steps: detecting a position (XJ, YJ) of the element along the axis; determine the speed (VJ) moving the element based on the history of detected positions; compare said speed with a speed threshold (VREF) predetermined; when the speed is lower than the predetermined threshold, transmit detected position data only outside the dead zone and transmit a predefined value in place of the positions detected in the dead zone, and when the speed is higher than the predetermined threshold, transmit data of all detected positions.

Term
9.3 yearsto projected expiry
Projected expiry 3 January 2036, counted from filing; an application has no term until it is granted.
- Priority
- Filed
- Published
- Today
- Projected expiry
10 claims: 3 independent, 7 dependent
- 1Method for controlling an aiming cursor on a screen by means of a game actuating device (10) equipped with at least one direction control element (12) arranged to occupy a rest position (X 0 , Y 0 ) and move at least along an axis (X, Y), and having a dead zone (ZM) defined by a predetermined movement of the direction control element along said at least one axis on either side of the rest position, comprising the following steps:- detect a position (X J , Y J ) of the direction control element along said at least one axis, - determine the speed (V J ) movement of the steering control element based on a history of the positions detected, - compare the speed of movement of the steering control element with a speed threshold (V REF ) predetermined, - when the speed of movement of the control element is lower than the predetermined speed threshold, transmit position data corresponding to the detected position outside the dead zone and transmit a predefined value (X 0 , Y 0 ) in the dead zone, and - when the speed of movement of the control element is greater than the predetermined speed threshold, transmitting position data corresponding to the detected position, including in the dead zone, and characterized in that it also includes the step of: - transmit position data corresponding to a detected position in the dead zone, weighted by a coefficient (K;k (t)) of predetermined sensitivity, when the speed of movement of the control element decreases and becomes below the threshold predetermined speed.
- 5Method for controlling an aiming cursor according to one of claims 1 to 4, further comprising a step consisting in:- smooth the new detected position of the joystick compared to a history of the previous positions, when moving from a position located in the dead zone to a position outside the dead zone in order to erase a jump in position linked to the exit from the dead zone.
- 8Method for controlling an aiming cursor according to one of the preceding claims, in which the direction control element exhibits, during a stop movement along said at least one axis, a maximum inclination (I MAX ) relative to the rest position, the method further comprising a step consisting in:- set a percentage of the maximum tilt to define the dead zone around the rest position.
- 9Method for controlling an aiming cursor according to one of Claims 1 to 7, further comprising the steps consisting in:- enter a value of radius allowing to define a disc by projection on the plane of the spherical movement of the direction control element and - use the defined projection disk to determine the dead zone.
- 10Game actuation device (10) comprising:- at least one direction control element (12) arranged to occupy a rest position (X 0 , Y 0 ) and move at least along an axis (X, Y) and having a dead zone (ZM) defined by a predetermined movement along the axis on either side of the rest position;- a position sensor (14) arranged to detect a position (X J , Y J ) of the direction control element along said at least one axis;- processing means (16) arranged to determine the speed (V J ) of movement of the direction control element based on the successive positions detected and to compare the speed of movement of the direction control element with a speed threshold (V REF ) predetermined;- communication means (18) arranged to transmit ∘ when the speed of movement of the control element is lower than the predetermined speed threshold, position data corresponding to the position detected outside the dead zone and a predefined value in the dead zone, and ∘ when the speed of movement of the control element is greater than the predetermined speed threshold, position data corresponding to the detected position, including in the dead zone characterized in that the communication means are further arranged to transmit position data corresponding to a detected position in the dead zone, weighted by a predetermined sensitivity coefficient, when the speed of movement of the control element decreases and becomes below the threshold of predetermined speed.
Independent claims5
65 paragraphs, as filed
0001The present invention relates generally to a method of controlling a game actuating device provided with at least one direction control element, such as for example a game controller provided with one or more directional sticks or even a joystick or joystick type joystick. The invention relates more particularly to the method of controlling an aiming cursor by means of the direction control element in order to adapt this type of game actuation device, ordinarily intended for use for a console. video games, for use on computer games. The invention also relates to the resulting game actuating device.
0002In the remainder of this description, the expressions “rest position” and “dead zone” will be used in connection with the direction control element, namely in particular a joystick lever or a joystick stick. "rest position" means the position taken by the direction control element when it is not actuated by the user. The term “dead zone” is understood to mean a zone defined around the rest position, in which the movements of the direction control element will not be taken into account.
0003The use of a dead zone is a treatment common to many software allowing to aim with a joystick. This option consists in applying a dead zone around the rest position of the joystick. This has a disadvantage in that it becomes difficult, if not impossible, to make small movements around the rest position. Indeed, the small movements of the aiming cursor correspond to a position of the joystick close to the border of the dead zone and a change of direction requires sweeping an arc of circle all the greater as the dead zone is large, or even of the cross what can induce latency, and ultimately makes the management of small movements of the aiming cursor very complicated. In addition, adding a dead zone has the effect of reducing the usable amplitude of the joystick, so it is important to be able to reduce the size of this zone.
0004Methods for adjusting a joystick are known in the prior art, in particular from the document <patcit id="pcit0001" dnum="JP2010137079A"><text>JP 2010-137079</text></patcit>. This document describes a method of adjusting the dead zone of the joystick. Location information based on actuation of a joystick lever is provided to a control circuit to then drive a motor based on the location information. The control circuit detects a neutral position or rest position and defines a dead zone in a defined range around this rest position each time the lever automatically returns to its rest position. In this way, the dead zone can be adjusted around the rest position whatever the variation of this position. However, such an adjustment method is not suitable for using the joystick as a game actuating device and therefore does not have the same constraints, such as for example a sustained and jerky use of the lever on which can be exerted significant actuation forces by the user, nor the same requirements, such as the need to combine speed and precision for games with aim.
0005Another method of adjusting a joystick is known in the prior art, in particular from the document <patcit id="pcit0002" dnum="JPH08281584B"><text>JPH08-281584</text></patcit>. This document describes a process for managing the joystick dead zone. Depending on the position of the joystick, an output voltage is supplied. The dead zone is neglected when the amount of voltage change between two measurements is greater than a determined threshold. Such a management method is however not suitable for using the joystick as a device for actuating a game and therefore does not have the same constraints, such as for example the need to combine speed and precision for games with aim.
0006In general, adapting a game controller or joystick for use on a computer presents a number of difficulties, some of which are listed below. For the sake of simplicity, we will only use the name linked to a joystick, but of course this also remains valid for a joystick stick.
0007First of all, a first difficulty is linked to the displacement of the lever of a joystick based on its absolute position. The signal obtained from a joystick provides information on the position of the lever but gives no information on its movement. This results in a significant lack of responsiveness when used as a pointing device. This is particularly the case for shooting games involving aiming using the joystick. Aiming can be summed up as the following problem: given a user-controlled cursor and a target (possibly mobile), the aim is to move the cursor over the target as quickly and precisely as possible. This problem is dealt with radically differently by the user depending on whether the device used is a mouse or a joystick. In the case of a mouse, the movement of the cursor reproduces the movement of the mouse, the user only has to move the latter accordingly. In the case of a joystick the user must orient the lever in the direction corresponding to the target, the speed of movement then depends on the inclination of the lever. However the inclination is limited by the amplitude of the latter, this process makes the aim less natural and less reactive.
0008Another difficulty relates to the refocusing of the joystick relative to its central position corresponding to the absence of movement of the cursor. For this it is necessary that the lever is systematically refocused when it is not manipulated in its rest position. However, the mechanism used (generally a spring) does not allow perfect refocusing, so that the rest position does not correspond to the central position. This refocusing is even often very approximate (sometimes more than 15% of the total amplitude). This causes a permanent movement of the cursor and forces the user to have to center the joystick himself, which further complicates aiming, in particular when the cursor has to be stabilized on a given target.
0009Another difficulty concerns the lack of amplitude of the joystick. The use of a mouse does not impose any constraint linked to the amplitude of the movement. The user theoretically has as much space as necessary in order to break down the movement and increase the precision of the gesture. The amplitude of a joystick is limited, as a consequence for a precise aiming requiring a low sensitivity, the maximum speed of movement of the cursor should be low so that the aiming then loses in reactivity. It is then for example impossible under these conditions to reach a fast moving target or to quickly reach a stationary target. Conversely, a reactive aim requires a high sensitivity and leads to a loss of precision.
0010An object of the present invention is to respond to the drawbacks of the prior art mentioned above and in particular, first of all, to propose a method of controlling an aiming cursor on a screen by means of a game actuation device equipped with a direction control element making it possible to make the best use of the performance of the game actuation device and to provide its user with a quality and a gaming experience comparable to that obtained with a keyboard and a mouse and more particularly to optimize the management of the aim.
0011For this, a first aspect of the invention relates to a method of controlling a target cursor by means of a game actuating device equipped with at least one direction control element arranged to occupy a rest position and move at least along an axis, and having a dead zone defined by a predetermined movement of the direction control element along the axis on either side of the rest position, comprising the steps consisting in:<ul id="ul0001" list-style="dash"><li>detecting a position of the steering control element along said at least one axis,</li><li>determining the speed of movement of the steering control element based on a history of the positions detected,</li><li>comparing the speed of movement of the steering control element with a predetermined speed threshold,</li><li>when the speed of movement of the control element is lower than the predetermined speed threshold, transmitting position data corresponding to the detected position outside the dead zone and transmitting a predefined value in the dead zone, and</li><li>when the speed of movement of the control element is greater than the predetermined speed threshold, transmit position data corresponding to the detected position, including in the dead zone</li></ul>and further comprising the step of:<ul id="ul0002" list-style="dash" compact="compact"><li>transmitting position data corresponding to a detected position in the dead zone, weighted by a predetermined sensitivity coefficient, when the speed of movement of the control element decreases and becomes less than the predetermined speed threshold.</li></ul>
0012Such a control method makes it possible to take into account and to exploit the movements of the steering control element and to partially compensate for the defects linked to the use of the usual dead zone. Indeed, such a method makes it possible to define a dynamic dead zone as a function of the speed of movement of the direction control element. Thus, the dead zone is active as long as the speed of the direction control element does not exceed the predetermined speed threshold, that is to say when the control element is stationary or almost immobile in the zone dead, the cursor does not move even if the control element is not perfectly centered in the rest position. When the speed of the control element exceeds the predetermined speed threshold, the dead zone is deactivated so that the movements of the element in the dead zone are taken into account. This is particularly advantageous for taking into account small rapid movements located in the dead zone which is then inactive. This results in improved reactivity and precision, in particular for an aiming operation thanks to the use of such a dynamic dead zone. In addition, such a control makes it possible to ensure, when the speed of the stick decreases and drops below the speed threshold, that the dead zone is reactivated progressively so that if the direction control element is present in the dead zone , the sensitivity is reduced until it returns to full activation of the dead zone.
0013Advantageously, the direction control element is arranged to move along at least two axes forming a plane, the dead zone being defined by a predetermined displacement in the plane around the rest zone. The definition of the dead zone with respect to the plane defined by the two axes of movement makes it possible to capture all the movements liable to be carried out by the user when the direction control element is actuated.
0014Even more advantageously, when the steering control element remains in the dead zone, the sensitivity coefficient decreases until it becomes zero according to an adjustable predetermined damping function. According to an advantageous variant, the depreciation function is defined as follows:<ul id="ul0003" list-style="dash"><li>during a first adjustable latency time, the sensitivity coefficient is constant;</li><li>during a second adjustable latency time, the sensitivity coefficient decreases until reaching zero at the end of the second latency time.</li></ul>
0015This progressive reactivation of the dead zone allows a smooth transition between the inactive state and the active state of the dead zone. Thus, a movement whose speed momentarily drops below the predetermined speed threshold and is located in the dynamic dead zone is not suddenly interrupted. The use of a damping function with two lag times makes it possible to further optimize the reactivity of the game actuation device. The possibility of adjustment by the user of these two latency times makes it possible to adapt on the one hand to the latter's playing habits and on the other hand to the different playing requirements according to the game considered.
0016Advantageously, there is further provided a step consisting in smoothing the new detected position of the joystick with respect to a history of the previous positions, when moving from a position located in the dead zone towards a position situated outside the dead zone in order to erase a position jump linked to the exit from the dead zone. In this way, it is always possible to carry out movements whatever the speed and in particular for low speeds.
0017Advantageously, there are also provided the steps consisting in detecting the rest position of the steering control element along said at least one axis and in defining the dead zone around the detected rest position so that the position of rest is located in the center of the dead zone. The objective is to symmetrical the defect of recentering of the steering control element and consequently to be able to use a smaller dead zone.
0018Advantageously, the direction control element has a maximum original speed for moving along said at least one axis, the method further comprising the steps of automatically calculating the maximum speed in each direction along said at least one axis; and scaling in each direction along the axis by varying the sensitivity coefficient to restore the original maximum speed and obtain a symmetrical aim.
0019Advantageously, the direction control element has, during a stop movement along said at least one axis, a maximum inclination relative to the rest position, the method further comprising a step of adjusting a percentage of the maximum tilt to define the dead zone around the rest position. Alternatively, the method can comprise a step consisting in entering a radius value making it possible to define a disc by projection on the plane of the spherical movement of the direction control element and using the disc by projection thus defined to determine the dead zone. These additional steps optimize the definition of the dead zone while avoiding unwanted cursor movements on the screen.
0020Advantageously, the direction control element is arranged to move along each axis between two positions in abutment around the rest position, the method further comprising the steps of:<ul id="ul0004" list-style="dash"><li>defining an intermediate position of the steering control element between the rest position and each of the abutment positions so as to define an intermediate zone around the rest position;</li><li>calculating at least one order derivative of at least one with respect to the time of the position of the direction control element as a function of a history of the positions detected;</li><li>determining if the detected position is located in the intermediate zone;</li><li>when the detected position is located in the intermediate zone, determining the speed of movement of the aiming cursor as a function of the detected position;</li><li>when the detected position is located outside the intermediate zone, determine the speed of movement of the aiming cursor as a function of the detected position and the calculated derivative.</li></ul>
0021A second aspect of the invention relates to a game actuating device comprising:<ul id="ul0005" list-style="dash"><li>at least one direction control element arranged to occupy a rest position and move at least along an axis and having a dead zone defined by a predetermined movement along the axis on either side of the rest position ;</li><li>a position sensor arranged to detect a position of the direction control element along said at least one axis;</li><li>processing means for determining the speed of movement of the direction control element based on the successive positions detected and for comparing the speed of movement of the direction control element with a predetermined speed threshold;</li><li>means of communication to transmit:<ul id="ul0006" list-style="dash"><li>when the speed of movement of the control element is less than the predetermined speed threshold, position data corresponding to the detected position outside the dead zone and a predefined value in the dead zone, and</li><li>when the speed of movement of the control element is greater than the predetermined speed threshold, the position data corresponding to the detected position, including in the dead zone</li></ul></li></ul>characterized in that the communication means are further arranged for transmitting position data corresponding to a detected position in the dead zone, weighted by a predetermined sensitivity coefficient, when the speed of movement of the control element decreases and becomes lower than the predetermined speed threshold.
0022A game device according to the second aspect of the invention has greater responsiveness and precision, in particular for computer video games involving aiming.
0023The invention also relates to other aspects which, in combination with one and / or the other of the first two aspects, further make it possible to improve the responsiveness and the precision of the game actuating device.
0024A first additional processing consists in informing, for example by means of a user input, the maximum angle of inclination of the direction control element and in calculating the actual position of the control element of management. In fact, the data supplied by the control element generally measures the inclination of the latter on two axes, the horizontal axis and the vertical axis. The actual position of the steering control element can then be calculated taking into account the maximum tilt previously specified. The actual position is calculated According to a first option, the so-called normalized calculated position is defined as the angle of inclination of the element to a factor close regardless of the direction followed by the control element. According to a second option, the actual position of the element is calculated taking into account the normalized position and the tilting direction so that the position of the control element is interpreted as a moving point moving on a sphere. , the normalized position corresponding to the length of the circular arc joining the control element to the central point, normally the point of rest. According to a third option, if the calculation of the normalized position is not carried out, the position of the element is calculated as being the projection of its position on the equatorial plane of the sphere whose north pole corresponds to the central position of the item. Concretely the direction remains the same as in the second option but the norm of the position is the sine of the previous norm.
0025Other characteristics and advantages of the present invention will appear more clearly on reading the following detailed description of an embodiment of the invention given by way of non-limiting example and illustrated by the appended drawings, in which:<ul id="ul0007" list-style="dash"><li>the <figref idref="f0001">figure 1</figref> represents a process for dynamic control of the dead zone of a joystick;</li><li>the <figref idref="f0002">figure 2</figref> represents a method of dynamic control of the dead zone of a joystick according to an embodiment of the invention;</li><li>the <figref idref="f0003">figure 3</figref> represents a variant of the method according to the mode of implementation of the <figref idref="f0002">figure 2</figref> ;</li><li>the <figref idref="f0004">figure 4</figref> represents a variant of the dynamic dead zone control methods including a static control of the dead zone;</li><li>the <figref idref="f0005">figure 5</figref> schematically represents a joystick according to an embodiment of the invention.</li></ul>
0026In the remainder of the present description, for the sake of simplification, reference is made only to a joystick to indistinctly indicate the game actuation device, ie the joystick itself, and the direction control element, ie the joystick control lever. In the embodiments presented below, the joystick moves along two axes X and Y forming a plane, although this is also possible for displacements along a single axis or three axes. It will also be understood that this applies in the same way to any game device provided with a steering control element such as for example a game controller equipped with a stick.
0027Mention is also made of the interaction with an imaging and sound system such as a screen connected to a digital processing unit such as for example a personal computer, and in particular in the context of a video game having a cursor on the screen to ensure aiming. The various data, in particular of position and speed, as well as the parameters predefined by the user are stored in volatile or non-volatile memories as required. The use of such storage means is not explicitly mentioned below. Data transmission generally refers to the communication of relevant data by the joystick to the digital processing unit for the advancement of the game.
0028The <figref idref="f0001">figure 1</figref> represents a process for dynamic control of the dead zone of a joystick. By dynamic control is meant a setting based on the position and movement of the joystick.
0029A preliminary step S1 of determining the dead zone (ZM) consists in defining the zone in which small movements of the joystick are, in general, not taken into account by the video game to avoid untimely movements of the aiming cursor on the 'screen. An example of a method for determining the dead zone will be given in more detail in the<figref idref="f0004">figure 4</figref>. This preliminary step S1 can be carried out once before even starting the process of dynamic control of the dead zone or, on the contrary, being carried out at the start of the process as shown in FIG.<figref idref="f0001">figure 1</figref>.
0030A step S2 consists in detecting the position (X<sub>J</sub>, Y<sub>J</sub>) of the joystick along the two axes of movement relative to the rest position initially considered to be the central position (X<sub>0</sub>, Y<sub>0</sub>). The position of the joystick is detected periodically and preferably at high frequency so as to be able to detect all the movements carried out by the user. The sampling frequency used is preferably chosen between 125 and 500 Hz. A high frequency, such as 500 Hz for example, will be particularly advantageous in that it makes it possible to perform calculations on a history of detected positions which is larger before the data are transmitted to an imaging and sound system.
0031A step S3 consists in determining the speed V<sub>J</sub> for moving the joystick on the basis of the positions detected successively in step S2. The speed is also determined periodically, and preferably at the same frequency as that used for the position detection, so as to take account of the speed changes in real time.
0032A step S4 consists in comparing the speed determined in step S3 with a speed threshold V<sub>REF</sub> predetermined to determine how to manage the position data detected in the dead zone. If the speed V<sub>J</sub> movement of the joystick is greater than the speed threshold V<sub>REF</sub> predetermined, the control method goes to step S41. If on the other hand the speed V<sub>J</sub> movement of the joystick is less than the speed threshold V<sub>REF</sub> predetermined, the control method proceeds to step S42.
0033In step S41, that is to say when the speed V<sub>J</sub> movement of the joystick is greater than the speed threshold V<sub>REF</sub> preset, the joystick transmits the position (X<sub>J</sub>, Y<sub>J</sub>) of the joystick in step S2, whatever this position, that is to say including if it is located in the dead zone. The process returns to step S2 for the next measurement of the position of the joystick.
0034Step S42, that is to say when the speed V<sub>J</sub> movement of the joystick is less than the speed threshold V<sub>REF</sub> predetermined, consists in determining whether the position (X<sub>J</sub>, Y<sub>J</sub>) detected is located in the dead zone or not. If the detected position is in the dead zone, the method goes to step S45, otherwise it goes to step S41.
0035Step S45, that is to say when the position detected in step S2 is in the dead zone, consists in transmitting a predefined value in place of the position actually detected. This value is preferably chosen as the rest position (X<sub>0</sub>, Y<sub>0</sub>) of the joystick insofar as it is not desirable to transcribe slight movements of the joystick, ie at low speed, in the dead zone, that is to say around the rest position. Then, the method returns to step S2 for a new measurement of the position of the joystick.
0036The <figref idref="f0002">figure 2</figref> represents a method of dynamic control of the dead zone of a joystick according to an embodiment of the invention. In this embodiment, a certain number of steps are identical to those presented above in relation to the<figref idref="f0001">figure 1</figref> and are not detailed again. The speed threshold value V<sub>REF</sub> is user adjustable or predefined. Steps S101 to 104 and S141 correspond to steps S1 to S4 and S41.
0037Step S142 differs slightly from step S42 in that it refers to step S143 and not directly to step S145. Step S142, that is to say when the speed V<sub>J</sub> movement of the joystick is less than the speed threshold V<sub>REF</sub> predetermined, consists in determining whether the position (X<sub>J</sub>, Y<sub>J</sub>) detected is located in the dead zone or not. If the detected position is in the dead zone, the method goes to step S143, otherwise it goes to step S141.
0038Step S143 consists in comparing the previously determined speed V<sub>D-1</sub>, that is to say the speed determined during the penultimate step S103, with the speed threshold V<sub>REF</sub> predetermined to determine whether the current traveling speed V<sub>J</sub> follows a previous traveling speed V<sub>D-1</sub> above or below the predetermined speed threshold. If the previous speed V<sub>D-1</sub> movement of the joystick is greater than the speed threshold V<sub>REF</sub> predetermined, the control method proceeds to step S144. If on the other hand the previous speed V<sub>D-1</sub> movement of the joystick is less than the speed threshold V<sub>REF</sub> predetermined, the control method proceeds to step S145.
0039Step S144, that is to say when the previous speed V<sub>D-1</sub> movement of the joystick is greater than the speed threshold V<sub>REF</sub> predetermined, consists in transmitting the position of the joystick weighted by a sensitivity coefficient k (t), which is preferably variable. The objective of this sensitivity coefficient is in particular to avoid a sudden jump of the aiming cursor during a slowing down of the movement of the joystick in the dead zone. Then, the method returns to step S102 for a new measurement of the position of the joystick. The sensitivity coefficient or damping function is for example defined by a polynomial function of degree 3 of the type: <maths id="math0001" num="(1)"><math display="block"><mrow><mi mathvariant="normal">k</mi><mfenced><mi mathvariant="normal">t</mi></mfenced><mo>=</mo><mi mathvariant="normal">at</mi><mn mathvariant="normal">.</mn><msup><mi mathvariant="normal">t</mi><mn mathvariant="normal">3</mn></msup><mo>+</mo><mi mathvariant="normal">b</mi><mn mathvariant="normal">.</mn><msup><mi mathvariant="normal">t</mi><mn mathvariant="normal">2</mn></msup><mo>+</mo><mi mathvariant="normal">vs</mi><mn mathvariant="normal">.</mn><mi mathvariant="normal">t</mi><mo>+</mo><mi mathvariant="normal">d</mi></mrow></math><img file="EP3040107A1_D0001.tif" /></maths> in which t represents the elapsed time, a, b, c and d represent coefficients defined as a function of at least one parameter entered by the user or predefined (for example a latency time).
0040Step S145, that is to say when the previous speed V<sub>D-1</sub> movement of the joystick is less than the speed threshold V<sub>REF</sub> predetermined, consists in transmitting a predefined value in place of the position actually detected. This value is preferably chosen as the rest position (X<sub>0</sub>, Y<sub>0</sub>) of the joystick insofar as it is not desirable to transcribe slight movements of the joystick, ie at low speed, in the dead zone, that is to say around the rest position. Then, the method returns to step S102 for a new measurement of the position of the joystick.
0041The <figref idref="f0003">figure 3</figref> represents a variant of the method according to the mode of implementation shown in <figref idref="f0002">figure 2</figref>. In this variant, the sensitivity coefficient is defined by an adjustable predetermined damping function.
0042During a preliminary step S201, generally completed before the user begins to play, the user must enter latency times t<sub>1</sub> and t<sub>2</sub> which are then used to define the depreciation function. Alternatively, default values can be applied to define these latency times.
0043When the control method according to the mode of implementation, described in connection with the <figref idref="f0002">figure 2</figref>, arrives at step S144, the method continues, according to the present variant, at step S202 which consists in measuring whether the time elapsed since the detection of a slowdown in the speed of movement below the speed threshold predetermined at l inside the dead zone is less than the first latency t<sub>1</sub> predefined. If the elapsed time is less than the first latency time, the method continues at step S203. If the elapsed time is greater than the first latency time, the method continues at step S204.
0044Step S203, that is to say when the elapsed time is less than the first latency time t<sub>1</sub>, consists in transmitting a weighted position with a constant sensitivity coefficient K in order to keep a certain inertia in the treatment of a slowdown in the movement of the joystick. After this transmission, the method proceeds to step S206.
0045Step S204, that is to say when the elapsed time is greater than the first latency time t<sub>1</sub>, consists in measuring whether the time elapsed since the detection of a slowdown in the speed of movement below the predetermined speed threshold inside the dead zone is less than the second latency time t<sub>2</sub> predefined. If the elapsed time is less than the second latency, the method continues at step S205. If the elapsed time is greater than the second latency time, the method ends the variant of transmission of a weighted position and returns to the main method of dynamic control of the dead zone of the<figref idref="f0002">figure 2</figref>.
0046Step S205, that is to say when the elapsed time is less than the second latency time t<sub>2</sub>, consists in transmitting a weighted position with a sensitivity coefficient k (t) decreasing from the value K at time t<sub>1</sub> up to the value 0 at time t<sub>2</sub> so as to dampen the movement of the joystick in the dead zone until finding the classic situation in which small movements inside the dead zone are not transmitted. The sensitivity coefficient is advantageously defined by means of a polynomial function in accordance with formula (1). Alternatively, step S205 could consist in transmitting weighted position data by means of a damping function k (t) which decreases preferably from the weighted position data ((X (t<sub>1</sub>), Y (t<sub>1</sub>)). K) with the constant sensitivity coefficient K at time t<sub>1</sub> up to the value 0 at time t<sub>2</sub>. After this transmission, the method proceeds to step S206.
0047Step S206 consists in verifying that the current position (X<sub>J</sub>, Y<sub>J</sub>) of the joystick is still inside the zone and that the current speed (V<sub>J</sub>) of movement of the joystick is always lower than the speed threshold V<sub>REF</sub> predetermined. If both conditions are met, that is, the position of the joystick is in the dead zone and the movement speed is lower than the predetermined speed threshold, the method returns to step S202. Otherwise, the method ends the variant of transmitting a weighted position and returns to the main method of dynamic control of the dead zone of the<figref idref="f0002">figure 2</figref>.
0048According to an advantageous alternative embodiment, during the preliminary step S201, the user can enter latency times t<sub>1</sub> and t<sub>2</sub> which are then used to define the damping function, or alternatively a single lag time (t<sub>2</sub>). Alternatively, default values can be applied to define the latency times.
0049Latency times t<sub>1</sub> and t<sub>2</sub> are defined as follows: <maths id="math0002" num=""><math display="block"><mrow><mn mathvariant="normal">50</mn><mo>%</mo><mspace width="1em" /><msub><mi mathvariant="normal">t</mi><mn mathvariant="normal">2</mn></msub><mo><</mo><msub><mi mathvariant="normal">t</mi><mn mathvariant="normal">1</mn></msub><mo><</mo><mn mathvariant="normal">80</mn><mo>%</mo><mspace width="1em" /><msub><mi mathvariant="normal">t</mi><mn mathvariant="normal">2</mn></msub><mn mathvariant="normal">.</mn></mrow></math><img file="EP3040107A1_D0002.tif" /></maths>
0050Preferably the first latency time t<sub>1</sub> is chosen to correspond to 2/3 of the latency time t<sub>2</sub>.
0051According to a preferred embodiment, the latency time t<sub>latency</sub> is adjustable between values of 8 milliseconds (ms) and 1200 ms.
0052The choice of the latency time by the user will be guided by his level of mastery of the game, the type of game and the behavior expected in the game. This latency time makes it possible to define the delay for reactivation of the dead zone which is important to soften the transition from inactive dead zone to active dead zone.
0053The <figref idref="f0004">figure 4</figref> represents a variant of the dynamic dead zone control methods including a static control of the dead zone with determination of the dead zone. Static control of the dead zone is understood to mean an adjustment which is essentially based on the position of the joystick.
0054The determination of the dead zone can be carried out before using the joystick to play. A first preliminary step S301 consists in measuring the maximum inclination I<sub>MAX</sub> joystick. This measurement can be made for example by moving the joystick in abutment according to the different axes of movement and to measure the maximum inclination relative to the rest position, or also by means of an input by the user of the 'maximum tilt. This maximum inclination is preferably defined in degrees.
0055Step S302 consists in adjusting the dead zone, when the maximum inclination is known. Preferably, the dead zone is defined as the zone around the rest position corresponding to a determined percentage of the maximum inclination, for example between 0 and 10%, preferably between 0 and 5%, and even more preferentially 2 %.
0056Step S303 consists in detecting the rest position of the joystick. This rest position (X<sub>0</sub>, Y<sub>0</sub>) is used to determine the dead zone around, especially during step S302.
0057When using the joystick, it may happen over time that the rest position shifts relative to the determined dead zone. Step S304 consists in centering or refocusing the dead zone relative to the rest position. This centering of the dead zone is carried out by shifting the rest point perceived as the central position of the joystick. The objective is to “symmetrize” the defect of recentering of the joystick and consequently to be able to use a smaller dead zone. For example, suppose that the joystick is refocused with an offset of -2% to + 10% along the horizontal axis and from -4% to 14% along the vertical axis. A dead zone of at least 14% is then necessary in order to avoid any unwanted movement. By shifting by -4% along the horizontal axis and by -5% along the vertical axis, the joystick refocuses with an offset of -6% to + 6% along the horizontal axis and from -9% to 9% along the vertical axis, you now only need 9% dead zone.
0058An additional step S305 is preferably provided after the centering step S304. Indeed, centering the dead zone around the rest point can cause asymmetry of the aim so that the maximum speed is no longer the same depending on the direction of movement of the joystick. Step S305 consists in automatically calculating the new maximum speed in each direction and performing a scaling (by varying the sensitivity) in all directions in order to restore the original maximum speed and to obtain a symmetrical aim. For this, the user must enter the maximum and minimum offsets along the horizontal and vertical axis and the new central position can be automatically calculated.
0059An additional step S306 can also be provided, consisting in detecting whether the position of the joystick is still located in the dead zone. When the position of the detected joystick is outside the dead zone, the method proceeds to step S307.
0060Step S307 consists in smoothing the new detected position of the joystick with respect to a history of the previous positions, which makes it possible to erase a jump in position linked to the exit from the dead zone.
0061According to an alternative embodiment of the <figref idref="f0004">figure 4</figref>, the determination of the dead zone can be carried out through an adjustment by the user consisting in entering a value of radius making it possible to define by projection a disc of dead zone on the plane of the usually spherical movement of the joystick. The dead zone can be adjusted between 0 and 90% of the stroke of the joystick corresponding to its movement between its rest position and its stop position. Preferably the dead zone is defined at 2% of the joystick stroke.
0062According to a second aspect, the invention relates to a game actuation device. <figref idref="f0005">figure 5</figref> schematically represents a joystick 10 according to an embodiment of the invention.
0063The joystick comprises a lever 12 arranged to occupy a rest position and move along two XY axes and having a dead zone defined around the rest position. A position sensor 14 is arranged to detect the position of the lever 12 along the two axes XY. Processing means, such as for example a microcontroller 16, are arranged to determine the speed of movement of the lever based on the successive positions detected and to compare the speed of movement with a predetermined speed threshold. Communication means 18 are arranged to transmit position and speed data to an external processing unit, such as for example a personal computer 20.
0064More particularly, the microcontroller is arranged to provide the communication means with position data corresponding to the positions detected outside the dead zone and a predefined value for the positions detected in the dead zone, when the speed of movement of the lever is less than the threshold. predetermined speed, and position data corresponding to all the detected positions, including those detected in the dead zone, when the speed of movement of the lever is greater than the predetermined speed threshold. The communication means are further arranged to transmit position data corresponding to a detected position in the dead zone, weighted by a predetermined sensitivity coefficient, when the speed of movement of the control element decreases and becomes below the threshold of predetermined speed.
0065It will be understood that various modifications and / or improvements obvious to a person skilled in the art can be made to the various embodiments of the invention described in the present description without departing from the scope of the invention defined by the appended claims.
8 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8
Every citation, both ways
| Document | Relation | Office | Category | Cited during | Relevant claims |
|---|---|---|---|---|---|
| WO2022256968A1 | Cited by | World Intellectual Property Organization (WIPO) | – | International search | – |
| CN108771859A | Cited by | China | – | Search report | – |
| CN109391899A | Cited by | China | – | Search report | – |
| US2005195166A1 | Cites | United States of America | A | Search report | 1-10 |
| US2009286599A1 | Cites | United States of America | A | Search report | 1-10 |
| JP2010137079A | Cites | Japan | – | Applicant | – |
| US6203432B1 | Cites | United States of America | A | Search report | 1-10 |
| JPH08281584A | Cites | Japan | A | Search report | 1-10 |
| JPH08281584A | Cites | Japan | A | Applicant | 1-10 |
4 members in 2 offices; this record represents the family
Priority claims4
| Document | Office | Kind | Date |
|---|---|---|---|
| 1550006 | France | A | |
| 1550006 | France | – | |
| FR20150050006 | – | – | – |
| 1550006 | – | – | – |
Members4
| Document | Office | Kind | |
|---|---|---|---|
| EP3040107A1This record | European Patent Office (EPO) | A1 | |
| FR3031405A1 | France | A1 | |
| EP3040107B1 | European Patent Office (EPO) | B1 | |
| FR3031405B1 | France | B1 |
68 legal events, as 11 offices reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | Office | |
|---|---|---|---|
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Full renewal or maintenance fee paidST27 STATUS EVENT CODE: U-0-0-U10-U11 (AS PROVIDED BY THE NATIONAL OFFICE)U11 | U11 | CH | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Change of ownershipPD | PD | LU | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Change of applicant/patenteeR081 | R081 | DE | |
| Change of representativeR082 | R082 | DE | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| No opposition filedOpposition26N | 26N | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| No opposition filed within time limitOppositionORIGINAL CODE: 0009261PLBE | PLBE | EP | |
| Information on the status of an ep patent application or granted ep patentGrantedSTATUS: NO OPPOSITION FILED WITHIN TIME LIMITSTAA | STAA | EP | |
| Patent lapsedLapsedMM4A | MM4A | IE | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| No opposition filed against granted patent, or epo opposition proceedings concluded without decisionGrantedR097 | R097 | DE | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Deletion acc. to par. 5 (withdrawal of the translation of the ep patent)MK05 | MK05 | AT | |
| Invalidated european patentMG4D | MG4D | LT | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Definitive protectionFG2A | FG2A | ES | |
| Translation for ep filed (entry of ep into country)FP | FP | NL | |
| Fee paymentPLFP | PLFP | FR | |
| Dpma publication of mentioned ep patent grantGrantedR096 | R096 | DE | |
| Reference to at number (ep patent validated in austria)REF | REF | AT | |
| European patents granted designating irelandGrantedLANGUAGE OF EP DOCUMENT: FRENCHFG4D | FG4D | IE | |
| European patent takes effect as a national patent in ch/liEP | EP | CH | |
| New agentNV | NV | CH | |
| Designated contracting statesAK | AK | EP | |
| European patent grantedGrantedNOT ENGLISHFG4D | FG4D | GB | |
| (expected) grantORIGINAL CODE: 0009210GRAA | GRAA | EP | |
| Grant fee paidORIGINAL CODE: EPIDOSNIGR3GRAS | GRAS | EP | |
| Intention to grant announcedINTG | INTG | EP | |
| Despatch of communication of intention to grant a patentORIGINAL CODE: EPIDOSNIGR1GRAP | GRAP | EP | |
| Request for examination filed17P | 17P | EP | |
| Designated contracting states (corrected)RBV | RBV | EP | |
| Designated contracting statesAK | AK | EP | |
| Request for extension of the european patentAX | AX | EP | |
| Public reference made under article 153(3) epc to a published international application that has entered the european phaseORIGINAL CODE: 0009012PUAI | PUAI | EP |
Numbers
- Publication
- 3040107
- Publication, DOCDB
- 3040107
- Publication, EPODOC
- EP3040107
- Application
- 16150004
- Application, DOCDB
- 16150004
- Application, EPODOC
- EP20160150004
Titles3
- German
- VERFAHREN ZUR STEUERUNG EINES ZIELCURSORS MITHILFE EINES JOYSTICKS, UND ENTSPRECHENDER JOYSTICK
- English
- METHOD FOR CONTROLLING A SIGHT EXTENSION USING A JOYSTICK AND CORRESPONDING JOYSTICK
- French
- PROCEDE DE CONTROLE D'UN CURSEUR DE VISEE AU MOYEN D'UNE MANETTE DE JEU ET MANETTE DE JEU CORRESPONDANTE
Classification
- CPC, 4
- A63F13/22
- G06F3/0338
- G06F3/038
- G06F3/0383
- IPC, 3
- A63F13 22
- G06F3 0338
- G06F3 038
Designated states2
- Contracting states, 1
- Türkiye
- Extension states, 1
- Montenegro