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

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flash > ActionScript

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 31.01.2004, 13:04
Ламер_Флаша вне форума Посмотреть профиль Найти все сообщения от Ламер_Флаша
  № 1  
Ламер_Флаша
Banned

Регистрация: Jul 2002
Сообщений: 131
Question Хранение переменных - двумерный Массив???

Здравствуйте,


есть задача:
Дублируется неисчеслимое множество MovieClip'ов. При создании для каждого MovieClip надо записать 2-3 числовых значения, которые потом будут вызываться или по которым будет происходить поиск.
Нечто вроде этого:
Цитата:
for (counter=0; counter<100; counter++) {
duplicateMovieClip ("Original", "Original" add counter, counter);
set ("A" add counter, 345453444);
set ("B" add counter, 456456456);
set ("C" add counter, 344353462);
}
Смущает в таком методе вот что:
1. Не больше ли места в памяти занимают такие переменные и не выше ли нагрузка на проц, чем двумерный массив, в котором первый столбец - порядковый номер (counter), и далее три столбца со значениями (A,B,C) ???
2. При использовании массива возможен ли поиск внутри него по одному столбцу ??? (Типа надо найти A=34535353 и выдать какой это номер (counter). Такое во flash возможно???)


Заранее благодарен!


Последний раз редактировалось Ламер_Флаша; 31.01.2004 в 13:07.
Старый 01.02.2004, 15:11
Ламер_Флаша вне форума Посмотреть профиль Найти все сообщения от Ламер_Флаша
  № 2  
Ламер_Флаша
Banned

Регистрация: Jul 2002
Сообщений: 131
?????

Старый 01.02.2004, 15:47
Nox Noctis вне форума Посмотреть профиль Отправить личное сообщение для Nox Noctis Посетить домашнюю страницу Nox Noctis Найти все сообщения от Nox Noctis
  № 3  
Nox Noctis
don't panic!
 
Аватар для Nox Noctis

Регистрация: Aug 2001
Сообщений: 4,121
По умолчанию Re: Хранение переменных - двумерный Массив???

Цитата:
Оригинал написал(а) Ламер_Флаша
1. Не больше ли места в памяти занимают такие переменные и не выше ли нагрузка на проц, чем двумерный массив, в котором первый столбец - порядковый номер (counter), и далее три столбца со значениями (A,B,C)
каким образом, если не секрет, количество переменных может нагрузить проц? :)) единственное что тут может "нагрузиться" - это память которой пользуется плеер. но если тебе удастся создать СТОЛЬКО переменных и клипов, что плееру не хватит памяти - мне интересно за каким чертом тебе такое количество понадобилось?

Цитата:
Оригинал написал(а) Ламер_Флаша
При использовании массива возможен ли поиск внутри него по одному столбцу ??? (Типа надо найти A=34535353 и выдать какой это номер (counter). Такое во flash возможно???)
мне послышалось, или кто-то говорил что у него есть общее представление о том что можно и чего нельзя сделать во флэше?

есть массив. есть цикл for. перебираем все элементы нужного столбца массива и сравниваем с заданным значением каждый из элементов. оформляем все это в виде функции.

я понятно излагаю ? :)

Старый 02.02.2004, 02:20
Ламер_Флаша вне форума Посмотреть профиль Найти все сообщения от Ламер_Флаша
  № 4  
Ламер_Флаша
Banned

Регистрация: Jul 2002
Сообщений: 131
Цитата:
мне послышалось, или кто-то говорил что у него есть общее представление о том что можно и чего нельзя сделать во флэше?

есть массив. есть цикл for. перебираем все элементы нужного столбца массива и сравниваем с заданным значением каждый из элементов. оформляем все это в виде функции.

я понятно излагаю ?
Излогаешь ты понятно. Жаль, только, конкретно кодов не пишешь
2. Видимо я непонятно излагаю... я имел ввиду есть ли такая ВСТРОЕННАЯ функция для массива как поиск по столбцу/столбцам?? Типа задаешь "найти=10, столбцы=A,B,C" - возвращает порядковый номер и столбец. Видимо, такой функции нет. В этом случае проще с переменными.

