Gerçekten böyle bir ızgara yapmanın birkaç yolu vardır.
En etkili yol örnekleme olacaktır. Bu şekilde altıgeninizi bir VBO'da sadece bir kez yaparsınız ve bunu yüz, bin veya milyon kez yaparsınız. Nokta 1'de söylediğin gibi üniformalı gölgelendiricileri kullanarak manuel olarak yapabilirsiniz, ancak bunun için yerleşik bir OpenGL işlevi de vardır. Bunun için glDrawElementsInstanced adresine bir göz atın .
Belirli bir miktarda örneklenmiş nesneden daha fazla çizim yaparsanız örnek oluşturmanın yalnızca diğer yöntemlerden daha hızlı olduğunu unutmayın. Örneğin, 300 çizim 1 büyük VBO kullanarak daha hızlı olabilir, ancak anlık oluşturma kullanırsanız 2 milyon çizim daha hızlı olabilir.
Anlık görüntü oluşturmayı kullanıyorsanız, Özellik Bölücüler'i kullanarak nesne başına veri gönderebilirsiniz . Sizin durumunuzda, konumu ve rengi göndermek istersiniz.
Anında oluşturma hakkında iyi bir öğretici: tıklayın
Gerçekten en iyi yol, her iki yöntemi de denemek ve 1 kare çizmek için gereken milisaniye miktarını kontrol etmektir. Bu şekilde her iki yolu da öğrenirsiniz, ki bu her zaman iyidir.
Ayrıca, anında oluşturmanın modern bir OpenGL işlevi olduğunu ve bunu kullanmak için gölgelendiriciler kullanmanız gerektiğini unutmayın. Ancak her zaman en baştan doğru şekilde öğrenmek en iyisidir.