|
Здравствуйте Гость ( Вход | Регистрация ) Доступ из РоссииДля сохранения достпа из России к сайту и форуму GBX
|
||||||||||||||||||||
![]() ![]() ![]() |
Вибрация Caanoo
| quasist |
Вторник, 23 ноября 2010, 11:45
Отправлено
#1
|
|
Sing along at the Opera ![]() Группа: Профи Сообщений: 3 391 Регистрация: 06 янв. 2006 Пользователь №: 14 791 ![]() ![]() |
Чтобы не тратить драгоценные человекочасы на программирование индивидуально каждого эффекта(ал-ля форс фиидбек из DirectX) решил пойти более простым способом.
Код трясёт кену в зависимости от zl_vibro Также думаю ввод вибрации сделать через функцию вроде vibe_effect(force,delay) которая будет складывать все эффекты. И конечно же сделать кривую вибрации кривой, а не квадратной как в этом коде CODE ////////////////////////////////////// #include <stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <sys/ioctl.h> #include <fcntl.h> #include <unistd.h> #include "simple_isa1200if.h" #define DEVICE_FILENAME "/dev/isa1200" int fd; void zlInitVibe(void) { fd=open(DEVICE_FILENAME,O_RDWR|O_NDELAY); ioctl(fd,IOCTL_MOTOR_DRV_ENABLE); } pattern_data_t vibedata={.act_number=4,.vib_act_array={{0,126},{10,126},{20,126},{30,0}}}; void zlProcVibe(void) { if (zl_vibro>-64) zl_vibro-=20; if (zl_vibro>-64) { vibedata.vib_act_array[0].vib_strength=zl_vibro; vibedata.vib_act_array[1].vib_strength=zl_vibro; vibedata.vib_act_array[2].vib_strength=zl_vibro; ioctl(fd, IOCTL_PLAY_PATTERN, &(vibedata)); } } void zlShutDownVibe(void) { ioctl(fd,IOCTL_MOTOR_DRV_DISABLE); close(fd); } /////////////////////////////////////// -------------------- 12 удачных сделок в барахолке gbx.ru
|
| EugeneP |
Вторник, 23 ноября 2010, 20:39
Отправлено
#2
|
![]() Маньяк ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 314 Регистрация: 15 мая. 2009 Из: Сибирь Пользователь №: 31 975 ![]() ![]() |
Уа-а--а-а ;__;
Дайтеденегнаприставочкуууууу. Тожехочубаловатьсяяяяяя. |
![]() ![]() |
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
| Упрощённая версия | Сейчас: Пт., 23 окт. 2026, 11:30 |




Вторник, 23 ноября 2010, 11:45










