Bu izometrik manzaralı bir flash oyun içindir. Çizim sırasında z-buffer denetimi gerek yok böylece nesne sıralamak için bilmek gerekir. Bu kolay görünebilir, ancak başka bir kısıtlama vardır, bir sahnede 10.000'den fazla nesne olabilir, bu nedenle algoritmanın O (n ^ 2) 'den daha azında çalıştırılması gerekir. Tüm nesneler dikdörtgen kutulardır ve sahnede hareket eden 3-4 nesne vardır. Bunu yapmanın en iyi yolu nedir?
GÜNCELLEME
her döşemede sadece nesne vardır (yani nesneler üst üste istiflenemez). ve hem Objeler hem de Objeler haritasına erişiyoruz.
Update2
şu rakamlara bakın:
ilk önce ilk mavi nesne sonra yeşil, sonra kırmızı çizilmelidir. ikincisinde ise ters sırada çizmeniz gerekir. önce kırmızı, sonra yeşil ve son olarak mavi nesne çizmeniz gerekir. gördüğünüz gibi mavi ve kırmızı nesnelerin konumlarında hiçbir fark yoktur, her ikisinin de kameradan farklı mesafeleri vardır. ancak yeşil kutuya göreceli konumları nedeniyle, iki resim arasındaki çizim sırasını değiştirmeniz gerekir. bu sorunu dağınık yapan da budur.
yan not: tüm nesneler dikdörtgen prizma olduğundan, problem ihtiyaçlarını karşılamak için en az bir çizim sırası olduğu matematiksel olarak kanıtlanabilir.