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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 23.06.2016, 17:11
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 11  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Сделайте чтоль пример какой простенький, для демонстраций проблемы. Может быть, так вам быстрее помогут.
__________________
Дети не должны знать о своих родителях

Старый 23.06.2016, 17:19
Egstond вне форума Посмотреть профиль Отправить личное сообщение для Egstond Найти все сообщения от Egstond
  № 12  
Ответить с цитированием
Egstond

Регистрация: Mar 2016
Сообщений: 52
Цитата:
Сообщение от Tails Посмотреть сообщение
Сделайте чтоль пример какой простенький, для демонстраций проблемы. Может быть, так вам быстрее помогут.

Вот картинка. Проблема в пустоте, которая выглядит некрасиво. Пришла в голову идея, поставить фон-картинку, но она закрывает рабочее окно.
Миниатюры
Нажмите на изображение для увеличения
Название: 555.jpg
Просмотров: 35
Размер:	56.7 Кб
ID:	32231  

Старый 23.06.2016, 17:28
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 13  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Всё очень просто:
  1. Выставляем stage.align в StageAlign.TOP_LEFT.
  2. Выставляем stage.scaleMode в StageScaleMode.NO_SCALE.
  3. Подписываемся на событие RESIZE
  4. Один раз в начале и далее по событию ресайза позицианируем и масштабируем контент так как нам нужно.

Бэграунд растяните или зарепитите, основной контент отпозицианируйте по центру.
Нужные разделы справки:
http://help.adobe.com/ru_RU/FlashPla...html#scaleMode
http://help.adobe.com/ru_RU/FlashPla...age.html#align
http://help.adobe.com/ru_RU/FlashPla...tageAlign.html
http://help.adobe.com/ru_RU/FlashPla...ScaleMode.html

пс. Всё это нужно делать в рамках stage3D.
__________________
Дети не должны знать о своих родителях

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

Регистрация: Mar 2016
Сообщений: 52
Цитата:
Сообщение от Tails Посмотреть сообщение
Всё очень просто:
  1. Выставляем stage.align в StageAlign.TOP_LEFT.
  1. Зачем? Мне не нужно чтобы stage была в левом углу, она должна быть в центре, как и есть на картинке, проблема в пустоте, а не в расположении stage.
    Цитата:
    Сообщение от Tails Посмотреть сообщение
  2. Выставляем stage.scaleMode в StageScaleMode.NO_SCALE.
  3. Как я и писал Stage фиксирована уже, она не изменяется не при каких обстоятельствах.

    Цитата:
    Сообщение от Tails Посмотреть сообщение
  4. Подписываемся на событие RESIZE
  5. Один раз в начале и далее по событию ресайза позицианируем и масштабируем контент так как нам нужно.
Цитата:
Сообщение от Tails Посмотреть сообщение
Бэграунд растяните или зарепитите, основной контент отпозицианируйте по центру.
Нужные разделы справки:

пс. Всё это нужно делать в рамках stage3D.
Ну вот мне нужно чтобы фон был сзади, а он лезет вперед.. Может я не совсем понял что вы имеете в виду..

Старый 23.06.2016, 17:44
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 15  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Растягиваете stage3D на весь экран, при ресайзе (изменений размеров), переопределяете размеры stage3D заново, под новые размеры. Он не должен быть в левом углу, он должен заполнять всё поле видимости, которое в данный момент отображается.
Фон должен быть сделан внутри stage3D, фон и всё остальное позицианируется по событию ресайза.
__________________
Дети не должны знать о своих родителях

Старый 23.06.2016, 17:47
Egstond вне форума Посмотреть профиль Отправить личное сообщение для Egstond Найти все сообщения от Egstond
  № 16  
Ответить с цитированием
Egstond

Регистрация: Mar 2016
Сообщений: 52
Опять же проблема в том что его нельзя масштабировать, потому что идет потеря качества. Поэтому фон нужно как то запихать вокруг, может не битмапом, можно вторую фоновую stage сделать ?

Старый 23.06.2016, 17:59
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 17  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Не нужно ничего масштабировать, нужно изменять размеры вью порта по событию и позицианировать контент. Выше описанный метод является единственно верным. Перечитывайте его до тех пор, пока не наступит озарение.
__________________
Дети не должны знать о своих родителях

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

Регистрация: Mar 2016
Сообщений: 52
я не упоминал полноэкранный режим ? Речь именно о нем, в оконном то и пустоты оприори нету..


напомню еще раз суть проблемы
Цитата:
stage допустим 500на500(фиксированный), а отображение всего в полноэкранном режиме допустим 1024на768, получается маленький экран с финишной графикой и пустота вокруг, вот битмап для того чтобы пустоту убрать, его нет смысла внутри этого окошка рисовать, снаружи надо каким-то способом, конечно можно аппликацию из 4х кусков сводить вокруг stage, но может по проще что есть.

Старый 23.06.2016, 18:38
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 19  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Не имеет значения, переходите вы в полно экранный режим или просто растягиваете окно мышкой. При любом ресайзе, нужно выполнить ряд простых шагов:
  1. Получить событие изменения размеров окна. (Растянули мышкой, перешли в фулл скрин)
  2. Обновить размеры вью порта stage3D при помощи configureBackBuffer, передав туда новые width и height сцены.
  3. Позицианировать основной контент в stage3D по центру экрана.
  4. Обновить битмап бэграунда.
Всё!
На каком этапе у вас возникают сомнения?
__________________
Дети не должны знать о своих родителях

Старый 23.06.2016, 19:15
Termer вне форума Посмотреть профиль Отправить личное сообщение для Termer Найти все сообщения от Termer
  № 20  
Ответить с цитированием
Termer

Регистрация: Dec 2010
Сообщений: 69
http://away3d.com/tutorials/Away3D_a...Interoperation

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

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

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


 


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


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