P.S.
А на счет "проца" - есть такое понятие, как процессорная инструкция (или кто как называет), когда одна функция выполняется за один такт, т.к. является той самой инструкцией (типа MMX, SSE и т.д.). Так вот, если функция СТАНДАРТНАЯ (массив), то она с бОльшей вероятностью использует подобные инструкции - тем самым снижается нагрузка на проц и ускоряется счет

Старый 02.02.2004, 02:44
Nox Noctis вне форума Посмотреть профиль Отправить личное сообщение для Nox Noctis Посетить домашнюю страницу Nox Noctis Найти все сообщения от Nox Noctis
  № 5  
Nox Noctis
don't panic!
 
Аватар для Nox Noctis

Регистрация: Aug 2001
Сообщений: 4,121
Цитата:
Оригинал написал(а) Ламер_Флаша
есть ли такая ВСТРОЕННАЯ функция для массива как поиск
так бы и спросил сразу..
нет, таких функций нет, есть только встроенная сортировка массива, к которой при необходимости можно добавить нестандартную функцию задающую правило сортировки.

Цитата:
Оригинал написал(а) Ламер_Флаша
есть такое понятие, как процессорная инструкция
да, есть. хвалю. только это понятие здесь АБСОЛЮТНО не при чем :))

просто флэш не знает ничего ни про какие инструкции процессора. виртуальная машина флэша, необходимая для исполнения экшнскрипта, получает байткоды, скомпилированные в свф и как она потом с ними работает - бох ее знает. эти инструкции весьма далеки от того что реально вычисляет в результате проц при их выполнении виртуальной машиной флэша.
Цитата:
Оригинал написал(а) Ламер_Флаша
одна функция выполняется за один такт, т.к. является той самой инструкцией
инструкция процессора и "функция" на языке высокого уровня - это как унитаз и очистные сооружения.
Цитата:
Оригинал написал(а) Ламер_Флаша
если функция СТАНДАРТНАЯ (массив)
очень похоже, что ты не отличаешь друг от друга "функцию", "массив" и "инструкцию процессора". плохо дело...

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


Последний раз редактировалось Nox Noctis; 02.02.2004 в 02:45.
Старый 02.02.2004, 03:25
Ламер_Флаша вне форума Посмотреть профиль Найти все сообщения от Ламер_Флаша
  № 6  
Ламер_Флаша
Banned

Регистрация: Jul 2002
Сообщений: 131
Цитата:
да, есть. хвалю. только это понятие здесь АБСОЛЮТНО не при чем )
"хвалю"... давай вот без этого...


Цитата:
очень похоже, что ты не отличаешь друг от друга "функцию", "массив" и "инструкцию процессора". плохо дело...
Ню-ню...
Если ты не в курсе, то любой код исполняет кто? ПРОЦЕССОР! Ну так вот если этот код был написан программером - то он при компиляции преобразуется во что? В Х*РНЮ всякую! А вот если этот код был написан СОЗДАТЕЛЕМ языка (например C++), то очень высока вероятность, что функция основана/адаптирована под процессорные инструкции/расширения.

Давай эту тему лучше закроем, дабы имидж твой не портить.


===================

Вот смотри сколько мне понадобилось вас всех убалтывать, только ради того, чтобы получить ответ из двух слов "Лучше массив". :-/ На том спасибо.
Кстати, а "списки" (массивы неопределённой длины автоматически удлиняющиеся и укорачивающиеся в памяти) в Flash есть?

Старый 02.02.2004, 03:54
Nox Noctis вне форума Посмотреть профиль Отправить личное сообщение для Nox Noctis Посетить домашнюю страницу Nox Noctis Найти все сообщения от Nox Noctis
  № 7  
Nox Noctis
don't panic!
 
Аватар для Nox Noctis

Регистрация: Aug 2001
Сообщений: 4,121
Цитата:
Оригинал написал(а) Ламер_Флаша
Давай эту тему лучше закроем, дабы имидж твой не портить.
а поздняк :)) все уже украдено - до вас.

ты можешь долго и подробно рассказывать скока ты всего знаешь про си и работу процессора, но это тут НЕ ПРИ ЧЕМ. понимаешь? если ты докажешь что очень круто знаешь японский - это едва ли тебе поможет в суверенной республике буркина фасо.

