Apakah ada keuntungan kinerja dengan tetap berpegang pada dua kekuatan pada GPU terintegrasi dan diskrit modern?
Sebagian besar GPU modern mendukung non-power of dua (NPOT) tekstur dan menanganinya dengan baik. Penurunan kinerja cukup kecil. Tetapi ada beberapa masalah yang perlu dipertimbangkan:
Saat menggunakan tekstur NPOT, dibutuhkan lebih banyak ruang dalam RAM, sama seperti tekstur POT berukuran berikutnya. Secara teknis Anda hanya membuang ruang yang bisa digunakan untuk meletakkan sesuatu di sana;
Tekstur NPOT dapat ditangani lebih lambat (pada OpenGL 2.1 saya mengalami penurunan kinerja hingga 30%) dibandingkan dengan POT dengan ukuran berikutnya;
GPU lama dan GPU on-board / on-chip tidak terlalu canggih, mereka sering mendukung tekstur NPOT, tetapi dukungannya cukup lambat dan canggung;
Bahkan GPU yang lebih lama dapat menolak untuk menerima / menampilkan tekstur NPOT sama sekali;
Mungkin ada artefak merayap yang disebabkan oleh interpolasi mip-peta, tekstur 25x25 Anda mungkin memiliki pinggiran hitam di mana piksel ditambahkan untuk memasukkannya ke ukuran 32x32.
NB Saya tidak tahu pasti tentang perangkat seluler, bahkan mungkin ada lebih banyak pembatasan mengenai tekstur POT.
Apa kelebihan yang dimiliki tekstur non-kekuatan-dua, jika ada?
Sejauh yang saya tahu hanya ada 2 keuntungan:
- Mereka mengambil lebih sedikit ruang pada HDD jika mereka tidak dikemas (ketika area kosong yang dikemas memberi sangat sedikit tambahan)
- Anda dapat menghemat waktu dalam menulis NPOT -> POT converter. Anda akan membutuhkan satu untuk versi rilis, tetapi menggunakan tekstur NPOT untuk mendesain dan membuat prototipe antarmuka / model tidak masalah
Apakah ada populasi besar pengguna desktop yang tidak memiliki kartu yang mendukung tekstur non-kekuatan-dua?
Sejauh yang saya tahu dan diuji pada PC - Ya. Itu termasuk persentase utama GPU penurunan kecepatan / bug minor dan persentase kartu kecil yang tidak akan menangani NPOT sama sekali.