![]() |
Замена BW фильтру
Есть около 100 Image-s на экране.
Нужен способ сделать всех чёрно-белыми (потом еще красными). Фильтр не подходит, так как на довольно сильном десктоп гпу (i5-2500) падает до 17 кадров в секунду. Для кеширования фильтров нужно создавать фильтр для каждого имажа. Создание дополнительных текстур рассматривается в последнюю очередь. Буду рад любым советам и ответам! |
Способ 1: Пишете на AGAL шейдер, который будет перекрашивать объекты на экране в реальном времени.
Способ 2: Пишете на PixelBender шейдер, который перед запуском сразу создаст перекрашенную текстуру. Можно комбинировать, сначала создать одну чб текстуру перед запуском, а затем подкрашивать разные image разными цветами при помощи AGAL. |
да, про агал не вспомнил, спасибо! ушел ковырять!
|
BW фильтр на AGAL, что-бы проще было разбираться:
Код AS3:
|
Уже +10 кадров есть с вашим классом!
А что там еще можно оптимизировать? |
Не знаю, вам виднее должно быть :)
Это зависит от конкретной задачи. Опишите более подробно во всех деталях, что именно вы хотите сделать. |
тут хорошо видно - http://sk-express.ru/plantasia/ (выбрать любой уровень)
есть поле с цветами, 80 типов спрайта (20 типов цветов по 4 фазы каждый), в какой то момент все цветы могут стать серыми, затем красными используется as3isolib портированный на старлинг, у каждого iso объекта есть свой спрайт цветка в контейнере сейчас ко всем имажам применен фильтр, для теста |
Демка у меня летает. Правда, точно fps посмотреть не смог, датчик слишком мелкий, не разобрать. Вообщем, такое количество спрайтов не должно особо напрягать gpu.
С isolib не знаком, но могу дать несколько советов по Starling:
|
ctrl - + на странице
или кнопка FullScreen там снизу на часах |
60 fps
Cpu: 4x 4.20 GHz Gpu: Radeon R7 200 Провести мониторинг через AdobeScout очень рекомендую. |
| Часовой пояс GMT +4, время: 20:47. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.