{{notification.text}}

MirGames

Студент
11.01.09 17:09
0
Вот, собственно вопрос: как кроссплатформенно обрабатывать ждойстик с вибрацией?
Сначала я подумал, что SDL - решение всех головных болей, связанных с кроссплатформенностью. Но зачем он мне нужен без вибры? Конечно, использование аналогов - это уже круто, но всё-таки использование хардвара не на полную мощность - не есть хорошо.
В общем, под форточками, разумеется можно использовать DINPUT, а что делать под Linux'ом? Прямиком через иксы? А что делать под Mac OS X?
И поддерживается ли вибра под Linux или Mac OS X вообще?
#1
Студент
11.01.09 19:17
0
Ну как? Мыслей вообще нету? :) Опять на гд идти, что ли за ответами? (:
#2
Студент
11.01.09 19:44
0
Хех... Была идея даже доработать SDL. увидел, что там через WinMM, а не через DirectInput и забил на это дело :(.
Так есть у кого каие идеи?
#3
12.01.09 02:46
0
Pierre Kurochkin у меня на моём джостике не было вибрации....я так думаю что это всего-навсего "кнопка", нажимаемая компом....а иначе были бы огромные мучения в разных джостиках....я думаю стоит в эту сторону ковырять...ну или абстрактно представить что это как лампочика "Капслока" на клавиатуре можно ведь определить её нажатие....
#4
аксакал
12.01.09 07:33
0
lans
Реальность значительно суровей...
#5
12.01.09 12:46
0
Не знаю как насчет никсов, но под виндой - DirectInput only.
Ну и управление обратной связью - аналоговое. Для вибрации это амплитуда вибрации (хотя точно не уверен), для рулей/джойстиков - сила, прикладываемая к элементу управления.
#6
12.01.09 13:56
0
Цитата(XProger @ Сегодня, 03:33)
[snapback]91771[/snapback]
Реальность значительно суровей...

настолько суровей, что в Linux к джойстику через /dev/input/js* обращаются 8) Хотя все довольно просто, но что с вибрацией, я без понятия :)
#7
Студент
12.01.09 14:20
0
В общем, дело было так...
Посмотрел в сторону примера FFConst из DirectX SDK (раздел DirectInput, естественно). Хотел было помочь в развитии SDL. Скачал исходники, увидел, что файл joystick.c отныне используется dx_joystick.c, а не mm_joystick.c. Понял более-менее, как там всё устроено, решил попробовать сбилдить - ничего не получилось. Ну, подумал - SVN, так SVN, попробую скачать стабильные сурцы. Скачал - сбилдились, но как на зло нету dx_joystick.c.
Решил написать об этом автору модуля - написал, сразившись с антиспамом, вскоре получил ответ:
Цитата

>>Hello! For begin: sorry for my english - I'm from Russia.
>>I want to use SDL for cross platform processing input. But SDL does not contain functions for work with vibration (force feedback).


Yes, it does, in SDL 1.3 PRERELEASE:
http://www.libsdl.org/tmp/SDL-1.3.zip

Check out include/SDL_haptic.h

See ya!
-Sam Lantinga, Founder and President, Galaxy Gameworks LLC

Посмотрел - в 1.3 реально есть все необходимые файлы, но сбилдить не удалось, так что пока обойдусь без вибрации, и буду использовать SDL, а потом уже буду юзать вибрацию через SDL :) Т.к. она там не только под Windows, но и под Linux и под Mac OS X.
Под форточками реально используется DI и никаких хитрых средств, видимо, не существует.
#8
12.01.09 14:35
0
Цитата(petyakurochkin @ Сегодня, 10:20)
[snapback]91777[/snapback]
Yes, it does, in SDL 1.3 PRERELEASE:
http://www.libsdl.org/tmp/SDL-1.3.zip

Хммм, посмотрим-посмотрим :)
#9
Студент
12.01.09 19:03
0
Ну :) Как посмотрел?
#10
12.01.09 20:26
0
petyakurochkin
не, я только на заметку взял :) А сам писать вряд ли подобное буду в обозримом будущем, как-то без самого девайса маньячить как XProger не охота :) Занимался уже подобным, не вставило )
#11
аксакал
12.01.09 22:36
0
Andru
Стареешь ;)
Я пока под линухом джойстик не реализовывал, так что всё в перспективе... оставил на чёрный день )
#{{post.Index}}
{{post.Author.Login}}
{{post.CreatedDate | date:'dd.MM.yy HH:mm'}}
{{post.VotesRating}}
Отредактировано: {{post.UpdatedDate | date:'dd.MM.yy HH:mm'}}