Bir öğrenme alıştırması olarak ertelenmiş bir oluşturma motoru yazdım. Şimdi bu motora bir sahne grafiği eklemek istiyorum ama bunu nasıl yapacağımı biraz şaşırdım.
Normal bir (ileri işleme motoru), sahne grafiğe önce tüm öğeleri (Tümü IDrawable ve IUpdateAble uyguluyor) ekleyeceğim, önce sahne grafiği genişliğini gezip her yere Draw () diyorum.
Ancak ertelenmiş bir oluşturma motorunda çizim çağrılarını ayırmak zorundayım. Önce hepsini birleştirmeden önce geometriyi, sonra gölge tekerlekleri ve sonra ışıkları (hepsi farklı render hedeflerine) çizmem gerekiyor. Yani bu durumda sadece sahne grafiğinin üzerinden geçip sadece beraberlik diyemem. Gördüğüm şekilde ya çizilmesi gereken nesnenin ne olduğunu kontrol etmek için ya sahne grafiğinin üzerinde 3 kez seyahat etmek zorundayım ya da bir şekilde birbirine bağlı 3 ayrı sahne grafiği oluşturmak zorundayım. Her ikisi de kötü çözümler gibi görünüyor, sahne nesnelerini daha şeffaf işlemek istiyorum.
Düşündüğüm bir diğer çözüm, sahne grafiğinde normal olarak seyahat etmek ve 3 ayrı listeye öğe eklemek, geometri, gölge tekerleri ve ışıkları ayırmak ve daha sonra doğru listeleri çizmek için bu listeleri tekrarlamaktı, bu daha iyi ve daha mı? her kareyi 3 liste yeniden doldurmak akıllıca?