Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
En resurs är ett område i minnet som kan nås av Direct3D-pipelinen. För att pipelinen ska kunna komma åt minnet effektivt måste data som tillhandahålls till pipelinen (till exempel indatageometri, skuggningsresurser, texturer osv.) lagras i en resurs. Det finns två typer av resurser som alla Direct3D-resurser härleds från: en buffert eller en struktur. Upp till 128 resurser kan vara aktiva för varje pipelinesteg.
Varje program skapar vanligtvis många resurser. Exempel på resurs är: hörnbuffertar, indexbuffert, konstant buffert, texturer och skuggningsresurser. Det finns flera alternativ som avgör hur resurser kan användas. Du kan skapa resurser som är starkt skrivna eller skriver mindre. du kan styra om resurser har både läs- och skrivåtkomst; Du kan endast göra resurser tillgängliga för processorn, GPU:n eller båda. Naturligtvis kommer det att finnas hastighet kontra funktionalitet kompromiss - ju fler funktioner du tillåter en resurs att ha, desto mindre prestanda bör du förvänta dig.
Eftersom ett program ofta använder många texturer introducerar Direct3D även begreppet texturmatris för att förenkla texturhanteringen. En strukturmatris innehåller en eller flera texturer (alla av samma typ och dimensioner) som kan indexeras inifrån ett program eller av skuggningar. Med strukturmatriser kan du använda ett enda gränssnitt med flera index för att få åtkomst till många texturer. Du kan skapa så många strukturmatriser som möjligt för att hantera olika strukturtyper som du behöver.
När du har skapat de resurser som programmet ska använda ansluter eller binder du varje resurs till de pipelinefaser som ska använda dem. Detta uppnås genom att anropa ett bindnings-API, som tar en pekare till resursen. Eftersom mer än en pipelinefas kan behöva åtkomst till samma resurs introducerar Direct3D 10 begreppet resursvy. En vy identifierar den del av en resurs som kan nås. Du kan skapa m-vyer eller en resurs och binda dem till n pipelinesteg, förutsatt att du följer bindningsregler för delade resurser (körningen genererar fel vid kompileringstillfället om du inte gör det).
En resursvy ger en allmän modell för åtkomst till en resurs (texturer, buffertar osv.). Eftersom du kan använda en vy för att tala om för körningen vilka data som ska kommas åt och hur du kommer åt dem, kan du med resursvyer skapa typ färre resurser. Det vill säga att du kan skapa resurser för en viss storlek vid kompileringstillfället och sedan deklarera datatypen i resursen när resursen blir bunden till pipelinen. Vyer visar många nya funktioner för att använda resurser, till exempel möjligheten att läsa tillbaka djup-/stencilytor i skuggningen, generera dynamiska kubkartor i ett enda pass och återge samtidigt till flera sektorer av en volym.
Mer information om grundläggande resurstyper, strukturmatriser och hur du skapar och använder resurser finns i följande andra avsnitt:
- resurstyper
 - välja en resurs
 - Skapa buffertresurser
 - Skapa strukturresurser
 - kopiera och komma åt resursdata
 - minnesstruktur och vyer
 - Blockera komprimering
 - tabell med resursgränser
 - koordinatsystem
 - Floating-Point regler
 - regler för datatypkonvertering
 - Mappa äldre format
 
Relaterade ämnen