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

Вернуться   Форум Flasher.ru > Flash > Общие вопросы о Flash (не затрагивающие ActionScript)

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 16.04.2007, 20:20
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 21  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
В хелпе такого примера нет.
Изучаем: http://livedocs.adobe.com/flash/9.0/main/00001899.html

Старый 16.04.2007, 20:21
ARTur2 вне форума Посмотреть профиль Отправить личное сообщение для ARTur2 Найти все сообщения от ARTur2
  № 22  
Ответить с цитированием
ARTur2

Регистрация: Sep 2005
Адрес: Литва
Сообщений: 195
Вроде бы разобрался и в свой код:
Код:
 public function Navigator() {
          this.onLoad = function() {
               this.createEmptyMovieClip("picture", this.getNextHighestDepth());
               this.createEmptyMovieClip("viewArea", this.getNextHighestDepth()).createEmptyMovieClip("mask", this.getNextHighestDepth());
               this.createEmptyMovieClip("redRect", this.getNextHighestDepth());
               this.createEmptyMovieClip("clickArea", this.getNextHighestDepth());
               this.picture.attachMovie(this.mc, "my_mc", this.getNextHighestDepth());
               this.viewArea.attachMovie(this.mc, "my_mc", this.getNextHighestDepth());
добавил следущее:
Код:
public function Navigator() {
          var my_mc:MovieClip;          this.onLoad = function() {
               this.createEmptyMovieClip("picture", this.getNextHighestDepth());
               this.createEmptyMovieClip("viewArea", this.getNextHighestDepth()).createEmptyMovieClip("mask", this.getNextHighestDepth());
               this.createEmptyMovieClip("redRect", this.getNextHighestDepth());
               this.createEmptyMovieClip("clickArea", this.getNextHighestDepth());
               this.picture.attachMovie(this.mc, "my_mc", this.getNextHighestDepth());
               this.viewArea.attachMovie(this.mc, "my_mc", this.getNextHighestDepth());
			   my_mc.cacheAsBitmap = !my_mc.cacheAsBitmap;               this.viewArea.setMask(this.mask);
но по-моему ничего не изменилось... тормозов меньше не стало... Может я что-то не правильно делаю?

по поводу примера он у меня тут лежит : boot drive\Program Files\Macromedia\Flash 8\Samples and Tutorials\Samples\ActionScript\CacheBitmap.


Последний раз редактировалось etc; 16.04.2007 в 20:26.
Старый 16.04.2007, 20:26
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 23  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Так надо читать справку!

Зачем объявлять onLoad в конструкторе? Вы же не на AS1 пишете, так ведь? Объявите метод onLoad, как полагается. А в конце добавить:
Код:
this.cacheAsBitmap = true;
Только лучше cacheAsBitmap ставить непосредственно на ролик с картой.

Старый 16.04.2007, 21:27
ARTur2 вне форума Посмотреть профиль Отправить личное сообщение для ARTur2 Найти все сообщения от ARTur2
  № 24  
Ответить с цитированием
ARTur2

Регистрация: Sep 2005
Адрес: Литва
Сообщений: 195
БОЛЬШОЕ ВАМ СПАСИБО!!!!!!!!!!!!!!!! всё заработало просто идеально!!!! Вы просто спасли меня!!!!

Старый 18.04.2007, 01:40
k0zer вне форума Посмотреть профиль Отправить личное сообщение для k0zer Найти все сообщения от k0zer
  № 25  
Ответить с цитированием
k0zer
[+] варез
[+3 04.04.07]

Регистрация: Jul 2002
Адрес: SPb
Сообщений: 100
Цитата:
Сообщение от __etc
Не вижу связи. Флеш это флеш, видео — это видео.
Способ создания иллюзии движения на экране существует только один. Это быстрая смена кадров со смещением изображения на них, так чтобы человек не замечал дискретности движения. Умные дяди (причем умные во множестве областей) не зря придумали число 30, видимо серьезные исследования проводили. И тут не имеет значение видео это или флеш, хотя флеш в большинстве это интерактивные видеоролики. Как тут можно не видеть связи, для меня загадка.

Цитата:
Сообщение от _bkt
http://flash-ripper.com/archives/000851.php - статья называется "Волшебная Частота, 21 и 31 FPS"
Спасибо за статью, правда автор по-моему сам не догоняет смысл чисел. Дурацкий пример привел, его там в комментах поругали.
Ну и очень порадовала фраза:
"Ответ заключается в том, что значение частоты кадров, FPS, хранится в числе с плавающей запятой формата "16/16" (можно также встретить обозначение "16.16"). В таком числе 16 бит отводится под целую часть, и 16 бит -- под дробную."
Вроде ясно становится что человек не понимает то о чем говорит.
Если ошибаюсь - поправьте меня.

Старый 18.04.2007, 01:43
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 26  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
k0zer, тебя же не смущает то, что при 30 фпс в 3D игры играть невозможно? Здесь нельзя делать обобщений, не кино смотрим. Уж тем более, никогда про 30 не слышал. Слышал про 21, 24, 25, 31, остальное — нет.
Если религия не позволяет, пользуйся 30, не заставляем. Вести разговоры на тему, что 31 есть правильно я не буду, потому что лень и уже говорили на эту тему.


Последний раз редактировалось etc; 18.04.2007 в 01:46.
Старый 18.04.2007, 02:03
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 27  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
PAL/SECAM - 25 кадров (Европа)
NTSC - 30 кадров (АМЕРИКА/АЗИЯ)
Но каждый кадр формируется из двух полукадров, поэтому часть общего изображения меняется чаще - 50 и 60 полукадров в секунду. Но речь идет о телевиденье, где частота фиксирована. На мониторах все происходит по другому. Поэтому k0zer не понимает о чем говорит. swf хранит в себе информацию о частоте смене кадров, но хранит не фпс, а время отводимое на каждый кадр, то есть фпс 30 записывается как 1000/30 = 33,3(3). Как видим 33,3(3) дробное число и оно записывается в формате 16.16 и дробная часть получается не точной и и при переводе в фпс со временем накапливается ошибка которая дают скачки в плавной анимации. При частоте фпс 21 и 31, это ошибка минимальна и скачок менее заметен.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 18.04.2007, 02:06
k0zer вне форума Посмотреть профиль Отправить личное сообщение для k0zer Найти все сообщения от k0zer
  № 28  
Ответить с цитированием
k0zer
[+] варез
[+3 04.04.07]

Регистрация: Jul 2002
Адрес: SPb
Сообщений: 100
>>k0zer, тебя же не смущает то, что при 30 фпс в 3D игры играть невозможно?
30 - NTSC (по-моему), плюс чересстрочная 60 ))

Не смущает, я сам это знаю и даже догадываюсь почему )). Кстати смотря какая игра, если КС то и на 30 не страшно. А если Ку3 то для комфорта мин для 120 )).

