Difference between revisions of "Axis translation parameters"
(→Smoothing) |
|||
Line 32: | Line 32: | ||
This only applies to mouse motion, and is configurable with two parameters: a buffer size and a filter.<br /> | This only applies to mouse motion, and is configurable with two parameters: a buffer size and a filter.<br /> | ||
− | The | + | The motion can be smoothed using previous mouse reports. |
==Buffer size== | ==Buffer size== | ||
The higher the buffer size, the higher the added latency.<br /> | The higher the buffer size, the higher the added latency.<br /> | ||
− | + | Typical values are are in the 2..10 range. | |
==Filter== | ==Filter== | ||
− | The filter defines how much the previous motion reports will count in the | + | The filter (in the 0..1 range) defines how much the previous motion reports will count in the final motion.<br /> |
− | Value 1 means that the | + | Value 1 means that the final motion is an average of the buffered motion reports.<br /> |
− | Value 0.5 means that the current motion report counts for 1, the previous one for 0.5, the next oldest one 0.25, and so on.<br /> | + | Value 0.5 means that the current motion report counts for 1, the previous one for 0.5, the next oldest one for 0.25 (=0.5x0.5), and so on.<br /> |
− | Value 0 means that only the current motion report | + | Value 0 means that only the current motion report counts (resulting in an unfiltered motion).<br /> |
So as to preserve a low latency, high filters (1) should only be used with low buffer sizes (2), and low filters (0.5) should only be used with high buffer sizes (10). | So as to preserve a low latency, high filters (1) should only be used with low buffer sizes (2), and low filters (0.5) should only be used with high buffer sizes (10). |
Revision as of 16:39, 19 October 2012
Work in progress... Give simple use cases such as: how to bind a joystick axis to an axis A few things could be taken in this old forum tutorial: http://forum.gimx.fr/viewtopic.php?f=4&t=39#6
This page explains the purpose of each translation parameter.
Contents
Dead zone
The dead zone parameter allows to shift the stick positions away from the stick center.
This allows to skip all the stick positions around the stick center that do not generate in-game movement (these positions are called the dead zone of the stick).
If lowest input motion do not generate enough movement, increase the dead zone parameter.
Dead zone shape
The dead zone shape can be set to either rectangle or circle.
Other shapes will be added in a future version.
Sensitivity
The sensitivity parameter is nothing more than a multiplier: input motion is multiplied so as to scale to the output motion range.
Increase it if the movement is too slow and decrease it if the movement is too fast.
It can be a negative value, so as to reverse the motion direction.
Remember that the output motion range is limited (the stick has a max position).
Acceleration
The acceleration parameter allows to change the in-game acceleration.
Values higher than 1 increase the effective acceleration, whereas values lower that 1 decrease it.
In-game acceleration is generally positive, which means there is a value in the 0..1 range that will cancel it (at least for games that use simple look mechanics).
Smoothing
This only applies to mouse motion, and is configurable with two parameters: a buffer size and a filter.
The motion can be smoothed using previous mouse reports.
Buffer size
The higher the buffer size, the higher the added latency.
Typical values are are in the 2..10 range.
Filter
The filter (in the 0..1 range) defines how much the previous motion reports will count in the final motion.
Value 1 means that the final motion is an average of the buffered motion reports.
Value 0.5 means that the current motion report counts for 1, the previous one for 0.5, the next oldest one for 0.25 (=0.5x0.5), and so on.
Value 0 means that only the current motion report counts (resulting in an unfiltered motion).
So as to preserve a low latency, high filters (1) should only be used with low buffer sizes (2), and low filters (0.5) should only be used with high buffer sizes (10).