Seznam událostí grafiky
Použít seznam událostí grafiky v Visual Studio grafické diagnostiky objevovat Direct3D události, které byly zaznamenány při vykreslování rámec hra nebo aplikace.
Toto je seznam událostí grafické okna:
[!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 seznam událostí grafiky a pracovního postupu.Další informace o těchto změnách naleznete v tématu Přehled diagnostiky grafiky.
Pomocí seznamu událostí
Když vyberete událost v případě, že seznamu, která má projeví v informace, které se zobrazí v jiných nástrojích grafické diagnostiku; Pomocí seznamu událostí spolupracuje s tyto nástroje můžete zjistit problém vykreslování podrobně pro zjištění jeho příčiny.Další informace o tom, jak lze řešení problémů vykreslování pomocí seznamu událostí spolu s další grafické diagnostické nástroje, naleznete v článku Příklady diagnostiky grafiky.
Pomocí funkcí seznamu událostí efektivně je důležité pro získání kolem složitý rámců, které by mohly obsahovat tisíce událostí.Chcete-li efektivně použít seznam událostí, zvolte možnost, že zobrazení bude nejlépe vyhovovat, pomocí vyhledávání můžete filtrovat seznam událostí, postupujte podle odkazy na další informace o Direct3D objekty, které jsou přidruženy k událost a pomocí kláves ŠIPKA tlačítka pro přesun mezi rychle nakreslete volání.
Zobrazení seznamu událostí
Seznam událostí podporuje dvěma různými způsoby, které uspořádat grafické události různými způsoby na podporu pracovních postupů a předvolby.Je první zobrazení draw volá zobrazení které slouží k uspořádání události a jejich přidružené stavu hierarchicky.Druhý zobrazení je zobrazení Časová osa které slouží k uspořádání události časovém pořadí, v prostého seznamu.
Kreslit volání zobrazení
Zobrazí zaznamenat události a jejich stavu v hierarchii.Nejvyšší úroveň hierarchie je tvořena událostmi, jako je například volání kreslit, vymaže, k dispozici a týkající se zobrazeními.V případě, že seznam, můžete rozšířit kreslit volání, chcete-li zobrazit stav zařízení, která byla aktuální v době vystavení volání; a dále rozbalte položku jednotlivé typy stavu k zobrazení události, které nastavte jejich hodnoty.Na této úrovni se také zobrazí zda určitý stav byl nastaven v předchozí snímek, nebo zda je nastaven více než jednou vzhledem k tomu, že poslední kreslit volání.Časová osa zobrazení
Zobrazí každé zachycené události v chronologickém pořadí.Tento způsob uspořádání seznamu událostí je stejný jako v předchozích verzích sady Visual Studio.
Chcete-li změnit režim zobrazení seznamu události
- V seznam událostí grafické okna nad seznam událostí, vyhledejte zobrazení rozevírací seznam a zvolili buď Časová osa zobrazení nebo Kreslit volání zobrazení.
Filtrování událostí
Můžete použít vyhledávací pole – nachází v pravém horním rohu seznam událostí grafické okna – k filtrování seznamu událostí tak, aby obsahoval pouze události, jejichž názvy obsahují konkrétní klíčová slova.Můžete zadat jeden klíčová slova, jako jsou vrchol– jak je znázorněno v předchozím příkladu – nebo více klíčových slov pomocí seznamu oddělené středníky jako Kreslit;Primitivníkterá odpovídá události, které mají buď Draw nebo Primitive v jejich názvy.Hledání jsou citlivé na prázdné znaky – například VSSet a VS nastavit jsou různé hledání – proto se ujistěte, k vyhledávání, ve formě pečlivě.
Přesun mezi draw volání
Vzhledem k tomu, že prověříte Draw volání je obzvláště důležité, můžete použít Přejít na další kreslit volání a Přejít na předchozí kreslit volání tlačítka – umístěn v levém horním rohu seznam událostí grafické okna – vyhledávat a rychlý přechod mezi draw volání.
Odkazy na grafické objekty
Abyste pochopili určitých událostí grafiky, bude pravděpodobně nutné další informace o aktuálním stavu zařízení nebo Direct3D objekty, které odkazují na událost.Mnoho událostí obsahují odkazy na tyto informace, které můžete sledovat další podrobnosti.
Typy událostí a událostí značky
Události, které se zobrazí v případě, že seznam jsou uspořádány do kategorií čtyři: Obecné události kreslit události, uživatelem definované události skupin a uživatelem definované události značek.S výjimkou obecné události zobrazí se společně s ikonu, která označuje kategorii, která patří do jednotlivých událostí.
Ikona |
Popis události |
---|---|
(bez ikony) |
|
|
|
|
|
|
Uživatelem definované události
Uživatelem definované události platí pouze pro vaše aplikace.Můžete využít ke korelaci významné události, k nimž došlo ve vaší aplikaci s událostmi v seznamu událostí grafiky.Můžete například vytvořit uživatelem definované události skupiny a uspořádat související události, jakou jsou například ty, které vykreslují uživatelské rozhraní – do skupiny nebo hierarchie tak, aby je možné snadněji procházet seznam událostí, nebo můžete vytvořit značky při určité druhy objekty se mají vykreslovat tak, aby mohli snadno najít své grafické události v seznamu událostí.
K vytváření skupin a značky ve vaší aplikaci, můžete používat stejné rozhraní API, která poskytuje Direct3D za účelem použití jiných Direct3D ladicí nástroje.Následující tabulka shrnuje rozhraní API, která slouží k vytváření skupin a značky v různých verzích Direct3D.
Popis rozhraní API |
ID3D11DeviceContext2 (Direct3D 11.2) |
ID3DUserDefinedAnnotation (Direct3D 11.1) |
Rozhraní API D3DPerf_ řady (Direct3D 11.0 a starší) |
---|---|---|---|
Začněte skupinu události |
BeginEventInt |
BeginEvent |
D3DPerf_BeginEvent |
Konec skupinu události |
EndEventInt |
EndEvent |
D3DPerf_EndEvent |
Vytvořit značku události |
SetMarkerInt |
SetMarker |
D3DPerf_SetMarker |
Můžete použít některý z těchto rozhraní API, které podporuje vaše verze aplikace Direct3D – například při cílení Direct3D 11.1 rozhraní API, můžete použít jedno SetMarker nebo D3DPerf_SetMarker Chcete-li vytvořit značku události, nikoli však SetMarkerInt protože jeho k dispozici pouze v Direct3D 11.2 – a můžete kombinováním i ty, které podporují různé verze rozhraní Direct3D společně ve stejném aplikaci.