Цитата
Непонятно почему if'у требуется 30 мсек для проверки цвета в конкретной точке, при том что findcolor в FullHD находит цвет меньше чем за 100 мсек.
У меня пилот никак не влияет на фпс в л2, но что-то меняется, при повороте камеры это немного заметно, даже не знаю как объяснить. Поворот камеры какой-то плавающий, даже если фпс за 100. И это не торможения и не лаги (i7 и ram-диск на весь клиент л2). Хотя привыкаешь и кажется что так и должно быть smile.gif
Опять же мои догадки. If запрашивает цвет пикселя через WinAPI, скорее всего в WinAPI эта функция не многопоточная и запросы просто складываются в очередь. Т.е. сколько раз мы не запускаем пилот - очередь будет одна и та же. При этом есть очень интересный момент - при работе через Астер одно рабочее место не влияет на другое. Т.е. на каждую сессию либо на каждого пользователя идет своя обработка. Можно кстати попробовать запустить одновременно одно приложение и пилот от двух разных пользователей и посмотреть изменится ли при этом производительность. Вторичный вход в систему в службах должен быть включен для подобных манипуляций.
То, что вы видите "подергивание" - это пропуск фрейма вывода изображения. Если фрейм попал в выводимый, то он будет пропущен и будет микрофриз. При этом фпс в приложении может почти не падать, т.к. счетчики фпс замеряют количество кадров за определенный промежуток времени и если запросы происходят не часто, то на счетчике вы не увидите существенных изменений. Например счетчик считает 5 секунд фпс и выводит срединй, т.е. будет что-то вроде 342/5. Сильную разницу вы увидите, если будет не 342, а 341? А вот изображение дернется. В качестве эксперимента сделайте скрипт состоящий только из if'а без каких либо задержек и получите реальную просадку.
Сообщение отредактировал DarkMaster - 25.9.2014, 6:30