Я религиозные войны вести не люблю и не собираюсь. Я даже верю, что 31 это хорошо и всегда ее ставлю последнее время. Но в той статье что дал _bkt по-моему фигня написана, а не обьяснение.
Если не очень лень, был бы признателен получить ссылку на то, где говорили на эту тему.

Старый 18.04.2007, 02:06
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 29  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Ах да, NTSC. Ну не в счет, в общем-то.
А ссылочки в поиске надыбать можно, правда-правда.

Старый 18.04.2007, 02:08
k0zer вне форума Посмотреть профиль Отправить личное сообщение для k0zer Найти все сообщения от k0zer
  № 30  
Ответить с цитированием
k0zer
[+] варез
[+3 04.04.07]

Регистрация: Jul 2002
Адрес: SPb
Сообщений: 100
Цитата:
Сообщение от iNils
PAL/SECAM - 25 кадров (Европа)
NTSC - 30 кадров (АМЕРИКА/АЗИЯ)
Но каждый кадр формируется из двух полукадров, поэтому часть общего изображения меняется чаще - 50 и 60 полукадров в секунду. Но речь идет о телевиденье, где частота фиксирована. На мониторах все происходит по другому. Поэтому k0zer не понимает о чем говорит. swf хранит в себе информацию о частоте смене кадров, но хранит не фпс, а время отводимое на каждый кадр, то есть фпс 30 записывается как 1000/30 = 33,3(3). Как видим 33,3(3) дробное число и оно записывается в формате 16.16 и дробная часть получается не точной и и при переводе в фпс со временем накапливается ошибка которая дают скачки в плавной анимации. При частоте фпс 21 и 31, это ошибка минимальна и скачок менее заметен.
1000/25 = 40 ровно

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

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

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


 


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


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