POV ( Point-Of-View )
POV ( Point-Of-View, переключатель вида, указатель направления) - одна из структур ввода, определяемая в DirectInput ( наряду с осями и кнопками):
"Direction controllers, such as point-of-view hats. The position is indicated in hundredths of a degree clockwise from north (away from the user). The center position is normally reported as - 1;"
Количество таких структур, доступных в HID устройстве - 4. Также устройство может вообще не иметь элементов POV.
POV по своей природе аналогичны осям, максимальное количество передаваемых отсчетов ограничено значением 36000 ( у осей 65536).
Однако де факто в игровой индустрии используются только указатели направления с дискретностью 45° ( 8 отсчетов.).
Обычно конструктивно состоит их 4-х крестообразно расположенных кнопок, которые задают направления с шагом 90°, совместные нажатия двух смежных кнопок дают еще 4 направления со сдвигом 45°. Такой элемент управления именуется как HAT (хатка).
Для базового контроллера в конфигураторе число структур POV задаётся параметром #POV (0..4).
[ Global-Common-Basic-USB HID Controllers]
Для эктра виртуальных контроллеров (VC>0) при их наличии - число POV задаётся максимум (4).
Параметры управления элементами POV ,базового контроллера находятся на вкладке POVs:
Номера POV и цветовое обозначение соответствует цветам и нумерации в панели игровых устройств Windows.
Пиктограмма каждой хатки появится только при установке определенного числа #POV глобальных параметрах - иначе вы увидите крест в панели соответствующей структуры.
POV Type
Discrete
Этот тип POV позволяет использовать физические кнопки в качестве для ввода ( функции POV физического уровня или логического уровня ).
Остальные типы POV работают с аналоговым вводом ( типично - двухосевые министики ):
Для привязки соответствующих осей служат параметры:
VC# - номер виртуального контроллера, которому принадлежат оси
2D - использовать 2 оси ( министик) . Иначе в качестве POV можно использовать ввод от потенциометра или другого тип оси.
X / Y, Inv - горизонтальная/вертикальная оси и инверсия ( в данном случае меняет направление оси только для расчета POV )
DZ ( Deadzone) - зона нечувствительности министика в центре, %
DZ Type - тип мертвой зоны
Cross - крестообразная, независимая по каждой оси
Circle - круговая 2D .
LoRes4w, LoRes8w
(Low Resolution 4/8 way) - стандартные указатели направления низкого разрешения на 4/8 направлений, шаг 90°/45°
При выборе данных типов доступен дополнительный параметр OUTPUT :
OUTPUT
Параметр OUTPUT позволяет произвести маппинг министика на стандартные усказатели [POV], но также на виртуальные [Buttons V] или логические кнопки [Buttons L] джойстика, клавиатуру [NUMPAD], а также использовать министик в качестве указателя виртуальной мыши [Mouse Rel] & [Mouse Abs].
Для вариантов [Buttons V], [Buttons L] параметр But#1 задает первую линию, в массивах Virtual / Logical buttons, начиная с которой будут мапится остальные линии (кнопки) выходного массива POV .
При выборе [Buttons V] в случае POV 8-way добавляется опция маппинга Sequent/Simult:
Sequent - маппинг на 8 последовательных линий, соответствующих угловым направлениям,
Simult - маппинг только на 4 базовые линии - имитация кнопок крестообразной хатки с возможностью одновременной работы двух смежных линий.
NUMPAD
Внимание! Для работы данной опции необходимо, чтобы виртуальная клавиатура контроллера была включена!
Начиная с fw v2.18.9 / VKBDevCfg v0.93.15 добавлена опция клавиатуры WASD/Arrows