![]() |
|
||||||||||
|
|||||
|
Чего-то мне сегодня в голову ударило, наверное кирпич
Все руки не на месте, че-то изобретаю, вроде велосипеда.Сидел, ждал коннекта... И вот пришла идея сделать проверку совпадения объектов, разбивая экран на много маленьких зон. Получилась любопытная вещь... Не то чтобы полезная, однако игроделам может и пригодится, кто ж их знает ))))))) В примере 150 клипов проверяют взаимодействие друг с другом. Настраивая размер одной зоны (в зависимости от среднего размера клипов) можно свести тормоза до минимума. Т.е. при проверке совпадений через зоны на производительность влияет не столько кол-во объектов, сколько их поведение (кол-во тоже, конечно, но в известных пределах) Код не идеален, вернее, вообще свежий. Только что из печки. Комментов почти нет. Все настраивется и "дописывается" под конкретную игру. В частности же onEnterFrame следует заменить пользовательским событием.
__________________
За двумя зайцами погонишься - от егеря по морде получишь |
|
|||||
|
Banned
[+1 16.05.2006]
[++1 16.05.2006] [+ 1 21.05.06] [++ за хамство] [+1 21.05.2006] Регистрация: Dec 2003
Сообщений: 3,925
|
Код, кстати, не так уж и плох. Равно как и метод весьма интересен, вот только погрешность обратно пропорциональна тормозам
![]() |
|
|||||
|
Поставь размер одной зоны 12 или 15, погрешность исчезнет. Зато ресурсов чуть больше потребуется...
__________________
За двумя зайцами погонишься - от егеря по морде получишь |
|
|||||
|
Кстати, о погрешности опять же. Я заметил, что проверка совпадения через getBounds дает погрешность, когда размеры проверяемых объктов примерно равны. Иделальный вариант - когда преграда в несколько раз больше клипа. Вроде бы так.
__________________
За двумя зайцами погонишься - от егеря по морде получишь |
![]() |
Часовой пояс GMT +4, время: 10:24. |
|
|
« Предыдущая тема | Следующая тема » |
|
|