Перейти к содержанию
  • Регистрация
  • 0
Alex7wrt

Можно ли изменить значения AniFrameRate только для одной анимации?

Вопрос

Всем здравствуйте!

Столкнулся с такой проблемой. При изменении свойства AniFrameRate у одного объекта TFloatAnimation c дефолтных 60 до 10 или другого меньшего чем 60 значения, все анимации на форме, а не только эта, начинают тормозить, как будто этот параметр поменялся для всех анимаций, пока не поменяешь обратно. Для больших 60 значений все нормально. ))

Вопрос: отчего так происходит?

Изменено пользователем Brovin Yaroslav

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Рекомендуемые сообщения

  • 0

Решения пока не нашел. Но заметил интересную вещь. При дефолтных 60 фпс приложение с несколькими компонентами анимаций в Windows грузит процессор на 15%. При изменении же этого параметра у любой одной анимации на значение 50, загрузка процессора падает до 0. Хотя визуально разницы практически не видно. Вот вам и способ повышения быстродействия анимации )).

Не знаю, в чем прикол. Возможно, при 60 фпс процессор участвует в отрисовке, а при меньшем значении всю отрисовку выполняет видеокарта. Возможно, что это так только на моем компе. Но в Android при 50 тоже приложение шустрее работает, (хотя это конечно понятно), но на глаз ощутимее, чем 17% снижения фпс.

Изменено пользователем Alex7wrt

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Добрый день,

  • TAnimation.AniFrameRate  - это классовая переменная. Она существует в единственном экземпляре для всех аниматоров. 
  • Изменить ее локально для одного аниматора/анимации не возможно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.

  • Похожий контент

    • От sviat9440
      Привет. В общем у меня есть с горем пополам стилизованный WindowBorder, на нем есть три кнопочки (закрыть, свернуть, развернуть соответственно). Для каждой из них в стилях установлена смена цвета при MouseOver = True, все прекрасно работает, цвет меняется при наведении и возвращается в исходное состоянии при перемещении мыши на другой объект. Но если быстро переместить мышь например из кнопки "Закрыть" за пределы формы, но не срабатывает триггер MouseOver = FalseMouseOver, и кнопка остается в "активном" состоянии до возвращения мыши в любую часть формы. Есть ли решение этой проблемы?
      Заранее спасибо.
    • От Egorius
      Как запустить анимацию с кнопки для другого компонента?

      К примеру с Button  кликом запустить анимация для вызова например анимированного объекта Panel?
    • От brunnengi
      Здравствуйте.
      Где можно посмотреть пример работы компонента TBitmapListAnimation?
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...