Modelleri Sınırlandıran Kürelerin Hesaplanması

Oyun programlamak için modelin daha basit gösterimlerini kullanmak oldukça faydalıdır. Çünkü oyunlarda kullanılan modeller genellikle çok karmaşıktır ve bu yüzden doğrudan model üzerlerinde yapılan hesaplamalar çok işlem gerektirir. Bu sorunu aşmak için kullanılan modellerin yapılacak işlemlere göre temsili gösterimleri oluşturulur. Model üzerinde daha hızlı ve basit hesaplamalar yapabilmek için basit olarak modeli sınırlandıran küreleri (bounding sphere) hesaplayacağız. Bu hesaplama işlemini yazmış olduğumuz CModel sınıfı içerisinde yaparak, her modelin kendi küresini hesaplamasını sağlayacağız. Modele öncelikle XNA Framework içinde tanımlı BoundingSphere sınıfını kullanarak başlayalım.

Daha sonra modelin geometrisine bağlı olarak modeli sınırlandıran küreyi hesaplayan bir method oluşturalım.

 ve son olarak CModel sınıfının yapıcı methodunda eklediğimiz methodu çağıralım.

Bu hesaplamalara göre oluşturulan küre orijine odaklanmaktadır fakat modelimizi hareket ettirirsek, çevreleyen küresi onunla birlikte gelmemektedir. Bu sorunu aşmak için modele public bir özellik ekleyerek kürenin modelin merkezine ve ölçeğine uygun hale getiren şekilde yazalım.