Курсор мыши в играх
Модератор: mercenary
Курсор мыши в играх
Почему-то при включённом АСТЕРе в некоторых играх (Luxor, Щизм 2, наверняка ещё есть) курсор мыши начинает мерцать с большой скоростью, на глаз - 20-30 раз в секунду. Кроме этого, тот же Luxor теряет плавность движения картинки. Ощущение такое, будто его запустили на более слабом компе. При этом на втором рабочем месте ничего не запускается и работа не ведётся. При отключенном АСТЕРе таких артефактов не наблюдается. При сравнении загрузки процессора в Диспетчере задач - разницы (принципиальной) замечено не было. В обоих случаях (с включённым АСТЕРом и выключенном), процесс Luxor занимает 97-98% ресурсов процессора.
- AsterMaster
- ИБИК
- Сообщения: 2222
- Зарегистрирован: Сб фев 05, 2005 0:48
- Откуда: Москва
- Контактная информация:
Age of Empires... Суть проблемы такова: курсор на "двухголовых" видеокартах при запуске АСТЕР преобразуется из аппаратного в программный (иначе он не мог бы существовать одновременно на двух экранах), поэтому игра, часто перерисовывающая свой экран, просто затирает курсор; отсюда мерцание. Замедление графики возможно в 2D-играх (некоторое объяснение здесь, см. DDB). В отличие от курсора, это не принципиальная проблема; некоторыми функциями 2D-ускорения пришлось пожертвовать, чтобы обеспечить стабильность систем с видеокартами RADEON. Мы намерены найти другое решение проблемы стабильности (не снижающее скорости графики), но сколько это займет времени, пока не могу сказать.
Опять курсор и ускорение
Есть такая игра The Sims superstar. Так вот, она жутко глючит по части графики. Чтобы её нормально запустить приходится заходить в настройки экрана: параметры\кнопка дополнительно\закладка диагностика\ползунок аппаратное ускорение.
Ползунок имеет 6 положений, если его задвинуть влево до упора - sims начинает нормально работать. Всё это пока не имеет отношения к Астеру. Хотя, отчасти, может и имеет, так как несмотря на то, что Астер отключает частично какое-то ускорение, sims'у этого для нормальной работы - мало
Далее, пробую запускать тот же Luxor (из под Астера) с разными положениями ползунка. Получается следующее: при всех положениях скорость игры - одинаково замедленная (из предыдущего поста - ясно почему), но! На 1, 2 и 3-й слева позиции ползунка в игре перестаёт мерцать курсор мыши, он становится нормальным. Несмотря на то, что карта - двухголовая. Второй курсор (на втором мониторе) также ведёт себя прилично.
Возникает мысль: исходя из вышеизложенного, а нельзя ли что-то такое отключить(включить) в настройках драйвера видеокарты, чтобы добиться аналогичного результата только для курсора (чтобы он не мерцал), а ускорение оставить на уровне?
Имеется ввиду, конечно, чтобы Астер сам включал(отключал - я не знаю) эту предполагаемую настройку/опцию при обнаружении двухголовой карты.
Судя по тому, что принципиально добиться немерцающего курсора - можно, хочется надеятся, что эта задача имеет решение.
Ползунок имеет 6 положений, если его задвинуть влево до упора - sims начинает нормально работать. Всё это пока не имеет отношения к Астеру. Хотя, отчасти, может и имеет, так как несмотря на то, что Астер отключает частично какое-то ускорение, sims'у этого для нормальной работы - мало
Далее, пробую запускать тот же Luxor (из под Астера) с разными положениями ползунка. Получается следующее: при всех положениях скорость игры - одинаково замедленная (из предыдущего поста - ясно почему), но! На 1, 2 и 3-й слева позиции ползунка в игре перестаёт мерцать курсор мыши, он становится нормальным. Несмотря на то, что карта - двухголовая. Второй курсор (на втором мониторе) также ведёт себя прилично.
Возникает мысль: исходя из вышеизложенного, а нельзя ли что-то такое отключить(включить) в настройках драйвера видеокарты, чтобы добиться аналогичного результата только для курсора (чтобы он не мерцал), а ускорение оставить на уровне?
Имеется ввиду, конечно, чтобы Астер сам включал(отключал - я не знаю) эту предполагаемую настройку/опцию при обнаружении двухголовой карты.
Судя по тому, что принципиально добиться немерцающего курсора - можно, хочется надеятся, что эта задача имеет решение.
- AsterMaster
- ИБИК
- Сообщения: 2222
- Зарегистрирован: Сб фев 05, 2005 0:48
- Откуда: Москва
- Контактная информация:
Этому есть простое, но мало чего обещающее объяснение. На 1-3 позициях полностью отключается ускорение DirectX, и оконная система, та, что рисует программный курсор, берет на себя всю игровую графику. При этом она синхронизирует прорисовку графики и курсора, и потому он не мерцает....На 1, 2 и 3-й слева позиции ползунка в игре перестаёт мерцать курсор мыши, он становится нормальным. Несмотря на то, что карта - двухголовая...
Когда работает ускорение DirectX, но не работает ускорение курсора, как это происходит в случае с АСТЕР, оконная система, передавая команды прорисовки ускорителю (видеодрайверу), такую синхронизацию выполнять не может, потому что точно не знает, когда и где будет идти прорисовка, поэтому курсор может мерцать, даже если конкретно под ним ничего не рисуется. Здесь курсор гасится системой, чтобы исключить появление "артефактов": при перемещении программного курсора система должна восстанавливать то, что было под ним, а для этого "запомненный" участок изображения должен соответствовать тому, что реально присутствует на экране, поэтому при малейшем "подозрении" на прорисовку в области курсора система сама его гасит, чтобы иметь возможность отследить изменения изображения под ним. Вот такое простое явление, которое сложно убрать.
Я не думаю, что хорошим решением будет полностью выключить ускорение DirectX средствами АСТЕР. В конце концов, это можно сделать вручную, если требуется. В ближайшее время мы вернемся к проблеме DDB, ее решение существенно повысит скорость игровой 2D-графики и, возможно, уменьшит эффект мерцания.
- AsterMaster
- ИБИК
- Сообщения: 2222
- Зарегистрирован: Сб фев 05, 2005 0:48
- Откуда: Москва
- Контактная информация:
В ситуации с DirectX "правильное" управление курсором ложится на плечи программиста, который пишет графическое приложение (игру), поэтому MS здесь ни при чем.
Кстати... у меня сейчас нет под рукой игры с мерцающим курсором; хочу попросить Вас проверить следующее: отключить АСТЕР с перезагрузкой, затем поставить ползунок ускорения на одну позицию влево от максимума (как раз отключение ускорения курсора) и посмотреть, как после этого будет вести себя игра (в смысле торможения и мерцания).
Кстати... у меня сейчас нет под рукой игры с мерцающим курсором; хочу попросить Вас проверить следующее: отключить АСТЕР с перезагрузкой, затем поставить ползунок ускорения на одну позицию влево от максимума (как раз отключение ускорения курсора) и посмотреть, как после этого будет вести себя игра (в смысле торможения и мерцания).
При отключенном Астере и сдвинутом влево на одну позицию ползунке ускорения - игра не тормозит, но курсор мерцает как бешеный. Наверное, да, курсор - это глюки разработчиков игр. Они просто не тестируют их с отключенным ускорением курсора. А вот вопросик: а нельзя ли на одной "голове" видеокарты оставить аппаратный курсор, а на второй - программный? Поскольку, как я понимаю, разработчики видеодрайверов (или даже видеочипов) не озаботились поддержкой двух аппаратных курсоров.
- AsterMaster
- ИБИК
- Сообщения: 2222
- Зарегистрирован: Сб фев 05, 2005 0:48
- Откуда: Москва
- Контактная информация:
Пробовали. Второе место (где отключен аппаратный курсор) начинает использовать обычно отведенную для курсора видеопамять для собственных нужд, и, соответственно, аппаратный курсор на первом месте приобретает зловещие формы. Здесь нужно найти какое-то очень хитрое решение. Будем устранять проблему с 2D-графикой, тогда, надеюсь, оно и родится....а нельзя ли на одной "голове" видеокарты оставить аппаратный курсор, а на второй - программный?
- AsterMaster
- ИБИК
- Сообщения: 2222
- Зарегистрирован: Сб фев 05, 2005 0:48
- Откуда: Москва
- Контактная информация:
Когда Вашу версию делали, мы немного поторопились и забыли включить утилиту настройки ускорения (и русифицировать установку). Пожалуйста, загрузите ее еще раз и переустановите. Почитать можно здесь.
"Двухголовая" видюха Asus ENGTX280, WinXP SP3. Перепробовал все советы, что нашёл на форуме, но ни включение аппаратных курсоров, ни отключение ускорения курсора мыши путём перевода ползунка на одну-две позиции влево от максимума проблему не решили (вообще не заметил изменений). Игры "SpellForce", "Silverfall" - курсор мыши всё равно мерцает и вносит артефакты. Вчера пытался решить проблему при помощи 2-й видеокарты, но примирить основную видюху с PCI Radeon 7200 так и не смог, попробую сегодня S3-шку установить (мне на втором месте мощностей не нужно), если не удастся, не знаю уж что и делать.
- AsterMaster
- ИБИК
- Сообщения: 2222
- Зарегистрирован: Сб фев 05, 2005 0:48
- Откуда: Москва
- Контактная информация:
Отключать ускорение курсора не нужно, потому что "ускорение курсора" - это собственно аппаратный курсор. В настройках АСТЕР аппаратный курсор нужно включить (лучше только для одного главного места). Проверяйте результат при незапущенном втором месте (автозапуск АСТЕР нужно отключить). Если при этом курсор продолжает мигать, тогда, возможно, Вы установили одну из специальных версий АСТЕР. Если Вы загружали АСТЕР из этой темы ( //forum.ibik.ru/viewtopic.php?t=10861 ), тогда посмотрите, там ниже есть инструкции по включению аппаратных курсоров.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 43 гостя