Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 31.05.2017, 15:29
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 31  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,283
вообще странно такой способ перехода должен быть равносилен простому растягиванию флэшки на весь экран.Может что-то с пересозданием/потерей гл контекста?

Старый 31.05.2017, 16:01
illusion21 вне форума Посмотреть профиль Отправить личное сообщение для illusion21 Посетить домашнюю страницу illusion21 Найти все сообщения от illusion21
  № 32  
Ответить с цитированием
illusion21

Регистрация: Jul 2004
Сообщений: 113
Цитата:
Сообщение от undefined Посмотреть сообщение
вообще странно такой способ перехода должен быть равносилен простому растягиванию флэшки на весь экран.Может что-то с пересозданием/потерей гл контекста?
Контент не пересоздаю. В JS вашим кодом сначала перевожу элемент флэшки в фулскрин, при этом получаю приложение в исходном размере посередине черного экрана. Далее там же в JS растягиваю флэшку до размера screen.width и screen.height. Визуально имею аналогичную картинку как при стандартном флэшовом фулскрине, но с тормозами при отрисовке 3д.

Вы как-то по-другому делаете фулскрин в своем приложении?
__________________
Играем в браузерный онлайн 3D бильярд тут - http://billiards3d.net

Старый 31.05.2017, 16:19
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 33  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,283
Давай на ты.
Да, у меня флэшка сама растягивается на весь экран по ивенту Event.RESIZE у stage.Подозреваю что у тебя стейдж настроен неправильно т.к. твоя флэшка не предполагает изменение размеров.Отсюда и тормоза - скорее всего браузер растягивает флэшку через cpu а не gpu.Попробуй выставить стейджу
Код AS3:
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
я почти уверен что все тормоза из-за растягивания флэшки средствами js.У меня таких костылей нету.

Старый 31.05.2017, 16:54
illusion21 вне форума Посмотреть профиль Отправить личное сообщение для illusion21 Посетить домашнюю страницу illusion21 Найти все сообщения от illusion21
  № 34  
Ответить с цитированием
illusion21

Регистрация: Jul 2004
Сообщений: 113
Цитата:
Сообщение от undefined Посмотреть сообщение
Давай на ты.
Да, у меня флэшка сама растягивается на весь экран по ивенту Event.RESIZE у stage.Подозреваю что у тебя стейдж настроен неправильно т.к. твоя флэшка не предполагает изменение размеров.Отсюда и тормоза - скорее всего браузер растягивает флэшку через cpu а не gpu.Попробуй выставить стейджу
Код AS3:
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
я почти уверен что все тормоза из-за растягивания флэшки средствами js.У меня таких костылей нету.
Эти вот вещи у меня также выставлены:

Код AS1/AS2:
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
По поводу изменения размеров. В HTML коде на этапе встраивания флэшки через swfobject.embedSWF у меня указана ширина и высота флэш объекта и когда я перевожу объект в фулскрин через JS, то у меня сама флэшка остается той же ширины и высоты как была. Сама на весь экран не растягивается, поэтому из JS я обращаясь к этому объекту меняю ему ширину и высоту вот так

Код AS1/AS2:
document["Billiards3D"].webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT);
document["Billiards3D"].width = screen.width;
document["Billiards3D"].height = screen.height;
После этого уже флэша отлавливает Event.RESIZE у stage и перемещает элементы UI в соответствии с новыми размерами.
__________________
Играем в браузерный онлайн 3D бильярд тут - http://billiards3d.net

Старый 31.05.2017, 17:30
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 35  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,283
у нас флэшка встраивается так:
Код:
 swfobject.embedSWF(`puzzles.swf?${process.env.VERSION}`,
          this.flashEl,
          '100%', '100%',
          config.flash.requiredVer,
          'expressInstall.swf',
          {
            version: process.env.VERSION,
            token: user.token,
            userID: user.id,
            userName: user.name,
            FBConnected: true,
            url: `puzzles.swf?${process.env.VERSION}`,
          },
          { ...config.flash.params });
где:
Код:
flash: {
    requiredVer: '17.0.0',
    params: {
      menu: false,
      bgcolor: '#613D33',
      wmode: 'opaque',
      scale: 'noScale',
      allowScriptAccess: 'always',
      allowFullScreen: 'true',
    },
  }
Добавлено через 2 минуты
никаких screen.width/height при этом не требуется.

Добавлено через 17 минут
попробуй размеры флэшки выставить в 100%

Старый 31.05.2017, 17:54
illusion21 вне форума Посмотреть профиль Отправить личное сообщение для illusion21 Посетить домашнюю страницу illusion21 Найти все сообщения от illusion21
  № 36  
Ответить с цитированием
illusion21

Регистрация: Jul 2004
Сообщений: 113
у вас width/height не требуется потому как они установлены изначально в '100%', '100%' и поэтому автоматом растягивает. У меня так нельзя по нескольким причинам, поэтому изменение размеров из кода, но по сути никакой принципиальной разницы тут нет. Все остальные параметры по сути такие же за исключением wmode, который у меня direct так как приложение 3D. Видимо для Stage3D все-таки есть какая-то разница на глубинном уровне в плане того как именно его в фулскрин перевели.
__________________
Играем в браузерный онлайн 3D бильярд тут - http://billiards3d.net

Старый 31.05.2017, 18:03
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 37  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,283
не должно т.к. для флэшки это простое изменение размеров(displayState не меняется,FullScreenEvent.FULL_SCREEN не кидается)
А если убрать
Код:
document["Billiards3D"].webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT);
Флэшка тоже тормозить будет?

Старый 31.05.2017, 18:44
illusion21 вне форума Посмотреть профиль Отправить личное сообщение для illusion21 Посетить домашнюю страницу illusion21 Найти все сообщения от illusion21
  № 38  
Ответить с цитированием
illusion21

Регистрация: Jul 2004
Сообщений: 113
угу.. тормозит.
https://cloud.mail.ru/public/9Xvd/rKHLsc6XH
Вот тут по ссылке архив с парой видео где видна разница. Там где нормально.mp4 Это стандартный фулскрин. Мелкие подергивания есть но в рамках нормы для PPAPI (в фаерфоксе и IE там вообще никаких косяков)... а вот где тормозит.mp4 видны явные дерганья и залипания шаров.
__________________
Играем в браузерный онлайн 3D бильярд тут - http://billiards3d.net

Старый 31.05.2017, 18:51
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 39  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,283
Цитата:
угу.. тормозит.
ну значит дело таки в растягивании флэшки средствами js,а не в фулскрине как таковом.Почему бы не попробовать контейнеру флэшки выставлять нужные размеры, а флэшку эмбедить с width/height="100%"?
ps:ссылка битая

Старый 31.05.2017, 18:54
illusion21 вне форума Посмотреть профиль Отправить личное сообщение для illusion21 Посетить домашнюю страницу illusion21 Найти все сообщения от illusion21
  № 40  
Ответить с цитированием
illusion21

Регистрация: Jul 2004
Сообщений: 113
Цитата:
Сообщение от undefined Посмотреть сообщение
Почему бы не попробовать контейнеру флэшки выставлять нужные размеры, а флэшку эмбедить с width/height="100%"?
ps:ссылка битая
Это как? Ссылку поправил.. на яндекс-диск не хотел форум принимать, перезалил на mail
__________________
Играем в браузерный онлайн 3D бильярд тут - http://billiards3d.net

Создать новую тему Ответ Часовой пояс GMT +4, время: 21:48.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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