Показать сообщение отдельно
Старый 20.05.2007, 13:18   #8
alcoSHoLiK
Дэвелопер
 
Регистрация: 17.01.2006
Сообщений: 1,512
Написано 78 полезных сообщений
(для 110 пользователей)
Re: Изометрия. Что первым рендериться, что вторым и тд

Можо так сделать.
Ссылки на картинки всех объектов находятся в одном списке. У каждого эелемента списка есть свой приоритет. После просчета логики все объекты рисуются из списка в одном месте в порядке увеличения их приоритета.
Допустим, есть игрок, который должен быть то под домом, то перед домом, в зависимости от его положения на карте. Если считать, что координаты объекта задают одну из верхних вершин, то достаточно проверять такое условие:
if player.y + player.height < house.y + house.height then
    ; сделать приоритет player меньше, чтобы он рисовался раньше
else
    ; сделать приоритет player больше, чтобы он рисовался позже
end if
Тут house.height - это не высота картинки, а высота дома, которая задается программистом. Должно быть понятно.
Перед рендером сортируешь список и рисуешь.
(Offline)
 
Ответить с цитированием