У меня возникла странная проблема, в основном в Java Graphics.drawImage() на некоторых компьютерах очень медленная, и быстрее на других. Это не связано с потребностями компьютеров, некоторые более слабые компьютеры работают нормально, а некоторые более сильные, похоже, задыхаются при вызове drawImage.
Это может быть или не быть связано с шириной и высотой, я имею очень большую ширину и высоту (что-то вроде 5000 на 2500). Я бы не подумал, что это проблема, за исключением того, что я сказал, что она работает в режиме реального времени на некоторых компьютерах и медленнее на других и, похоже, не привязана к относительной мощности компьютеров.
Оба компьютера имеют одну и ту же версию Java, оба используют Vista. У одного есть 1.83ghz Core 2 Duo с 1 ГБ оперативной памяти и встроенной графикой (все отлично работает), у другого - двухъядерный Core 2 Duo с диагональю 2,53 ГГц и 9600GS (последние драйверы nVidia) и 4 ГБ ОЗУ, и он буквально разыгрывает вызов drawImage.
Любые идеи?
edit: ok, это действительно странно, я рисую изображение в окне в Swing, теперь, когда я изменяю размер окна и делаю его очень маленьким, изображение также уменьшается и оно становится маленьким. Внезапно все работает гладко, когда я масштабирую его до размера, до того, как он все еще работает плавно!
У него также есть несколько проблем с монитором, если я делаю трюк с изменением размера, чтобы заставить его работать быстрее на одном мониторе, а затем прокручивать его на другой монитор, когда более половины окна находится на новом мониторе, и оно снова начинает прерываться. Я должен изменить размер окна снова на маленький, а затем вернуться к исходному размеру, чтобы вернуть скорость.
Если я нахожу трюк с изменением размера на одном мониторе, переместите его на другой, конечно, chugs, но если я верну его обратно к исходному монитору, на котором я сделал трюк с изменением размера, он работает на 100%
Если у меня есть два окна разворота (отображение одного и того же изображения), они оба работают медленнее, но если я сделаю трюк изменения размера в одном окне, они оба начнут работать плавно (однако это не всегда так).
*, когда я говорю об изменении размера окна, я имею в виду сделать его настолько маленьким насколько возможно, что изображение не может быть действительно видно.
Возможно, это может быть ошибка на Java?