то о чем говоришь ты - это оптимизация внутренней работы виртуальной машины флэша, ActionScript'ом это не сделать, можно только оптимизировать сами команды для виртуальной машины.

Цитата:
Оригинал написал(а) Ламер_Флаша
На том спасибо.
заметь, мой первый пост содержал всю необходимую информацию. он не содержал только одного - кода. если бы ты написал прямо "напишите мне рабочий код" - это было бы понятно. но ты ведь спросил о теории. и в прошлой теме объявил что азы тебе объяснять не нужно - нужна теория. ну и как это понимать-то?

Цитата:
Оригинал написал(а) Ламер_Флаша
Кстати, а "списки" (массивы неопределённой длины автоматически удлиняющиеся и укорачивающиеся в памяти) в Flash есть?
во флэше запросто создаются переменные прямо в момент обращения к ним. так что любой массив можно считать "автоматически удлинняющимся"... и вообще тут полная халява - есть общий вид объектов, из которых лепится почти все :)


Последний раз редактировалось Nox Noctis; 02.02.2004 в 04:04.
Старый 02.02.2004, 04:06
Ламер_Флаша вне форума Посмотреть профиль Найти все сообщения от Ламер_Флаша
  № 8  
Ламер_Флаша
Banned

Регистрация: Jul 2002
Сообщений: 131
1.
Цитата:
заметь, мой первый пост содержал всю необходимую информацию.
Пожалуйста цитату из первого поста в этой теме, в которой написано "что лучше использовать - var'ы или массив".

2.
Цитата:
и в прошлой теме объявил что азы тебе объяснять не нужно - нужна теория. ну и как это понимать-то?
Цитата из "прошлой темы":
Общее представление о задачах и Flash'е у меня есть, потому прошу помочь именно с кодом.


3.
Цитата:
и вообще тут полная халява
Я привык говорить "Дайте мне одну буханку ржаного хлеба".
А тут можно: "Черного подкинь, дедуля/бабуля", "Кирпич ржаной одна штука", "Дай чернушки краюху" и т.д. Но при этом хлеб подостыл и нет ни булок, ни пекаря...

Даже не знаю, радоваться этому или нет...

Старый 02.02.2004, 04:26
Nox Noctis вне форума Посмотреть профиль Отправить личное сообщение для Nox Noctis Посетить домашнюю страницу Nox Noctis Найти все сообщения от Nox Noctis
  № 9  
Nox Noctis
don't panic!
 
Аватар для Nox Noctis

Регистрация: Aug 2001
Сообщений: 4,121
1. ладно, я погорячился, согласен. но ничего не в тему я не написал все же - как модно нагрузить проц большим количеством переменных, я все еще не понимаю :)

2. так ты разберись уже чего ты знаешь-то :) а то получается что ты ставишь задачу и просишь готовый код. если бы я пришел к примеру на сишный форум и сказал что хочу сделать длл, которая будет делать то, то и то, но не в курсе какой код писать - как бы ты отреагировал ? :)

3. а этой халявой тоже надо пользоваться грамотно. тогда все будет удобно и легко :) легче чем во "взрослых" языках :)

Старый 02.02.2004, 11:44
Fisher вне форума Посмотреть профиль Отправить личное сообщение для Fisher Найти все сообщения от Fisher
  № 10  
Fisher

Регистрация: Oct 2000
Адрес: Ukraine Lugansk
Сообщений: 852
Отправить сообщение для Fisher с помощью ICQ
Не собираюсь вникать в тонкости - просто скажу что на вопросы о производительности проще и плодотворнее отвечать самому.
В атаче элементарный счетчик показывающий реальный фпс. Такой любой маломальски грамотный флэшер сам напишет за 5 минут. Далее так - этот счетчик ложиться в тестируемую флэшку, фпс ставим на предел - 120 и - путь открыт к успеху
Модифицируем код и следим как изменяеться производительность.
Вложения
Тип файла: zip realfps.zip (2.2 Кб, 80 просмотров)

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

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

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


 


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


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