Sdílet prostřednictvím


Historie pixelů grafiky

Grafické Pixel historie, což je jedno z grafického diagnostické nástroje v sadě Visual Studio, mohou vám pomohou pochopit, jak byl určitý pixel ovlivněny Direct3D události během určitého snímku hra nebo aplikace.

Toto je grafické Pixel historie okna:

Pixel s tři typy událostí Direct3D v jeho historie.

[!POZNÁMKA]

Spuštění v aplikaci Visual Studio 2013 Update 3, windows nástroj pro diagnostiku grafické jsou umístěny v nezávislá kopie prostředí sady Visual Studio.Tento vlastní prostředí nazývají grafické analýzy eliminuje nepotřebné nabídek a možností, ale jinak stejná jako před jsou historie Pixel a pracovního postupu.Další informace o těchto změnách naleznete v tématu Přehled diagnostiky grafiky.

Seznámení s historie pixel

S použitím grafické Pixel historie, je možné analyzovat, jakým způsobem ovlivní pixelu cíl vykreslení Direct3D události během určitého snímku.Můžete přesně určit problém vykreslování na určité Direct3D události, i když následných událostí – nebo následné primitiv v stejnou událost – pokračovat pixel konečnou barvu hodnotu změnit.Například může být pixel nesprávně vykreslen a poté zakódován pomocí jiného, částečně průhledný pixel, takže jejich barvy jsou obsahuje tyto údaje společně framebuffer.Tento druh problému by být obtížné diagnostikovat pouze měl konečný obsah cíl vykreslení na vás.

Grafické Pixel historie okno zobrazí veškeré jeho historie pixel v průběhu vybraný rámec.Konečné vyrovnávací paměť snímku v horní části okna zobrazuje barvu, která je zapsán do framebuffer na konci rámce, jakož i dodatečné informace o pixel například rámce, který pochází z a souřadnice jeho obrazovky.Tato oblast také obsahuje vykreslení alfa zaškrtávací políčko.Pokud toto políčko zaškrtnuto, konečné vyrovnávací paměť snímku barvu a mezilehlé barvy hodnoty jsou zobrazeny s průhlednost nad šachovnice vzorek.Pokud je zaškrtnutí políčka zrušeno, je ignorován alfa kanálu hodnot barev.

Dolní části okna zobrazuje události, které využili příležitost dobře se vliv na barvu pixel, spolu s Počáteční a konečné pseudo události, které představují počáteční a konečné barevných hodnot pixel v framebuffer.Hodnota počáteční barva je určena první událost, která změnil barvu pixelu (obvykle Clear událostí).Tyto dvě události pseudo má pixel vždy v jeho historie, i v případě, že žádným dalším událostem ovlivněných ji.Při další události využili příležitost dobře se vliv pixel, jsou zobrazeny mezi Počáteční a konečné události.Události, které lze rozšířit a zobrazit jejich podrobnosti.Pro jednoduché události například ty, které vymazat cíl vykreslení efekt události je pouze hodnota barvy.Složitější událostmi, jako je například volání draw generovat jeden nebo více primitivní elementy, které může přispět k barvu pixelu.

Primitivní elementy, které byly vykreslené události jsou označeny jejich primitivní typ a index, spolu s celkový počet primitivní pro objekt.Můžete například identifikátor jako trojúhelník (1456) (6214) znamená, že primitivní odpovídá 1456th trojúhelník v objektu, který se skládá z 6214 trojúhelníků.Vlevo od každý primitivní identifikátor je ikona, která shrnuje vliv primitivní na pixelu.Primitivní elementy, které mají vliv na barvu pixel jsou reprezentována zaoblenými obdélníku, který je vyplněn barvou výsledek.Primitivní elementy, které jsou vyloučeny z mají vliv na barvu pixel jsou reprezentována ikony, které označují příčinu, aby byla vyloučena pixelu.Tyto ikony jsou popsány v sekci primitivní vyloučení dále v tomto článku.

Můžete rozšířit každý primitivní zkoumat, jak byl výstup shaderu pixel sloučen s existující barvu pixel a vytvoření barev výsledek.Zde můžete také prozkoumat nebo ladění kódu shaderu pixel přidruženou primitivní a může dále rozbalte uzel shader vrchol na vrcholu shader vstupu prověřit.

Primitivní vyloučení

Pokud na primitivní je vyloučena z ovlivnění barev pixelů, vyloučení problému může dojít z různých důvodů.Každý z důvodu je reprezentována ikona, který je popsán v této tabulce:

Ikona

Jaký je důvod k vyloučení

Hloubka test selhání ikonu.

Pixelu byla vyloučena, protože se nezdařilo hloubku test.

Nůžkovité test selhání ikonu.

Pixelu byla vyloučena, protože se nezdařilo Nůžkovité test.

Ikona selhání test vzorníku.

Pixelu byla vyloučena, protože se nezdařilo vzorníku test.

Kreslit volání vyloučení

Pokud všechny primitiv při kreslení volání jsou vyloučeny z které ovlivňují cíl vykreslení, protože jejich selhání testu, nelze rozbalit volání draw a ikona, která odpovídá důvod pro vyloučení se zobrazí vedle sebe.Důvody pro vyloučení draw volání vypadat podobně jako důvody pro vyloučení primitivní a jejich ikony jsou podobné.

Prohlížení a ladění kódu shaderu

Můžete zobrazit kód pro vrchol Shader, trupu Shader, domény Shader, Geometrie Shader, nebo Pixel Shader, nebo ladění, pomocí ovládacích prvků pod primitivní, která je přiřazena k shaderu.

Chcete-li zobrazit shaderu zdrojového kódu

  • Pod primitivní vlastnost přidruženou shader, který chcete zobrazit, vyberte nadpis shader – například zvolit vrchol Shader zobrazení vrchol shader zdrojového kódu.

Chcete-li ladit shaderu

  • Pod primitivní vlastnost přidruženou shader, který chcete ladit, k pravému okraji nadpis shaderu, zvolte Spustit ladění.

Odkazy na grafické objekty

Abyste pochopili grafické události v historii pixel, bude pravděpodobně nutné informace o stavu zařízení v době této události a Direct3D objekty, které odkazují na událost.U každé události v historii pixel grafické Pixel historie obsahuje odkazy na zařízení aktuálními stavu a na související objekty.

Viz také

Úkoly

Návod: Chybějící objekty z důvodu stavu zařízení

Návod: Ladění chyb při vykreslování způsobených stínováním