|
|
|||||
Регистрация: Jul 2010
Сообщений: 3
|
Изометрический мир, z сортировка
Если бы все объекты размером в 1 тайл, то тут все ясно как божий день, но проблема у объектов есть еще ширина и высота, и при ширине || высоте > 3 все перестает нормально работать.
Уже не знаю как высчитать рейтинг сортировки для объекта. Что дано, сам объект на сцене (sprite) ну и его данные у которых есть x y z width height (в координатах карты) при ширине высоте в 1 тайл индекс вычисляется как z * 1E5 + y + x * cell.width, надо чтобы нормально сортировались объекты с размером больше 2 тайлов по ширине или высоте. Допустим, есть 2 объекта 2*2 и 6*2 x|x|x|2|2|x x|x|x|2|2|x x|x|x|2|2|x x|x|x|2|2|x x|1|1|2|2|x x|1|1|2|2|x так вот объект 1 вылезает выше 2 |
|
|||||
Регистрация: Sep 2006
Сообщений: 256
|
ширина и высота объектов должны быть равны, чтобы простая сортировка работала корректно.
формула выглядит как-то так: w, h > 0 => z = x + w/2 + y + h/2 w = h = 0 => z = x + y но если хочется объекты, у которых размеры не равны, извольте попиксельно отрисовывать объекты. |
|
|||||
Регистрация: Jul 2010
Сообщений: 3
|
Спасибо.
|
Часовой пояс GMT +4, время: 10:26. |
|
« Предыдущая тема | Следующая тема » |
Теги |
iso , z-sorting |
|
|