Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   API приложений и сред (http://www.flasher.ru/forum/forumdisplay.php?f=61)
-   -   [Starling] Подскажите по пропорциональному скалированию STANDART<->FULL_SCREEN (http://www.flasher.ru/forum/showthread.php?t=203738)

mikhailk 06.10.2013 22:18

Подскажите по пропорциональному скалированию STANDART<->FULL_SCREEN
 
В стандартном режиме приложение занимает 760х760 и вьюпорт настроен так же:

Код AS3:

var viewPortRectangle:Rectangle = new Rectangle();
viewPortRectangle.width = 760;
viewPortRectangle.height = 760;
Model.starling = new Starling(Game, stage, viewPortRectangle);

Нужно, чтобы при переходе приложение в фуллскрин этот квадрат масштабировался и центрировался. Например, 1440х900 -> приложение 900х900 и висит со смещением 270 от левого края. Или 1366х768 - соответственно, 768х768 и тоже по центру.

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

Astraport 06.10.2013 23:07

Может быть ещё стоит выставить размеры Model.starling.stage.stageWidth и Model.starling.stage.stageHeight

mikhailk 06.10.2013 23:31

Цитата:

Model.starling.stage.stageWidth и Model.starling.stage.stageHeight
Я про него и говорю.

О, у меня получилось :)
Я не тот стейдж брал.

Вот работает как надо:

Код AS3:

private function onResize(event:ResizeEvent, size:Point):void
{
        RectangleUtil.fit(
                new Rectangle(0, 0, Starling.current.stage.stageWidth, Starling.current.stage.stageHeight),
                new Rectangle(0, 0, size.x, size.y),
                ScaleMode.SHOW_ALL, false,
                Starling.current.viewPort
        );
}



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

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