PDA

Просмотр полной версии : Тормоза в браузере


Боня
27.06.2011, 01:36
Я пытался сам найти причину, но пока что безуспешно.
Если я запускаю *.swf с папки, то fps = 120. А если вызываю его через php страничку, выдаёт 60. Причём во всех браузерах(chrome, opera, mazila). На компе стоит windows XP(32 bit).
Пробовал на другом компьютере, там всё норма fps так же 120. Но на нём windows 7(64 bit).

На обоих Adobe Flash Player 10.
Заранее спасибо.

mooncar
27.06.2011, 01:44
Это ограничение. В браузере выше не будет. Насчет 7-ки не в курсе, но в браузерах под XP всегда так было.

Боня
27.06.2011, 01:46
mooncar
Но ведь на одном компьютере все 120.
Можно ли это ограничение как-то снять или что-то ещё?

mooncar
27.06.2011, 02:07
Точно не знаю, почему может быть 120. Может быть какие-то нюансы плеера под windows 7(64 bit).
Вообще, конечно, запредельный fps, не все компы смогут отобразить это. Если приложение выкладывается в инет, выше 31 fps редко когда ставят. Разве что будучи уверены, что анимации не очень много, и все компы потянут.
Нельзя забывать еще, что и моники дают ограничение, тоже не все способны показать 120 кадров в секунду.

Боня
27.06.2011, 10:06
mooncar Спасибо.
Если кто ещё, чтонибуть знает, то отпишитесь пожалуйсто.
Только что провёл тест ещё на одном компе, выдаёт все 120(windows xp, проц 1.53 ГГЦ), т.е. этот комп в 2 раза хуже предыдущего(того что 60 выдаёт).
Просто на том, что 60 светит какой-то ограничитель стоит. Буду искать.

mooncar
27.06.2011, 10:38
Попробуй еще FP обновить.

Боня
27.06.2011, 10:58
Я вчера ставил спец. для IE. Сейчас попробую поставить для всех остальных.

etc
27.06.2011, 18:22
У браузерной версии потолок 60.

Боня
27.06.2011, 23:14
etc У браузерной версии потолок 60.
Но почему на других и более слабых компьютерах 120. При учёте, что я удалил всю анимацию и просто ставлю *.swf с подсчётом fps.
Полагаю проблема кроится в заимодействии софта. Типа глюкнутая windows XP + Flash Player. Просто больше логических объяснений дать не могу.

mooncar
27.06.2011, 23:46
А как вы замеряете fps?

Боня
28.06.2011, 00:00
addEventListener(Event.ENTER_FRAME, Takt);

var timer1:int;
function Takt(e:Event):void
{
fpsCount++;
var nd:int = getTimer() - timer1;
if (nd >= 1000)
{
fpsTime.text = uint(fpsCount/nd*1000);
timer1 = getTimer();
fpsCount = 0;
}
}

dark256
28.06.2011, 10:33
Вам уже 7 раз написали, что 31 - достаточно. За глаза и за уши.
Нет, вам надо 120.
На 60 - если у вас десяток onEnterFrame есть - все и будет тормозить.
Ставьте 31 и удивляйтесь.

etc
28.06.2011, 18:20
etc У браузерной версии потолок 60.
Но почему на других и более слабых компьютерах 120. При учёте, что я удалил всю анимацию и просто ставлю *.swf с подсчётом fps.
Полагаю проблема кроится в заимодействии софта. Типа глюкнутая windows XP + Flash Player. Просто больше логических объяснений дать не могу.

Flash Player и браузер должны быть последних версий. И да, как уже говорилось, стандарт — 31.