Войти
ПрограммированиеФорум2D графика и изометрия

Z-сортировка, программное разбиение на тайлы, двоичное разбиение пространства

#0
11:24, 24 фев 2012

Собственно сабж: есть ряд сложных объектов прямоугольной (параллелепипедальной) формы, шириной и длиной в несколько тайлов естественно. Сразу понятно, что рассортировать в пространстве стандартным способом типа «чем ниже, тем ближе» просто так не получится. Объекты содержат внутри флешовую анимацию, по этому нужен метод, который позволит не разрезая ручками правильно разместить объекты.

Я слышал о программном разрезании сложных объектов на тайлы, kd-дерево (оно же вроде метод трассирующих лучей) и двоичное разбиение пространства. До этого реализовывал топологическую сортировку. Работает корректно, но очень затратно, так что не годится.

Посовейтуйте как сделать лучше и если есть возможно пожалуйста расскажите по подробнее о приведенных методах.

#1
14:50, 24 фев 2012

Если у нас изометрия, то можно порезать объект на вертикальные полоски (в смысле картинку объекта по вертикалям картинки), равные по ширине диагонали тайла, и каждую из этих полосок рисовать в таком порядке, как если бы это был объект размером в 1х1 тайл, стоящий на самом нижнем тайле, занятом объектом в соотв. колонке.

#2
15:03, 24 фев 2012

вопрос в том как это реализовать программно. Сейчас, заранее неизвестно какого конкретно размера будет плитка. Так что хотелось бы автоматизировать нарезку как-то, есть варианты?

ПрограммированиеФорум2D графика и изометрия

Тема в архиве.