Esasen CPU'dan GPU'ya tutarlı gürültü üretme ihtiyacını ortadan kaldırmak istiyorum. Oradan da, bu gürültüyü voksel noktalarındaki yoğunluk olarak kullanarak üç boyutlu bir dünya için arazi oluşturmak istiyorum. Bundan sonra, bu yoğunlukları almak ve onları dünya arazisini temsil eden poligonize etmek (köşe oluşturmak) istiyorum.
Bu iyi ve hepsi. Ama aynı zamanda dünyayı gerçek zamanlı olarak dinamik olarak deforme etmek istiyorum. Bu noktaya geldiğimde, çarpışma tespiti ve GPU'ya değil, CPU'ya dahil etmek istediğim tüm oyun hesaplamaları gibi şeyleri yapmak için köşeleri CPU'ya geri döndürmeye çalışırken bir sorunum var.
Öyleyse soru şu: Diğer şeylerin yanı sıra çarpışmalarla başa çıkmak için köşelerin bir alt kümesini CPU'ya nasıl geri getirebilirim?
Ve bir soru daha: GPU'da bir dizi köşe almanın ve bunlardan indeksler oluşturmanın kolay bir yolu var mı?
Bu farklı şeyler için ne tür gölgelendiriciler kullanmam gerektiği konusunda kafam karıştı. Yoğunlukları toplamak için bir piksel gölgelendirici kullanan ve daha sonra köşe noktalarından arazi üretimi ile başa çıkmak için bir geometri gölgelendirici kullanan ve daha sonra bir şekilde dinamik deformasyonları yapmak için bir tepe gölgelendirici kullanan insanlar duyuyorum.
C # 4.0, .NET 4.0 ve XNA Game Studio 4.0 kullanıyorum.