Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Актуально ли переносить управление с as3 на JavaScript (http://www.flasher.ru/forum/showthread.php?t=186417)

mrMEM 02.11.2012 13:54

Актуально ли переносить управление с as3 на JavaScript
 
я занимаюсь разработкой одной игры и сейчас мы разбираемся с проблемой в плеере Chrome (Papper плеер).
на наших машинах этот плеер выдает лаги
в 1.5-2 раза работает медленнее Adobe плеера
но больше меня волнует то, что когда одновременно работает Papper плеер и программа Punto Switcher возникают лаги, такие, что играть невозможно. и по большому счету это баг Punto Switcher-а, но устранение его маловероятно.
наши статистические данные показывают, что пользователи часто используют оба продукта


я хотел бы узнать, сталкивался ли кто-то с этой проблемой?

у меня есть один вариант решения.
можно попробовать переложить управление "WSAD" с as3 на JavaScript.
Не будет ли ExternalInterface выдавать еще большие лаги?
какие нюансы возникнут, если использовать ExternalInterface, быть может в других ситуациях он поведет себя еще хуже?

хочу узнать, ни кто не занимался этим?
может быть у кого-то есть идеи решения этой проблемы

З.Ы.: Естественно приняты меры и пользователям рекомендуется отключать Papper плеер и Punto Switcher. Однако нужны и другие технологические решения

XoJlToH 02.11.2012 18:15

Можно немного подождать и, возможно, в следующей версии будет меньше багов :) Усиленно молимся на гугель

mrMEM 06.11.2012 13:39

не) это нереально

эту проблему они решать не будут

Hauts 06.11.2012 14:10

Как вариант — можно поставить некоторое кол-во проверок просто.

В js смотрим браузер и версию фп. В зависимости от этого передаем флэшке через флэшвары флажок, использовать ли "внешнее" управление из яваскрипта.

wvxvw 06.11.2012 14:30

А есть подозрение, что именно захват пользовательского ввода имеет ключевое значение в лаге?
Pepper API это всего лишь оболочка, внутри - тот же плеер, API занимаются общением между плеером и браузером. Так что шансов от перекладывания ответственности на Яваскрипт скорее всего не просто не прибавится, а уменьшится, т.как сообщение между флешем и Яваскриптом осуществляется через эту оболочку.

Трудно что-то посоветовать... нужно точно установить проблему. И совсем не обязательно проблема в PPAPI, она так же может быть и в вашем коде, в каких-то неявных моментах работы с окружением. Например, предположим такую ситуацию: NPAPI передает событие мыши во Флеш раз в 40 миллисекунд, а PPAPI делает это раз в 20 миллисекунд. При этом у вас есть слушатель во флеше, который реагирует на события мыши - казалось бы гугловская оболочка работала лучше (чаще передавала события), но изза того, что обработчик не справлялся вовремя - получалось наоборот.

Нужно тестировать, найти точную причину, и тогда можно и к Гуглу идти с багом, а может и локально можно будет исправить / подстроится.

mrMEM 06.11.2012 16:59

понял, что переход на JS плохая идея

Добавлено через 4 минуты
"И совсем не обязательно проблема в PPAPI, она так же может быть и в вашем коде"
проблема проявляется в других играх

Добавлено через 20 минут
есть еще между этими плеерами разница:
Adobe работает с DirectX
Papper с OpenGL

wvxvw 06.11.2012 17:58

Да ну, Адоби работает с DirectX на Маке? :) Откуда ему там взяться? Это ж Майкрософтвская технология. Аналогичцно OpenGL может поддерживаться / не поддерживаться драйвером установленной видеокарточки. Но в целом, это не зависит от плеера, это зависит от платформы, и тех функций, которые там используются для отрисовки выбраным фреймворком.
У остальных могут быть лаги по точно той же причине, что и у вас, и вовсе не обязательно, проблема именно в PPAPI. Чтобы утверждать с уверенностью, нужно найти причину. Корелляция, как известно, не является достаточным основанием для доказательства.

mrMEM 06.11.2012 18:09

хм.. а ведь Адобы говорили, что Molehill поддерживает как DirectX так и OpenGL
если это так, то если есть проблемы связанные с OpenGL, Google не при делах


Часовой пояс GMT +4, время: 11:47.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.