Saya membuat game orang pertama 3D. Haruskah saya memberikan masing-masing karakter VBO sendiri atau saya harus batch semua karakter menjadi VBO tunggal? Apa pro / kontra?
Saya membuat game orang pertama 3D. Haruskah saya memberikan masing-masing karakter VBO sendiri atau saya harus batch semua karakter menjadi VBO tunggal? Apa pro / kontra?
Jawaban:
Ini benar-benar pilihan antara kinerja dan fleksibilitas, tetapi saya akan mencantumkan pendapat saya tentang hal itu.
Satu VBO tunggal
Sisi positifnya adalah:
dan sisi negatifnya adalah:
VBO individu: s
Sisi positifnya adalah:
dan sisi negatifnya adalah:
Ringkasan
Saya merekomendasikan Anda untuk membuat profil aplikasi Anda; dapatkan hambatan nyata Anda dalam data yang bisa Anda lihat. Optimalisasi prematur dapat ditunjukkan (dalam hal ini) sebagai tidak perlu. Namun, demikian dikatakan, jika Anda akan menemukan kehilangan kinerja yang nyata dalam aplikasi Anda, mengingat masing - masing VBO: s skenario , Anda dapat mulai menerapkan VBO tunggal.
Namun, selama itu tidak diperlukan (jumlah objek rendah, tidak banyak perubahan negara secara keseluruhan, dll) Saya akan merekomendasikan untuk pergi dengan VBO individu: kecuali Anda melihat itu tidak akan berhasil.
Edit
Saya lupa menyebutkan bahwa itu akan baik-baik saja dengan beberapa panggilan undian. Hal yang paling penting dalam saat-saat kritis kinerja adalah untuk menjaga kondisi perubahan minimal. Anda cukup mengatur jumlah indeks untuk diproses dan offset untuk setiap panggilan undian, dan ini tidak masalah. Tapi bagaimanapun, tetap perubahan negara serendah mungkin dan membuat sedikitnya panggilan imbang mungkin, itu besar halo dari jawaban ini, atau setidaknya apa yang saya mencoba untuk mengatakan.