Яндекс.Метрика

Мышеджой

Список форумов Форумы АвиаГруппы =AxA= Технический раздел / Помощь Джойстики

Описание: В данном разделе все про джойстики
Правила форума: В данном разделе все про джойстики

Сообщение #1 AxA_ShtushaKutusha » 5 июля 2010, 21:01

Я два года использовала вместо джойстика две мышки и клавиатуру. Может кому то пригодится данная информация…
Для начала нужно иметь следующие программы:
PPJoy
GlovePIE
DTXweak2
SVmapper
ClockinTray
NewView .

1. Для начала установим PPJoy. Нажимаем setap.exe... ну а дальше собственно нет ничего сложного. Драйвера подкидываем из папки.
1.1. После установки запускаем Configure Joysticks (в меню ПУСК). Жмем добавить устройство. В графе Parallel Port выбираем VirtualJoystick. Драйвера опять подкидываем из папки.
1.2. После установки в том же окне Configure Joysticks доложен появится PPJoyVirtualJoystick. Кликаем по нему, далее внизу жмем Mapping. Здесь можно выбрать количество осей и кнопок. Не рекомендую выбирать больше чем 6 осей. Я ставила 6 осей, а остальное вообще не трогала.
1.3. Аналогичным образом добавляем вторую мышь. Кстати не имеет значения PS/2 или USB она.
2. Запускаем GlovePIE, в открывшееся окно добавляем следующий скрипт. Для удобства в скрипте приведены комментарии.
Последний раз редактировалось AxA_ShtushaKutusha 10 июля 2010, 8:53, всего редактировалось 2 раз(а).
AxA_ShtushaKutusha

Re: Мвшеджой

Сообщение #2 AxA_ShtushaKutusha » 5 июля 2010, 21:01

//Вкл/Выкл джоя с помощью кнопки F9
if (F9 = false) then var.f=0
if (F9 = true and var.off = 0 and var.f=0) {
var.off = 1
var.f=1
elseif (F9 = true and var.off = 1 and var.f=0) {
var.off = 0
var.f=1
}
}
if var.off =0 {

// Опрос мышек
// Mouse1
if (Mouse1.present) {
if (var.Mouse1_in = false) {

// Входные параметры:
var.Mouse1_Wheel = 6 //На сколько щелчков колеса мыши разбить ось джойстика
var.Mouse1_mapZ = var.Mouse1_Wheel*120
//Центровка при старте
var.Mouse1_Z = var.Mouse1_mapZ/2
var.Mouse1_in = true
}
//Сдвиг мышки
var.Mouse1_deltaz = Delta(Mouse1.DirectInputZ)
// Новые координаты мыши
var.Mouse1_Z = var.Mouse1_Z + (var.Mouse1_deltaz)
//Нельзя выходить за границы допустимой зоны
if var.Mouse1_Z var.Mouse1_mapZ then var.Mouse1_Z = var.Mouse1_mapZ


//Преобразуем диапазон зоны 0-1024 в диапазон джойстика от -1 до +1
Var.Mouse1_JX = MapRange(Mouse.CursorPosX, 0, screen.DesktopRight, -1 ,1)
Var.Mouse1_JY = MapRange(Mouse.CursorPosY, 0, screen.DesktopBottom, -1 ,1)
Var.Mouse1_JZ = MapRange(var.Mouse1_Z, 0, var.Mouse1_mapZ, -1 ,1)
}

// MOUSE2
if (Mouse2.present) {
if (var.Mouse2_in = false) {

// Входные параметры:
var.Mouse2_mapX = 1024 //Разрешение оси X, подбирается индивидуально
var.Mouse2_mapY = 1024 //Разрешение оси Y подбирается индивидуально
var.Mouse2_Wheel = 6 //На сколько щелчков колеса мыши разбить ось джойстика
var.Mouse2_mapZ = var.Mouse2_Wheel*120
var.Mouse2_X = var.Mouse2_mapX/2
var.Mouse2_Y = var.Mouse2_mapY/2
var.Mouse2_Z = var.Mouse2_mapZ/2
var.Mouse2_in = true
}
var.Mouse2_deltax = Delta(Mouse2.DirectInputX)
var.Mouse2_deltay = Delta(Mouse2.DirectInputY)
var.Mouse2_deltaz = Delta(Mouse2.DirectInputZ)

// собственно координаты мыши
var.Mouse2_X = var.Mouse2_X + (var.Mouse2_deltax)
var.Mouse2_Y = var.Mouse2_Y + (var.Mouse2_deltay)
var.Mouse2_Z = var.Mouse2_Z + (var.Mouse2_deltaz)

if var.Mouse2_X var.Mouse2_mapX then var.Mouse2_X = var.Mouse2_mapX
if var.Mouse2_Y var.Mouse2_mapY then var.Mouse2_Y = var.Mouse2_mapY
if var.Mouse2_Z var.Mouse2_mapZ then var.Mouse2_Z = var.Mouse2_mapZ

Var.Mouse2_JX = MapRange(var.Mouse2_X, 0, var.Mouse2_mapX, -1 ,1)
Var.Mouse2_JY = MapRange(var.Mouse2_Y, 0, var.Mouse2_mapY, -1 ,1)
Var.Mouse2_JZ = MapRange(var.Mouse2_Z, 0, var.Mouse2_mapZ, -1 ,1)

}
//Опрос мышек завершен





// Подменяем оси джойстика на оси мыши
// Первый джойстик - управление самолетом
PPJoy1.analog0 = Var.Mouse1_JX // Ось Х
PPJoy1.analog1 = Var.Mouse1_JY // Ось У
PPJoy1.analog4 = Var.Mouse1_JZ
PPJoy1.analog5 = Var.Mouse2_JZ

if (mouse2.LeftButton = false) { //Если не нажата левая кнопка Mouse2, то Двигатель+Педали, Иначе - ОБЗОР
if(var.trig_up=false){
Var.Mouse2_Y = var.temp_y
Var.Mouse2_X = var.temp_x
PPJoy2.analog0 = 0
PPJoy2.analog1 = 0
var.trig_vz=false
var.trig_up=true
} else {
PPJoy1.analog2 = Var.Mouse2_JY // Двигатель
PPJoy1.analog3 = Var.Mouse2_JX // Педали
}
} else {
if(var.trig_vz=false){
var.temp_y = Var.Mouse2_Y
var.temp_x = Var.Mouse2_X
var.Mouse2_X = var.Mouse2_mapX/2
var.Mouse2_Y = var.Mouse2_mapY/2
var.trig_vz=true
var.trig_up=false
} else {
//Второй джойстик - управление взглядом

PPJoy2.analog0 = Var.Mouse2_JX // Ось Х
PPJoy2.analog1 = Var.Mouse2_JY // Ось У
}
}
// Подменяем кнопки джойстика кнопками нужной мыши
PPJoy1.Digital0 = Mouse1.LeftButton
PPJoy1.Digital1 = Mouse1.RightButton
PPJoy1.Digital2 = Mouse1.MiddleButton
PPJoy1.Digital3 = Mouse1.XButton1
PPJoy1.Digital4 = Mouse1.XButton2

// Центрирование осей
if Mouse2.RightButton = true {
//Если нажата правая кнопка Mouse2 - Эти оси центрируются
Mouse.CursorPosX = screen.DesktopRight/2
Mouse.CursorPosY = screen.DesktopBottom/2
var.Mouse2_X = var.Mouse2_mapX/2
}
}
AxA_ShtushaKutusha

