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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 10.07.2015, 22:32
inozemcev вне форума Посмотреть профиль Отправить личное сообщение для inozemcev Найти все сообщения от inozemcev
  № 1  
Ответить с цитированием
inozemcev
[+ 1.0 08.10.14]
 
Аватар для inozemcev

блогер
Регистрация: Mar 2010
Адрес: x = stage.stageWidth/2 y= stage.stageHeight/2
Сообщений: 293
Записей в блоге: 2
По умолчанию Старлинговский RenderTexture немного глючит

Делаю первый урок из книги "Starling Game Development Essentials" в конце урока приводится пример как можно оптимизировать сцену использовав всего одну картинку с динамической текстурой вместо массива картинок. К сожалению по каким-то причинам у меня при запуске оптимального кода картинка рендерится только с одним первым тайлом, остальные в текстуру не рендерятся. Висит один квадратик и все. Задокуменнтированный код отрисовывает полноценную сцену, расставляя картинки с тайлами так как и должно быть.

Код AS3:
var img:Image;
var tex:Texture =Texture.fromBitmap(new AssetTex(),false);
texAtlas=new TextureAtlas(tex,XML(new AssetXml()));
 
/*  
for(var i:int=0;i<levelData.length;i++){//i is for rows
    for(var j:int=0;j<levelData[0].length;j++){//j is for columns
        img=new Image(texAtlas.getTexture(paddedName(levelData[i][j])));
        addChild(img);
        img.x=j*tileWidth+borderX;
        img.y=i*tileWidth+borderY;
    }
}
*/
 
 
rTex = new RenderTexture(stage.stageWidth,stage.stageHeight);
var rTexImage:Image= new Image(rTex);
addChild(rTexImage);
 
for(var i:int=0;i<levelData.length;i++){
    for(var j:int=0;j<levelData[0].length;j++){
        img = new Image(texAtlas.getTexture(paddedName(levelData[i][j])));
        img.x = j*tileWidth+borderX;
        img.y = i*tileWidth+borderY;
        //draw to texture instead of adding new image
        rTex.draw(img);
    }
}
http://www.gamedev.ru/files/images/?id=108849


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

Теги
Starling
Опции темы
Опции просмотра

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

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


 


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


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