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

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

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

Регистрация: Dec 2014
Адрес: Санкт-Петербург
Сообщений: 483
По умолчанию Вопрос по оптимизации

Друзья, у меня вопрос не чисто о кодинге, а скорее о подходе, т.к. очень плохо ориентируюсь в вопросах оптимизации.

Сейчас пишу внутриигровой журнал и, в частности, статистику персонажа: характеристики, шмотки и т.п., как обычно в ролевых играх. Вопрос, какой из двух приведённых ниже подходов оптимальнее с т.з. вычислительных ресурсов:
1/ заготовить "рыбу" в виде экземпляров Sprite с блоками инфо обо всех свойствах. Каждый раз, когда пользователь выбирает опцию "показать статистику персонажа", обращаться к Модели этого персонажа, вытаскивать из неё значения параметров и создавать статус-иконки, заполнять текстовые поля, шкалы, тултипы и т.п.
2/ создать и заполнить экземпляры Sprite для каждого персонажа заранее, в момент его инициализации в игре, и складывать их в Vector или Dictionary. Получив соответствующую команду пользователя, вытаскивать и добавлять в DOC. А обновлять (ориентировочно) в момент открытия журнала, проверяя, какие параметры изменились, по сравнению с предыдущим открытием.

Может, ещё будут какие-нибудь здравые мысли.
Спасибо.
__________________
Не сломано - не чини!

Старый 04.10.2024, 21:01
Bletraut вне форума Посмотреть профиль Отправить личное сообщение для Bletraut Найти все сообщения от Bletraut
  № 2  
Ответить с цитированием
Bletraut
 
Аватар для Bletraut

Регистрация: Mar 2013
Адрес: Вне пространства.
Сообщений: 567
Отправить сообщение для Bletraut с помощью ICQ Отправить сообщение для Bletraut с помощью Skype™
Второй вариант звучит более оптимизировано, т.к. все объекты уже заранее подготовлены и остаётся их только отобразить если я всё правильно понял, но стоит ли хранить всю эту информации в памяти и вообще как часто игрок будет смотреть этот журнал (допустим сгенерировали мы кучу разных экземпляров, храним их в памяти, а игрок так ни разу и не открыл этот журнал, получается зря используем ресурсы )? А вообще преждевременная оптимизация - это не лучший подход. Возможно, что первый способ более прост в реализации, а так же более гибкий и универсальный, а разница в производительности между первым и вторым способом составит пару миллисекунд. Я бы вначале попробовал реализовать то что проще и посмотрел бы как оно тормозит или нет.

В первую очередь в оптимизации нуждаются самые загруженные места, т.к. их исправление и даст больше всего прироста производительности.
__________________
Я заклинаю вас действовать иначе.

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

Регистрация: Dec 2014
Адрес: Санкт-Петербург
Сообщений: 483
Спасибо, разумно. По факту выбрал первый путь. А сам вопрос был больше теоретический. У меня пока вообще сплошные геометрические примитивы и заглушки из пакета graphics, поэтому тормозить там категорически нечему
__________________
Не сломано - не чини!

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

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

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


 


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


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