Quindi sto scrivendo un piccolo gioco usando Direct3D 9 e sto usando il multitexturing per il terreno. Tutto quello che sto facendo è campionare 3 trame e una mappa di fusione e ottenere il colore complessivo dalle tre trame in base ai canali di colore dalla mappa di fusione. Ad ogni modo, sto ottenendo un forte calo della frequenza dei fotogrammi quando campiono più di 1 trama, vado da 120+ fps a poco meno di 50.
Questo è il codice HLSL responsabile del rallentamento:
float3 ground = tex2D(GroundTex, multiTex).rgb;
float3 stone = tex2D(StoneTex, multiTex).rgb;
float3 grass = tex2D(GrassTex, multiTex).rgb;
float3 blend = tex2D(BlendMapTex, blendMap).rgb;
Sto sbagliando? Se qualcuno ha informazioni o suggerimenti sul campionamento delle trame o altro, sarebbe bello.
Grazie.