DirectX veya OpenGL kullanarak gösteriliyor 100 Yüzer Küpler

oy
13

Kullandığım 100 kayan küpleri görüntülemek istediğiniz DirectXveya OpenGL.

Ben bazı örnek kaynak kodu veya tekniğin açıklaması ya arıyorum. Ben doğru görüntülemek için sorun oluyor birden küp var.

Ben öğreticiler iyi serisi için net penye ettik ve onlar nasıl yapılacağı hakkında konuşmak her ne kadar 3Dtemel öğelerini, ne bulamıyorum büyük sayısını nasıl yapılacağına ilişkin bilgi, 3Dilkel - cubes, spheres, pyramidsvb, vb.

Oluştur 04/08/2008 saat 07:51
kaynak kullanıcı
Diğer dillerde...                            


3 cevaplar

oy
7

Sen gösterilecek bir küp elde yeterince belada demek ... o yüzden görüntülemek için bir ya da değil var emin değilim.

Temelde ... o zaman sadece o fonksiyonu 100 kez çağrı bir işlevde bir küp yazmak için kodunuzu koydu.

void DrawCube()
{
    //code to draw the cube
}

void DisplayCubes()
{
    for(int i = 0; i < 10; ++i)
    {   
         for(int j = 0; j < 10; ++j)
         {
             glPushMatrix();
             //alter these values depending on the size of your cubes.
             //This call makes sure that your cubes aren't drawn overtop of each other
             glTranslatef(i*5.0, j*5.0, 0);
             DrawCube();
             glPopMatrix();
         }
    }              
}

Yani bunu hakkında gitmek nasıl temel taslaktır. Eğer temelleri anladım bir kez daha verimli bir şey bazen Görüntü Listeleri aşamasına bakacak istiyorsanız :)

Cevap 04/08/2008 saat 10:12
kaynak kullanıcı

oy
6

Eğer verimli olmanın olsaydı Evet, aynı köşe tampon içine her şeyi atmak istiyorum, ama son 5 yıl içinde üretilen herhangi GPU itecektir 100 küpleri çizim sanmıyorum, bu yüzden ince Yukarıdaki önerilerin aşağıdaki olmalıdır.

Piksel gölgelendiricideki arzu Ancak vertex shader gölgede üzerinden temele geçiş yaz. Ya bir dünya matris içinde geçmesi ve köşe gölgelendiricisi çeviri yapmak, ya da sadece CPU tarafında dünya boşluk köşe konumlarını (sizin küpleri sabit kalmak için gidiyoruz eğer bunu) hesaplamak.

Sen fantezi olsun ve yapabileceği geometri örneklemesini vb, ama sadece ilk gidiş temel alın.

Cevap 19/08/2008 saat 12:12
kaynak kullanıcı

oy
6

Sadece bir küp aynı kodu kullanarak, fakat onu çizmek göreli noktayı hareket çizmek için glTranslate (veya DirectX eşdeğer) kullanın. Belki ama bunu yapmak için daha iyi bir yolu var, ben OpenGL için oldukça yeni. hepsini görebilmesi için bakış açısını ayarlamak için emin olun.

Cevap 04/08/2008 saat 10:04
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more