Jadi saya menulis sebuah game kecil menggunakan Direct3D 9 dan saya menggunakan multitexturing untuk medannya. Yang saya lakukan hanyalah mencicipi 3 tekstur dan peta campuran dan mendapatkan warna keseluruhan dari tiga tekstur berdasarkan saluran warna dari peta campuran. Bagaimanapun, saya mendapatkan penurunan frame rate yang besar ketika saya mencicipi lebih dari 1 tekstur, saya beralih dari 120+ fps menjadi hanya di bawah 50.
Ini adalah kode HLSL yang bertanggung jawab untuk memperlambat:
float3 ground = tex2D(GroundTex, multiTex).rgb;
float3 stone = tex2D(StoneTex, multiTex).rgb;
float3 grass = tex2D(GrassTex, multiTex).rgb;
float3 blend = tex2D(BlendMapTex, blendMap).rgb;
Apakah saya salah? Jika ada yang punya info atau tips tentang pengambilan sampel tekstur atau apa pun, itu akan menyenangkan.
Terima kasih.