Re: Мвшеджой

Сообщение #3 AxA_ShtushaKutusha » 5 июля 2010, 21:02

3. Запускаем DTXweak2. Включаем мышеджойстик клавишей F9 и выставляем для всех осей значения min 0, centr 17999, max 35999.
4. Открываем папку ИЛ2, находим файл conf.ini и отключаем в нем обзор мышью

[rts]
mouseUse=1

[rts_mouse]
SensitivityX=0.0
SensitivityY=0.0

5. Да, и еще… я привыкла играть с инверсной мышью, поэтому вновь открываем папку с игрой, например F:\Games\IL-2 Sturmovik\Users\0\ находим там settings.ini и исправляем направление оси Y
JoystickDevice0 AXE_Y=-elevator
Еще, там же я заменила тягу на закрылки, это гораздо полезней.
MouseAXE_Z=flaps

6. Запускаем NewView в закладке «Джойстик» в пункте «основной» выставляем device №1, а «дополнительный» device №0. Далее открываем закладку «Шлем» жмем ВКЛ при старте, выбираем тип URGear и там же выбираем джойстик «основной».
7. Для тех у кого многокнопочная мышь советую воспользоваться программкой SVmapper. В ней тоже нет ничего сложного. Поставьте ее в автозагрузку с системой.
7.1. Включите джойстик.
7.2. Жмем Refresh.
7.3. При нажатии на кнопку мыши загорается соответсвующая лампочка.
7.4. Можно повесить сразу две функции на одну кнопку. Ну к напримеру я ставлю нормальный обзор совместно с увеличением. При нажатии будет увеличение, если кнопку отпустить будет обычный режим.
7.5. Подробности можно глянуть здесь http://forum.sukhoi.ru/showthread.php?t=46137
8. Ну и на последок отключите ускорение мыши. Это можно сделать, запустив программку ClockinTray. После чего ее можно будет удалить.
AxA_ShtushaKutusha


Вернуться в Джойстики

Кто сейчас на сайте (по активности за 5 минут)

Сейчас этот форум просматривают: 2 гостя

cron