Цитата(DarkMaster @ 7.6.2018, 15:42)
Тут просто нечему работать 21 секунду кроме непосредственных вэйтов. На чем время убивалось? linedelay через set прописывал? Логгирование было выключено?
Первая строчка-же.
Цитата(DarkMaster @ 7.6.2018, 15:42)
Есть некоторые вопросы по поводу if x y color, т.к. он ждет синхронизации кадра и при низком фпс это может негативно сказываться на производительности. Чтобы этого избежать можно использовать findcolor.
Там есть лесенка из if'ов (OCR на коленке) вот она работает долго. То есть визуально видно что первая буква отрабатывает сильно быстрее. В своей проге я на этапе поиска надписи делаю постоянно скриншоты, а потом уже расшифровку надписи делаю на снятом изображении.
Цитата(DarkMaster @ 7.6.2018, 15:42)
// Если бы написал на Lua, который теперь встроен в пилот, то время выполнения непосредственно интерпретации было бы погрешностью и занимало бы значительно меньше секнуды.
Я вот зашел на сайт по пилоту и как-то там не нашел что теперь тут можно на луа писать. Возможно проблема в этом ))
PS как быстро вытаскивать изображение? У меня пока такой код (самый медленный, как я понял):
Код
private static void GetImage(IntPtr hwnd) {
Graphics memoryGraphics = Graphics.FromImage(bmp);
IntPtr dc = memoryGraphics.GetHdc();
PrintWindow(hwnd, dc, 0);
memoryGraphics.ReleaseHdc(dc);
}
bmp - глобальная битмапа один раз созданная.
Do. Or do not. There is no Try!
© Master Joda, Dagobah, Star Wars: Episode V.