|
2.9, pavlinux (ok), 19:05, 17/08/2008 [^] [^^] [^^^] [ответить] [п╨ п╪п╬п╢п╣я─п╟я┌п╬я─я┐]
| +/– |
Алгоритмы
РЕАЛЬНЫЙ:
1. ВЗЯТЬ ТЕКУЩУЮ КООРДИНАТУ
2. СПОЗИЦИОНИРОВАТЬ КУРСОР
АППРОКСИМАЦИЯ:
1. ВЗЯТЬ ПРЕДЫДУЩУЮ КООРДИНАТУ
2. ВЗЯТЬ ТЕКУЩУЮ КООРДИНАТУ
3. ВЫЧИСЛИТЬ ИНТЕРПОЛЯЦИЮ
4. СПОЗИЦИОНИРОВАТЬ КУРСОР
:)
Я только одно место знаю где это реально даёт выигрыш!!!
Только Мелкопискасофту не говорите
VNC и прочая удалённая хрень.
1. КЛИЕНТ - ПЕРЕДАТЬ ТЕКУЩУЮ КООРДИНАТУ ИЛИ ФЛАГ
2. СЕРВЕР - ВЫЧИСЛИТЬ ИНТЕРПОЛЯЦИЮ (с нулевой предыдущей будет равна текущей), ЕСЛИ ФЛАГ = СБЛИЖЕНИЕ, то вычислять не надо ибо функция интерполяции верна.
3. СЕРВЕР - ПЕРЕДАТЬ НОВЫЕ КООРДИНАТЫ
4. КЛИЕНТ - СПОЗИЦИОНИРОВАТЬ КУРСОР
ПРЕДЫДУЩАЯ КООРДИНАТА храниться на сервере, клиент передаёт флаги (С)СБЛИЖЕНИЕ, (У)УДАЛЕНИЕ, (0)СОВПАДЕНИЕ (можно не передавать). При удалении от цели, идёт коррекция.
"Основы проектирования ракет класса «воздух-воздух", В.А. Нестеров. Изд-во МАИ, 1999.
| |
|
|
2.13, eee (ok), 13:11, 18/08/2008 [^] [^^] [^^^] [ответить] [п╨ п╪п╬п╢п╣я─п╟я┌п╬я─я┐]
| +/– |
>согласно графику, появится некая инерционность прицела, что сие не позволит использовать в
>3D шутерах
Для кваки может и нет,
а для Sniper Rifle? Ж)
| |
2.14, pavlinux (ok), 15:28, 18/08/2008 [^] [^^] [^^^] [ответить] [п╨ п╪п╬п╢п╣я─п╟я┌п╬я─я┐]
| +/– |
Там нарисовано уравнение sin(2*x), инертность должна появиться при условии что вы будете
двигать со скоростью 200Hz
А в описании на сайте X.org, есть параметры:
VelocityScale [real] (Коэффициент Ускорения) или
ExpectedRate [real (Hz)] (Ожидаемая Частота)
Default is 10, which is suitable for devices reporting at approximately 100hz.
The relation between the two ways to set scaling is:
Они связаны следующим уравнением:
VelocityScale = 1000/ExpectedRate
Если порулить, то можно и инертности добиться, будешь рисовать круг,
а оно эллипс выдавать будет :)
| |
|
|
4.17, pavlinux (ok), 09:28, 20/08/2008 [^] [^^] [^^^] [ответить] [п╨ п╪п╬п╢п╣я─п╟я┌п╬я─я┐]
| +/– |
>на сколько я знаю, usb порт по умолчанию держит 120 Гц. Что
>же получается без инерции двигаться будет?
Это же модель. Я показал как ведет себя курсор при экстраполяции его движения.
То есть, если ты сможешь рукой, мышью нарисовать такой график на экране за 1/20 сек.,
то курсор будет двигаться по синей траектории.
Двумя словами - это функция движения курсора в зависимости от функции движения мыши.
В данном случае sin(2x) ~ ax^3+bx^2+cx+d
| |
|
|
|
|