bellkin Опубликовано: 27 марта 2014 Опубликовано: 27 марта 2014 Я как закоренелый поклонник обзора мышью не смог пройти мимо поддержки игрой 6dof Настроил скрипт GlovePIE для мышки обзора , помимо обычных вращений "виртуальной головы" по Х и Y добавлено перемещение по Х ( очень полезно ! ) и наклон головы вправо-влево ( что в общем по факту особо ничего и не даёт ) При интересе скрипт запощу в этой ветке . Тестовый ролик в архиве по ссылке . http://yadi.sk/d/u6FixHMMLJSTX С механической мушки первый раз стрелял потому так безбожно высил
Alexander Опубликовано: 29 марта 2014 Опубликовано: 29 марта 2014 Очень надо запостить сей скрипт! С нетерпением жду)
bellkin Опубликовано: 30 марта 2014 Автор Опубликовано: 30 марта 2014 (изменено) Скрипт на две мышки , первая эмулирует РУС , вторая на обзор и управление РУД колёсиком . При несовпадении номера мышки в скрипте с ситемным номером мышки ( что у меня случилось при смене материнки ) переписать в скрипте номера мышек на соотвествующие . Для определения какая мышка под каким номером в системе есть следующий скрипт : debug = mouse1.DirectInputX + ' ' + mouse2.DirectInputY + ' ' + mouse3.DirectInputZ запускаете его и шевеля мышки видим какая под каким номером в системе. Ну и собственно вышеупомянутый скрипт для БзС : ---------------------------------------------------------------------------------------------------------------------- //CODE// Тумблер F9//Вкл/Выкл джояif (F9 = false) then var.f=0if (F9 = true and var.off = 0 and var.f=0) {var.off = 1var.f=1elseif (F9 = true and var.off = 1 and var.f=0) {var.off = 0var.f=1}}if var.off =0 {// ######## Опрос мышек НАЧАЛО #######// ############ Mouse1 #######################if (Mouse2.present) {if (var.Mouse2_in = false) {// ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::Входные параметры:var.mouse2xrange = 400 // граница движения мыши по оси X, точки на дюйм (DPI)if (mouse2.DirectInputX + var.mouse2x) < -var.mouse2xrange then var.mouse2x = -var.mouse2xrange - mouse2.DirectInputX // условия, ограничивающие движение мышиif (mouse2.DirectInputX + var.mouse2x) > var.mouse2xrange then var.mouse2x = var.mouse2xrange - mouse2.DirectInputXFakeTrackIR.yaw = ensureMapRange(mouse2.DirectInputX + var.mouse2x, -var.mouse2xrange, var.mouse2xrange, -179, 179)FakeTrackIR.x = ensureMapRange(mouse2.DirectInputX + var.mouse2x, -var.mouse2xrange, var.mouse2xrange, -1, 1)FakeTrackIR.roll = ensureMapRange(mouse2.DirectInputX + var.mouse2x, -var.mouse2xrange, var.mouse2xrange, -30, 30)var.mouse2yrange = 400 // то же самое по оси Yif (mouse2.DirectInputY + var.mouse2y) < -var.mouse2yrange then var.mouse2y = -var.mouse2yrange - mouse2.DirectInputYif (mouse2.DirectInputY + var.mouse2y) > var.mouse2yrange then var.mouse2y = var.mouse2yrange - mouse2.DirectInputYvar.Mouse2_mapZ = var.Mouse2_Wheel*200var.Mouse2_Wheel = 11 //На сколько щелчков колеса мыши разбить ось джойстикаvar.Mouse2_deltaz = Delta(Mouse2.DirectInputZ)var.Mouse2_Z = var.Mouse2_Z + (var.Mouse2_deltaz)if var.Mouse2_Z < 0 then var.Mouse2_Z = 0if var.Mouse2_Z > var.Mouse2_mapZ then var.Mouse2_Z = var.Mouse2_mapZVar.Mouse2_JZ = MapRange(var.Mouse2_Z, 0, var.Mouse2_mapZ, -1 ,1)FakeTrackIR.pitch = -ensureMapRange(mouse2.DirectInputY + var.mouse2y, -var.mouse2yrange, var.mouse2yrange, -100, 120)} else {FakeTrackIR.yaw = 0FakeTrackIR.pitch = 0FakeTrackIR.roll = 0}// ########## MOUSE2 #######################if (Mouse1.present) {if (var.Mouse1_in = false) {// ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::Входные параметры:var.Mouse1_mapX = 1280 //Разрешение оси X, подбирается индивидуальноvar.Mouse1_mapY = 1024 //Разрешение оси Y подбирается индивидуальноvar.Mouse1_Wheel = 16 //На сколько щелчков колеса мыши разбить ось джойстикаvar.Mouse1_mapZ = var.Mouse1_Wheel*120var.Mouse1_X = var.Mouse1_mapX/2var.Mouse1_Y = var.Mouse1_mapY/2var.Mouse1_Z = var.Mouse1_mapZ/2var.Mouse1_in = true}var.Mouse1_deltax = Delta(Mouse1.DirectInputX)var.Mouse1_deltay = Delta(Mouse1.DirectInputY)var.Mouse1_deltaz = Delta(Mouse1.DirectInputZ)// собственно координаты мышиvar.Mouse1_X = var.Mouse1_X + (var.Mouse1_deltax)var.Mouse1_Y = var.Mouse1_Y + (var.Mouse1_deltay)var.Mouse1_Z = var.Mouse1_Z + (var.Mouse1_deltaz)if var.Mouse1_X < 0 then var.Mouse1_X = 0if var.Mouse1_X > var.Mouse1_mapX then var.Mouse1_X = var.Mouse1_mapXif var.Mouse1_Y < 0 then var.Mouse1_Y = 0if var.Mouse1_Y > var.Mouse1_mapY then var.Mouse1_Y = var.Mouse1_mapYif var.Mouse1_Z < 0 then var.Mouse1_Z = 0if var.Mouse1_Z > var.Mouse1_mapZ then var.Mouse1_Z = var.Mouse1_mapZVar.Mouse1_JX = MapRange(var.Mouse1_X, 0, var.Mouse1_mapX, -1 ,1)Var.Mouse1_JY = MapRange(var.Mouse1_Y, 0, var.Mouse1_mapY, -1 ,1)Var.Mouse1_JZ = MapRange(var.Mouse1_Z, 0, var.Mouse1_mapZ, -1 ,1)}//Опрос мышек КОНЕЦ ###########//################### Подменяем оси джойстика на оси мыши #######// Первый джойстик - управление самолетомPPJoy1.analog0 = Var.Mouse1_JX // Ось ХPPJoy1.analog1 = Var.Mouse1_JY // Ось УPPJoy1.analog2 = Var.Mouse2_JZPPJoy1.analog3 = Var.Mouse1_JXPPJoy1.analog4 = Var.Mouse2_JZPPJoy1.analog5 = Var.Mouse2_JZPPJoy1.analog6 = Var.Mouse2_JZ}}//################ Подменяем кнопки джойстика кнопками нужной мыши #####PPJoy1.Digital0 = Mouse2.LeftButtonPPJoy1.Digital1 = Mouse2.RightButtonPPJoy1.Digital2 = Mouse2.MiddleButtonPPJoy1.Digital3 = Mouse1.LeftButtonPPJoy1.Digital4 = Mouse1.RightButton// Центрирование осейif Mouse1.MiddleButton = true { //Если нажата кнопка колеса Mouse1 - Эти оси центрируютсяvar.Mouse1_X = var.Mouse1_mapX/2var.Mouse1_Y = var.Mouse1_mapY/2}} Изменено 30 марта 2014 пользователем bellkin 1
=SR=sokrus Опубликовано: 31 мая 2014 Опубликовано: 31 мая 2014 (изменено) А если мышка одна?Можно-ли сделать управление РУС на мышку, а на колесо мыши поставить зум, при этом обзор той же мышью с нажатой клавишей (например С, как в тундре)?Если не сложно, сделайте такой скрипт, пожалуйста.И еще... Вкратце как установить мышеджой? Изменено 31 мая 2014 пользователем =SR=SokRus
bellkin Опубликовано: 17 июня 2014 Автор Опубликовано: 17 июня 2014 Я скрипты не делаю , компиллирую из того что в сети попадается затачивая исключительно под себя методом проб и ошибок Как сделать две переключаемые виртуальные мышки из одной не в курсе , думаю можно . Установка ППджоя многократно описана на русском в инете , искать и постить лень , найти описание нетрудно .
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВойти
Уже зарегистрированы? Войдите здесь.
Войти сейчас