Resursegenskaper (Direct3D 9)
Alla resurser delar följande egenskaper.
- Användning. Hur en resurs används, till exempel som en struktur eller ett återgivningsmål.
- Format. Dataformatet, till exempel pixelformatet för en 2D-yta.
- Pöl. Den typ av minne där resursen allokeras.
- Typ. Typ av resurs, till exempel ett hörnbuffert eller återgivningsmål.
Resursanvändning tillämpas. Ett program som ska använda en resurs i en viss åtgärd måste ange åtgärden när resursen skapas. En lista över de användningskonstanter som definierats för resurser finns i D3DUSAGE.
Konstanterna D3DUSAGE_RTPATCHES, D3DUSAGE_NPATCHES och D3DUSAGE_POINTS anger för drivrutinen att data i dessa buffertar sannolikt kommer att användas för triangulära korrigeringar eller rutnätskorrigeringar, N-korrigeringar respektive punktspridningar. Dessa flaggor tillhandahålls om maskinvaran inte kan utföra dessa åtgärder utan värdbearbetning. Därför vill drivrutinen allokera dessa ytor i systemminnet så att processorn kan komma åt dem. Om drivrutinen kan utföra dessa åtgärder helt i maskinvaran kan den allokera dessa ytor i video- eller AGP-minne för att undvika en värdkopia och förbättra prestandan minst två gånger. Observera att informationen som tillhandahålls av dessa flaggor inte är absolut nödvändig. En drivrutin kan identifiera att sådana åtgärder utförs på data och att bufferten flyttas tillbaka till systemminnet för efterföljande bildrutor.
Mer information om användningsflaggor och hur de relaterar till specifika resurser finns i referenssidorna för de enskilda metoderna för att skapa resurser.
Information om resursens ytformat finns i D3DFORMAT uppräknad typ.
Den minnesklass som innehåller en resurs buffertar kallas för en pool. Poolvärden definieras av den D3DPOOL uppräknade typen. Det går inte att blanda en pool för olika objekt som finns i en enskild resurs, dvs. mip-nivåer i en mipmap, och när en pool väljs för en resurs kan poolen inte ändras.
Resurstyperna anges implicit vid körning när programmet anropar en resursskapandemetod, till exempel IDirect3DDevice9::CreateCubeTexture. Resurstyper definieras av den D3DRESOURCETYPE uppräknade typen. Program kan köra frågor mot dessa typer vid körning. Det förväntas dock att de flesta scenarier inte kräver körningstypkontroll.
Relaterade ämnen