Тема: Карта
Показать сообщение отдельно
Старый 17.03.2009, 21:28
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 29  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
есть такая штука называет "рейтинг сортировки".
перед сортировкой он считается для статических объектов один раз, для динамических при передвижении пересчитывается.
работает например так:
Код:
static:		rating = ( y << 9 ) | ( x << 1 ) | 0;
dynamic:	rating = ( y << 9 ) | ( x << 1 ) | 1;
потом можно использовать код выше, только сортировать не по полям, х/у, а по полю ratang, которое у большинства объектов не меняется. таким образом все динамические объекты всегда будут поверх статических. ну ещё кучу оптимизаций к этому методу можно применить.