![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
может это из-за частоты синхронизации монитора, 60гц почти везде, а 45 кадров не попадает почти каждый 2-й кадр
|
|
|||||
|
Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
|
Проблема именно на девайсах. Не на компьютерах.
|
|
|||||
|
собрал апп
тормозов не заметил на 45фпс есть на веб версии дерганье на устройстве и 60 и 45 все отлично айр сдк 17 устройство - http://www.notebookcheck-ru.com/Obzo....132016.0.html проц 4ядра MT8127 гпу Mali-450MP4 (по тестам раза в 4 медленней Sony Xperia Z2 Tablet) проект - http://www.flasher.ru/forum/attachme...&d=1429532380k Последний раз редактировалось ShockWave512; 20.04.2015 в 16:20. |
|
|||||
|
Lorem ipsum
|
Рекомендуется заливать вложения на форум. Только так можно гарантировать доступность всех важных файлов.
__________________
Поймай яблоко 2! |
|
|||||
|
Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
|
Изменил немного код Rotator, чтобы было более похоже на мой вариант. На Galaxy Tab FPS упал с 60 до 35, но при этом гладкость осталась приемлемой. Видимо, мои проблемы в чем-то другом.
package { import starling.animation.Tween; import starling.core.Starling; import starling.display.Sprite; import starling.events.Event; import starling.utils.deg2rad; import starling.utils.HAlign; import starling.utils.VAlign; /** * ... * @author Roma Kraminskij - kraminskij@gmail.com */ public class Rotator extends Sprite { private const REV:int = 24; private var _wheel : Sprite = new Sprite(); public function Rotator() { super(); this.alignPivot( HAlign.CENTER, VAlign.CENTER ); x = 300; y = 300; // wheel's back for ( var i:int = 0; i < 5; i++ ) { p = new Part(); p.x = -100 + 20 * i; p.y = -100 + 20 * i; _wheel.addChild(p); } // wheel's sectors for ( i = 0; i < REV; i++ ) { var p:Part = new Part(); p.rotation = Math.PI * 2 / REV * i; _wheel.addChild(p); } addChild( _wheel ); // objects over wheel for ( i = 0; i < 5; i++ ) { p = new Part(); p.x = 200; p.y = -300 + 100 * i; addChild(p); } this.addEventListener(Event.ADDED_TO_STAGE, addHandler ); } private function addHandler(e:Event):void { removeEventListener(Event.ADDED_TO_STAGE, addHandler); var t:Tween = new Tween(_wheel, 1000 ); t.animate("rotation", deg2rad(360*REV)); Starling.juggler.add(t); } } } |
|
|||||
|
- сколько DrawCalls? если что понижать ниже 5, битмап шрифт, единственный атлас на всё, никаких фильтров
- подключить Scout, в теории он сразу покажет на узкое место на девайсе |
|
|||||
|
Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
|
Цитата:
Относительно остального - это же не баннер с одним колесом. Там довольно много всего наверчено. Все элементы вью (колесо, фон и объекты над колесом) - это в одном атласе. Есть еще видимые элементы интерфейса панели пользователя - они во втором. Есть еще самый разный зоопарк, который был на экране до колеса - он убран с экрана. Кстати, если уменьшить скорость вращения до чисто символической (оборот за 2.5 секунды), то все довольно гладко выглядит. Хотя скорость и маловата. Цитата:
Но по моему опыту его использования он не показывает, что происходит именно на девайсе. Или это какой-то особый скаут? |
|
|||||
|
может и особенный
![]() позже гляну как он с девайса по Stage3d инфу закидывает |
|
|||||
|
Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
|
В общем, основная причина тормозов была в том, что за слоем с колесом (там бэк на весь экран и по центру колесо) оставался предыдущий интерфейс основной игры. Он, как выяснилось, тоже участвовал в рендеринге. Пришлось выставить ему visible=false.
И второе, что помогло - запекание в рендерТекстуру. Примерно 5 попугаев дает по сравнению с флаттеном. |
![]() |
![]() |
Часовой пояс GMT +4, время: 00:11. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|