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

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

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

Регистрация: Oct 2010
Сообщений: 1,049
Отправить сообщение для bav с помощью ICQ
Что реже вызывается, то и меньше грузит. Это не очевидно?

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

Регистрация: Apr 2010
Сообщений: 32
Цитата:
Сообщение от Flashed_ Посмотреть сообщение
На счет того каким образом делать анимацию EnterFrame или Timer, что меньше нагружет?
Визуальную анимацию ВСЕГДА лучше делать на EnterFrame. Этот ивент, в общем-то, для этого и предназначается. Таймер же в этом случае - лишний объект с лишними диспатчами ненужных ивентов.
В твоем случае лучше сделать один глобальный обработчик EnterFrame для stage, например, и в нем в цикле двигать все объекты. Если тормозит, можно попробовать снизить фреймрейт, но лучше удостовериться, что все объекты совершенно примитивны, то есть на них нет своих анимаций, не навешаны никакие листенеры, не прописаны никакие скрипты, не изменяется альфа и что все они cacheAsBitmap.

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

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

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

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Цитата:
Таймер же в этом случае - лишний объект с лишними диспатчами ненужных ивентов.
Неправда, как вы сделаете, если нужно что-то двигать толчками или наоборот - очень быстро, быстрее, чем fps? А как вы сделаете анимацию по времени?
__________________
тут я

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

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

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

Регистрация: Nov 2010
Адрес: Москва
Сообщений: 915
Записей в блоге: 4
Отправить сообщение для Aquahawk с помощью ICQ Отправить сообщение для Aquahawk с помощью Skype™
КорДум А зачем делать анимацию быстрее фреймрейта? Отрисуется же всё равно по фреймам.

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

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

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

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Честно говоря, не понимаю пристрастия к таймеру для реализации анимации.
Таймер:
а. сможет послать событие только в общем потоке. Т.е. опять же после ENTER_FRAME.
б. вследствие этого не точен.

Единственный сомнительный смысл в нем, если он сможет выполниться несколько раз за фрейм. Но тут опять же:
а. придется вызывать updateAfterEvent, что форсирует и без того самую затратную операцию — рендеринг.

По мне у таймера есть единственное применение (причем прямо ему присущее): через n-е время послать событие, а уже по этому событию запускать анимацию и т.д.

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

Регистрация: Apr 2010
Сообщений: 32
Цитата:
Сообщение от КорДум Посмотреть сообщение
А как вы сделаете анимацию по времени?
Как-то так:
Код AS3:
var curTime : int = GetTimer();
var delta : int = curTime - prevTime;
prevTime = curTime;
sprite.x += SPEED*delta;
Если же надо проверять коллизии, то очевидно надо проверять не только текущее положение объекта, но и его траекторию между кадрами.

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

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Цитата:
Скорее всего он имел ввиду смещение маленькими шагами на большие растояния.
Что мешает заранее просчитать не пролетит ли пуля через тоненькую стенку. Без таймеров, реального смещения и всяческих хиттестов.

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

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

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


 


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


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