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.
För icke-kaklade resurser kan Direct3D förhindra vissa riskförhållanden under återgivningen, men eftersom riskspårning skulle vara på kakelnivå för kaklade resurser kan det bli för kostsamt att spåra riskförhållanden under återgivningen av kaklade resurser.
För icke-uppdelade resurser tillåter körningen till exempel inte att en specifik SubResource binds som indata (till exempel en ShaderResourceView) och som utdata (till exempel en RenderTargetView) samtidigt. Om ett sådant fall påträffas vid körning, tas bindningen bort från indata. Den här spårningsbelastningen i körningen är billig och utförs på nivån SubResource. En av fördelarna med den här spårningskostnaden är att minimera risken för program av misstag beroende på körningsordningen för maskinvaruskuggning. Körningsordningen för shaders kan variera, om inte på en specifik grafikprocessor (GPU), så i alla fall mellan olika GPU:er.
Det kan vara för dyrt att spåra hur resurser är bundna för tilldelade resurser eftersom spårningen är på tilldelningsnivå. Nya problem uppstår, till exempel att eventuellt validera bort försök att rendera till en RenderTargetView med en panel mappad till flera områden i ytan samtidigt. Om det visar sig att den här farospårningen per panel är för dyr för körningen skulle detta helst åtminstone vara ett alternativ i felsökningsskiktet.
Ett program måste informera visningsdrivrutinen när den har utfärdat en skriv- eller läsåtgärd till en tillagda resurs som refererar till panelpoolens minne som också refereras av separata tillagda resurser i kommande läs- eller skrivåtgärder som den förväntar sig att den första åtgärden ska slutföras innan följande åtgärder kan påbörjas. Mer information om det här villkoret finns i ID3D11DeviceContext2::TiledResourceBarrier kommentarer.
Relaterade ämnen