Přehled diagnostiky grafiky sady Visual StudioOverview of Visual Studio Graphics Diagnostics

Poznámka

Tento článek se týká sady Visual Studio 2015.This article applies to Visual Studio 2015. Pokud hledáte nejnovější dokumentaci k sadě Visual Studio, použijte selektor verzí v levém horním rohu.If you're looking for the latest Visual Studio documentation, use the version selector at the top left. Doporučujeme upgradovat na Visual Studio 2019.We recommend upgrading to Visual Studio 2019. Stáhnout semDownload it here

Visual Studio diagnostiky grafiky je sada nástrojů pro nahrávání a pak analýzu problémů vykreslování a výkon v aplikacích rozhraní Direct3D.Visual Studio Graphics Diagnostics is a set of tools for recording and then analyzing rendering and performance problems in Direct3D apps. Diagnostika grafiky je použít v aplikacích, které běží místně v počítači Windows v emulátoru zařízení Windows nebo na vzdálený počítač nebo zařízení.Graphics Diagnostics can be used on apps that are running locally on your Windows PC, in a Windows device emulator, or on a remote PC or device.

Použití Diagnostiky grafiky k ladění problémů s vykreslovánímUsing Graphics Diagnostics to debug rendering problems

Ladění problémů s vykreslováním v aplikaci s bohatou grafikou není tak přímočaré jako spuštění ladicího programu a krokování kódu.Debugging rendering problems in a graphically-rich app is not as straight-forward as starting a debugger and stepping through some code. V každém snímku jsou produkovány stovky tisíc jedinečných pixelů podle komplexní sady stavu, dat, parametrů a kódu. Z těchto pixelů může problém, který chcete diagnostikovat, vykazovat pouze několik málo pixelů.In each frame, hundreds of thousands of unique pixels are produced, each according to a complex set of state, data, parameters, and code—of these, perhaps only a few pixels will exhibit the problem you are trying to diagnose. A aby věci byly ještě složitější, kód, který generuje každý pixel, je spouštěn na specializovaném hardwaru, který paralelně zpracovává stovky pixelů.To complicate matters even further, the code that generates each pixel is executed on specialized hardware that processes hundreds of pixels in parallel. Tradiční nástroje a techniky ladění, které je obtížné využít i v kódu s malým počtem vláken, jsou v případě velkého množství dat neúčinné.Traditional debugging tools and techniques—which are difficult to leverage in even lightly-threaded code—are ineffective when faced with so much data.

Nástroje diagnostiky grafiky v Visual StudioVisual Studio jsou navržené tak, abychom vám pomohli najít problémů s vykreslováním pomocí vizuálních artefaktů, které označují problém a pak trasování zpět ke zdroji problému se zaměříte jenom na relevantní kód shaderu, kanálu fáze, kreslení volání, prostředky a stavu zařízení – ve zdrojovém kódu aplikace vlastní.The Graphics Diagnostics tools in Visual StudioVisual Studio are designed to help you locate rendering problems by starting with the visual artifacts that indicate the problem and then tracing back to the source of the problem by focusing only on relevant shader code, pipeline stages, draw calls, resources, and device state—in the app's own source code.

Kompatibilita verzí DirectXDirectX version compatibility

Diagnostika grafiky podporuje aplikace používající rozhraní Direct3D 12, Direct3D 11 a Direct3D 10 a poskytuje omezenou podporu pro aplikace, které používají rozhraní Direct2D.Graphics Diagnostics supports apps that use Direct3D 12, Direct3D 11, and Direct3D 10, and provides limited support for apps that use Direct2D. Nepodporuje aplikace, které používají starší verze rozhraní Direct3D, DirectDraw nebo jiné grafické rozhraní API.It does not support apps that use earlier versions of Direct3D, DirectDraw, or other graphics APIs.

Windows 10 a Direct3D 12Windows 10 and Direct3D 12

Windows 10 přináší další verze rozhraní Direct3D, Direct3D 12, který je odlišný od rozhraní Direct3D 10 a Direct3D 11.Windows 10 introduces the next version of Direct3D, Direct3D 12, which is substantially different from Direct3D 10 and Direct3D 11. Tyto rozdíly vrácení DirectX na zarovnání s moderních grafických hardwaru a jeho plného potenciálu unleashing, ale také přenést velké změny rozhraní API a umístit větší zodpovědnost na programátorovi, aby Správa prostředků životnost a množství kolizí.These differences bring DirectX back into alignment with modern graphics hardware and unleashing its full potential, but they also bring big API changes and place greater responsibility on the programmer to manage resource lifetimes and contention. Skvělé ladicí nástroje, je zásadní umožňující programátorům grafiky při tomto přechodu postupovali, takže diagnostiky grafiky v sadě Visual Studio 2015 podporuje Direct3D12 vpravo od začátku.Having great debugging tools is crucial to help graphics programmers make this transition, so Graphics Diagnostics in Visual Studio 2015 supports Direct3D12 right from the start. Bez ohledu na rozdíly udržuje diagnostiky grafiky s Direct3D 12-paritu funkcí s diagnostikou grafiky s Direct3D 11.2 pomocí funkce Analýza snímků na aktuální výjimku.Despite the differences, Graphics Diagnostics with Direct3D 12 maintains feature-parity with Graphics Diagnostics with Direct3D 11.2, with the current exception of the Frame Analysis feature. Brzy podporu pro analýzu snímků v Direct3D 12 se přidají, za nímž následuje nové diagnostické nástroje, které pomáhají při řešení nové typy chyb, které můžete narazit v Direct3D 12.Soon, support for Frame Analysis in Direct3D 12 will be added, followed by new diagnostics tools to help you solve new kinds of bugs you might encounter in Direct3D 12.

Windows 10 také udržuje pro podporu pro předchozí verze rozhraní Direct3D, hry a aplikace, které spoléhají na ně.Windows 10 also maintains support for previous versions of Direct3D and the games and applications that rely on them. Diagnostika grafiky ve Visual Studiu 2015 i nadále podporuje Direct3D 10 a Direct3D 11 ve Windows 10, stejně jako na Windows 8.1.Graphics Diagnostics in Visual Studio 2015 continues to support Direct3D 10 and Direct3D 11 on Windows 10, as well as on Windows 8.1.

Windows 8.1 a Direct3D 11.2Windows 8.1 and Direct3D 11.2

V Windows 8.1Windows 8.1, DirectX 11.2 zavádí nové funkce, které zahrnují podporu pro zaznamenání grafických informací prostřednictvím jeho modulu runtime.In Windows 8.1Windows 8.1, DirectX 11.2 introduces new features that include support for capturing graphics information through its runtime. Windows 8.1Windows 8.1 používá nové zachytávání založených na prostředí runtime – označované jako robustní zachycení– výhradně pro všechny verze rozhraní DirectX, které Windows 8.1Windows 8.1 podporuje.uses the new runtime-based capture—known as robust capture—exclusively for all versions of DirectX that Windows 8.1Windows 8.1 supports. Robustní zachycení také podporuje nové funkce rozhraní Direct3D 11.2.Robust capture also supports new features of Direct3D 11.2.

Omezená podpora rozhraní Direct2DLimited Direct2D support

Protože Direct2D je rozhraní API uživatelského režimu, které navazuje na Direct3D, můžete Diagnostiku grafiky použít k ladění problémů s vykreslováním v aplikacích, které využívají Direct2D.Because Direct2D is a user-mode API that’s built on top of Direct3D, you can use Graphics Diagnostics to help debug rendering problems in apps that use Direct2D. Protože jsou však zaznamenány pouze základní události rozhraní Direct3D namísto událostí rozhraní Direct2D na vyšší úrovni, události Direct2D se na seznamu událostí grafiky nezobrazí.However, because only the underlying Direct3D events are recorded instead of the higher-level Direct2D events, Direct2D events won't appear in the Graphics Event List. A protože vztah mezi událostmi rozhraní Direct2D a výslednými událostmi rozhraní Direct3D není vždy jasný, použití Diagnostiky grafiky k ladění problémů s vykreslováním v aplikacích, které používají Direct2D, není vždy přímočaré.Also, because the relationship between Direct2D events and the resulting Direct3D events are not always clear, using Graphics Diagnostics to debug rendering problems in apps that use Direct2D is not straight forward. Nadále můžete Diagnostiku grafiky použít k získání informací o problémech s vykreslováním na nízké úrovni v aplikacích, které používají rozhraní Direct2D.Still, you can use Graphics Diagnostics to get information about low-level rendering problems in apps that use Direct2D.

Funkce diagnostiky grafiky sady Visual StudioGraphics Diagnostics features in Visual Studio

Diagnostika grafiky má vyhrazené rozhraní – okno Graphics Analyzer – pro některé nástroje pro diagnostiku problémů s vykreslováním, ale také přidá do rozhraní sady Visual Studio.Graphics Diagnostics has a dedicated interface—the Graphics Analyzer window—for diagnosing rendering problems, but it also adds some tools to the Visual Studio interface.

Panel nástrojů grafika (Visual Studio)The graphics toolbar (Visual Studio)

Panel nástrojů grafika poskytuje rychlý přístup k příkazům diagnostiky grafiky.The Graphics toolbar provides quick access to Graphics Diagnostics commands.

Spustit diagnostiku tlačítko spustí aplikaci v rámci diagnostiky grafiky.The Start Diagnostics button runs the app under Graphics Diagnostics. Když je aplikace spuštěna v rámci diagnostiky grafiky zachytit příští vykreslený snímek tlačítko je povolené.When an app is running under Graphics Diagnostics, the Capture the next rendered frame button is enabled.

Rozhraní zachycení diagnostikyDiagnostics capture interface

Při spuštění aplikace v rámci diagnostiky grafiky sady Visual Studio zobrazí rozhraní relace diagnostiky, můžete použít k zachycení snímků a také zobrazuje aktuální zatížení CPU a GPU.When you run your app under Graphics Diagnostics, Visual Studio displays a diagnostics session interface that you can use to capture frames and which also displays the current CPU and GPU load. Abyste mohli snadno identifikovat snímky, které můžete chtít zaznamenat z důvodu jejich výkonové charakteristiky, spíše než chyb při vykreslování se zobrazí zatížení CPU a GPU.The CPU and GPU load is displayed to help you identify frames you might want to capture due to their performance characteristics, rather than rendering errors.

To není jediný způsob, jak ale zachycování snímků.This isn't the only way to capture frames though. Můžete také zachytit snímky pomocí rozhraní zachytávání prostřednictvím kódu programu, nebo pomocí příkazového řádku pro zachytávání program dxcap.exe.You can also capture frames by using the programmatic capture interface, or by using the command-line capture program, dxcap.exe.

Zobrazit Capturing Graphics Information Další informace.See Capturing Graphics Information for more information.

Využití GPUGPU Usage

Diagnostika grafiky můžete také Profilovat výkon vaší aplikace Direct3D.Graphics Diagnostics can also profile the performance of your Direct3D app. Protože profilačních dat by být zkosené zaznamenávání podrobností událostí grafiky, to je oddělená od zachytávání snímků pro použití se Graphics Analyzeru.Because profiling data would be skewed by recording details of graphics events, this is separate from capturing frames to be used examined with the Graphics Analyzer.

Zobrazit využití GPU Další informace.See GPU Usage for more information.

Ovládací panel rozhraní DirectXDirectX control panel

Ovládací panel rozhraní DirectX je součástí rozhraní DirectX, které můžete použít ke změně způsobu, jakým se rozhraní DirectX chová – například povolit verzi ladění runtime komponent rozhraní DirectX a výběr druhu zpráv ladění, které jsou zaznamenány, a zakázat použití určitých funkcí hardwaru grafiky k emulaci hardwaru s méně funkcemi.The DirectX control panel is a component of DirectX that you can use to change the way that DirectX behaves—for example, you can enable the debug version of the DirectX runtime components, select the kind of debug messages that are reported, and disallow certain graphics hardware capabilities from being used to emulate less-capable hardware. Tato úroveň kontroly nad rozhraním DirectX vám může pomoct ladit a testovat vaši aplikaci DirectX.This level of control over DirectX can help you debug and test your DirectX app. Ovládací panel rozhraní DirectX zobrazíte ze sady Visual Studio.You can access the DirectX control panel from Visual Studio.

Otevření ovládacího panelu rozhraní DirectXTo open the DirectX control panel
  • V panelu nabídky zvolte ladění, grafiky, ovládací Panel rozhraní DirectX.On the menu bar, choose Debug, Graphics, DirectX Control Panel.

Analyzátor grafikyGraphics Analyzer

Visual Studio Graphics Analyzer je vyhrazený rozhraní pro zkoumání problémů vykreslování a výkonu v snímky, které jste zaznamenali.The Visual Studio Graphics Analyzer is a dedicated interface for examining rendering and performance problems in frames you've already captured. V analyzátoru grafiky sady najdete několik nástrojů, které vám pomůžou prozkoumat a pochopit chování vykreslování vaší aplikace.Inside Graphics Analyzer, you'll find several tools to help you explore and understand the rendering behavior of your app. Každý nástroj zpřístupňuje jiný druh informací o rámec, který je kontrolován a nástroje jsou navrženy pro použití ve vzájemné součinnosti intuitivně úzký-v na zdroji problému vykreslování, počínaje její vzhled v framebuffer.Each tool exposes a different kind of information about the frame that's being inspected, and the tools are designed to be used in concert to intuitively narrow-in on the source of a rendering problem, starting from the its appearance in the framebuffer.

Tento obrázek ukazuje typické rozvržení nástroje v Graphics Analyzeru.This illustration shows a typical layout of tools in the Graphics Analyzer.

Všechny obrázky okna ladicího programuAll of the graphics debugger windows

Panel nástrojů grafika (analyzátoru grafiky sady)The graphics toolbar (Graphics Analyzer)

Panel nástrojů grafika poskytuje rychlý přístup k analyzátoru grafiky sady nástrojů systému windows.The Graphics toolbar provides quick access to Graphics Analyzer tool windows.

Panel nástrojů grafika v režimu Diagnostika grafikyThe Graphics toolbar in graphics diagnostics mode

Dokument grafických protokolůGraphics log document

V analyzátoru grafiky je dokument grafických protokolů nejvýraznější panel nástrojů.Inside the Graphics Analyzer, the graphics log document is the most prominent tool window. Toto okno představuje všechny snímky, které jste zachytili spuštěním vaší aplikace v rámci diagnostiky grafiky.This window represents all of the frames you captured by running your app under Graphics Diagnostics. Tady můžete vybrat jiný snímek prozkoumat nebo vybrat konkrétní bod, který chcete prozkoumat pomocí nástroje z historie pixelů.From here, you can select a different frame to examine or select a specific pixel that you want to examine with the Pixel History tool. Framebuffer obrázek zobrazený v tomto dokumentu tak, aby odrážely aktuálně vybrané události tak, aby viděli vliv framebuffer v čase.The framebuffer image displayed in this document changes to reflect the currently selected Event so that you can see how the framebuffer is affected over time.

Dokument grafických protokolů je také vstupní bod do nástroje Analýza snímků, které vám pomůže porozumět výkonu tohoto objektu frame mění způsob, jak jsou nakonfigurované některé aspekty vykreslování a poskytnutím výsledky srovnávacích testů porovnání s původní.The Graphics Log Document is also the entry point to the Frame Analysis tool, which helps you understand the performance of a frame by changing the way certain aspects of rendering are configured and providing benchmark results to compare with the original.

Seznam událostíEvent list

Grafické události označit každé volání rozhraní API Direct3D a uživatelem definovanou událost.Graphic events mark each Direct3D API call and user-defined event.

Seznam událostí zobrazí všechny události grafiky, které byly zaznamenány během rámce při zkoumání.The Event List shows all of the graphics events that were recorded during the frame you're examining. A umožňují najít, co je důležité, můžete hierarchicky zobrazit seznam událostí – s poslední změny stavu pod následné nakreslit volání, nebo ve formátu časové osy.To help you find what's important, the event list can be viewed hierarchically—with recent state-changes underneath the subsequent draw call—or as a timeline. Kromě toho události se barevně podle toho, ke které patří do fronty a můžete filtrovat, aby obsahoval pouze události, které vás zajímají.Additionally, events are color-coded based on the queue they belong to and you can filter the list to only include the events you're interested in.

Když vyberete událost v seznamu, zbývající části nástroje pro analýzu grafiky odráží stav rámce v době této události.When you select an event in the list, the rest of the Graphics Analysis tools reflect the state of the frame at the time of that event. Tímto způsobem vidíte účinek jakékoli události na GPU.In this way, you can see the effect of any event on the GPU. Přímý vliv jakékoli draw volat framebuffer, například vidíte i v případě, že se stane po volání draw následné skryt.For example, you can see the immediate effect of any draw call on the framebuffer, even if it becomes obscured by subsequent draw calls. Některé události obsahují také hypertextové odkazy můžete provést, abyste zobrazili další podrobnosti o jeho parametry nebo objektů souvisejících prostředků.Some events also have hyperlinks you can follow to see more details about its parameters or related resource objects.

Fáze zřetězeníPipeline stages

Každé volání draw ve vaší aplikaci prochází zřetězení grafiky poskytované rozhraní Direct3D.Each draw call in your app goes through the graphics pipeline provided by Direct3D. V každé fázi v kanálu je výstup z předchozí fáze transformovány sadou malý program, volá shaderu a potom předá do další fáze, až se nakonec vykreslí na obrazovce.At each stage in the pipeline, output from the previous stage is transformed by a small program, called a shader, and then passed to the next stage until it is finally rendered to the screen. Mnoho chyb při vykreslování vyskytovat na hranici mezi fáze zřetězení při výstupní formát se liší, než se očekává, že další fází nebo při libovolné jedné fáze jednoduše produkuje nesprávné výsledky.Many rendering errors occur at the boundary between pipeline stages when the output format is different than the next stage expects, or when any one stage simply produces incorrect results. Za normálních okolností pouze získání konečných výsledků uvidíte na obrazovce a nelze snadno zjistit, kde v kanálu došlo k chybě.Normally, you only get the final results as you would see on your screen and you can't easily tell where in the pipeline the error occurred.

Fáze zřetězení okno vizualizuje výsledek každou z fází nezávisle na sobě, takže můžete snadněji určit, které fázi k problému vykreslování se nejprve zobrazí v.The Pipeline Stages window visualizes the result of each stage independently, so that you can more easily determine which stage a rendering problem first appears in. Jakmile jste zjistili, který fáze to znamená, můžete začít ladění jeho shaderu přímo z okna fáze zřetězení.Once you've determined which stage that is, you can start debugging its shader right from the Pipeline Stages window.

Stav grafikyGraphics State

Vykreslování operace závisí na mnoha stavu, který je obvykle rozdělena mezi více objektů.Rendering operations depend on a lot of state that's typically spread across multiple objects. Různé druhy problémů s vykreslováním jsou způsobené nesprávně nakonfigurovanými stavu.Many kinds of rendering problems are caused by misconfigured state.

Stavu okno shromažďuje relevantní pro každé volání draw pohromadě na jednom místě informace o stavu, takže je jednodušší zjistit, a také nakreslit vybraná vystoupení, změny stavu, ke kterým došlo od předchozího volání.The State window collects the state information relevant to each draw call together in one place so that it's easier to find, and also highlights the state changes that have occurred since the previous draw call.

Historie pixelůPixel history

Ve vytváření složitých scén není, pixel na být stín více než jednou v jeden snímek.In complex scenes, it's not uncommon for a pixel to be shaded multiple times in a single frame. Někdy je právě přepsána, ale jiné časy jsou zkombinované barvy starší barva dohromady a dosahovat efektů, jako je například průhlednost.Sometimes the earlier color is just overwritten, but other times the colors are combined together to achieve effects such as transparency. Když výsledek je spolu kombinovat nemá správné vzhled nelze zjistit snadno Pokud je to proto, že jeden z barvy byl nesprávný, nebo pokud dojde k nějakému problému s tak, jak byly sloučeny.When the result of combining them together doesn't have the right appearance you can't easily tell if it's because one of the colors was incorrect, or if there's a problem with the way they were combined. Jindy objekt může zobrazit chyběla, protože jeho příspěvku obrazového bodu byl odmítnut z nějakého důvodu.Other times, an object might appear to be missing because its contribution to the pixel was rejected for some reason.

Historie pixelů okno vizualizuje kompletní shaderu historii každý pixel v rámci, včetně odmítnuté příspěvků.The Pixel History window visualizes the complete shader history of every pixel in the frame, including rejected contributions. Příspěvky, které nebyly odmítnuty zobrazí nezpracované shaderu výsledky a jak byl každou novou barvu kombinovat s předchozím histogramem.For contributions that weren't rejected, it displays the raw shader results and how each new color was combined with the previous one. Pomocí těchto informací je mnohem jednodušší zdroj chyby v pixelech, který blend shaderu výsledky nebo když vykreslené objektu chybí, protože jeho příspěvku obrazového bodu nesprávně byl odmítnut.With this information, it's much easier to locate the source of errors in pixels that blend shader results, or when a rendered object is missing because its contribution to the pixel was incorrectly rejected.

Zásobník volání událostíEvent call stack

Kód shaderu není jediný zdroj problémů s vykreslováním v aplikaci rozhraní Direct3D, někdy zdrojovém kódu vaší aplikace předá parametr nesprávné nebo neprovede konfiguraci Direct3D úplně vpravo.Shader code isn't the only source of rendering problems in a Direct3D app, sometimes your app's source code passes the wrong parameter or doesn't configure Direct3D quite right. Jeden typ chyby, funkci bylo uvedeno výše, historie pixelů, vám může pomoct najít při vykreslené objekt nebyl nalezen, protože byly odmítnuty jeho pixelů.One kind of error that the previously discussed feature, Pixel History, can help you find is when a rendered object is missing because all its pixels have been rejected. Předejít těmto chybám obvykle dochází, když je špatně nakonfigurovaný. nastavení, jako ten, který určuje, jak se provádí testem hloubky a obvykle lze najít vaše chyba někde v zásobníku volání chybí objekt nakreslete volání.This kind of error usually happens when you misconfigured a setting, such as the one that controls how the depth test is performed, and you can usually find your mistake somewhere in the call stack of the missing object's draw call.

Zásobník volání událostí okno zobrazuje úplný zásobník volání každé události grafiky v seznamu událostí, a dokonce umožňuje přejít do své aplikace zdrojový kód, pokud informace o ladění je k dispozici.The Event Call Stack window displays the complete call stack of every graphics event in the Event List, and even lets you jump to your app's source code if debugging information is available. Jedná se o výkonný nástroj pro následující chybu z kde se poprvé objeví, na grafickém procesoru zpět k původu ve zdrojovém kódu vaší aplikace.This is a powerful tool for following an error from where it first appears, on the GPU, back to where it originated in your app's source code.

Tabulka objektůObject table

Každý snímek vaší aplikace vykreslení je pravděpodobně založená na stovky nebo i tisíce objektů prostředků.Every frame your app renders is probably backed by hundreds or even thousands of resource objects. Ty můžete zahrnout back vyrovnávací paměti a vykreslení cíle, textury, vyrovnávací paměti vrcholů, vyrovnávací paměť indexu, obecné vyrovnávací paměti – téměř vše, co si pamatuje Direct3D je objekt.These can include back buffers and render targets, textures, vertex buffers, index buffers, general buffers—almost everything Direct3D remembers is an object.

Tabulky objektů zobrazí všechny objekty, které existují v okamžiku událostí grafiky vybrali v seznamu událostí.The Object Table displays all the objects that exist at the time of the graphics event selected in the event list. Protože většina objektů v typické aplikaci jsou textury, je optimalizovaná seznam událostí zobrazíte podrobnosti související s imagí na první pohled.Since most objects in a typical app are textures, the event list is optimized to show details relevant to images at a glance. Sloupec typu sděluje, kterým druhem objektu je v každém řádku a zobrazuje další sloupec formátu dílčí typ nebo verzi objektu.The Type column tells you what kind of object is in each row, and the Format column further shows the sub-type or version of the object. Další podrobnosti jsou také zobrazeny.Other details are also shown. Některé objekty mají také hypertextových odkazů, které můžete provést, abyste objekt s více specializované prohlížeč, jako je například textury (textury jako obrázek zobrazit) nebo vyrovnávací paměti (můžete zvolit, jak prohlížeč vyrovnávací paměti analyzuje a zobrazuje počet bajtů nezpracované vyrovnávací paměti tak, že definujete vyrovnávací paměti Formát).Some objects also have hyperlinks you can follow to view the object with a more specialized viewer, such as textures (you can view the texture as an image), or buffers (you can choose how the buffer viewer parses and displays the raw buffer bytes by defining the buffer format).

Analýza snímkůFrame analysis

Grafiky vaše aplikace právě nemusí být správné – je třeba je příliš rychle.Your app's graphics don't just need to be correct – they need to be fast, too. Dokonce i na méně výkonných zařízení, jako jsou přenosné počítače s integrované grafické nebo mobilní telefony.Even on less-powerful devices like laptops with integrated graphics or mobile phones. A stále potřebují vypadat moc velký.And they still need to look great too.

Analýza snímků nástroj zkoumá potenciální optimalizací výkonu automaticky mění způsob, jak aplikace používá rozhraní Direct3D a poskytnutím výsledky srovnávacích testů pro porovnání.The Frame Analysis tool explores potential performance optimizations by automatically changing the way the app uses Direct3D and providing benchmark results for comparison. Analýza snímků můžete například povolit mip mapování na každý textury, které může odhalit textury, které můžou mít užitek z mapování mip, ale aktuálně nemáte, povolené.For example, Frame Analysis can enable mip-mapping on every texture, which might reveal textures that could benefit from mip-mapping but don't currently have it enabled. Na hardwaru, která ho podporuje, analýza snímků také prezentuje informace shromážděné z čítače výkonu GPU – tato úroveň informací může identifikovat problémy s výkonem úrovni hardwaru, jako je například vysoké množství přepínání načítání textury nebo Neúspěšné přístupy do mezipaměti.On hardware that supports it, Frame Analysis also presents information collected from the GPU's performance counters—this level of information can identify hardware-level performance issues, such as high numbers of texture fetch stalls or cache misses.

Ale analýza snímků není jen o přejděte rychle – jde o získání většiny výkonu současně přitom ztráty minimální množství vizuální kvality.But Frame Analysis isn't just about going fast – it's about gaining the most performance you can while giving up the least amount of visual quality. Někdy nevyužívá nákladné efekt, který vypadá velmi velké zobrazení na stejné dopad při prohlížení na malé obrazovce telefonu, kde jednodušší vliv může vypadat stejně dobře bez vyprázdnění baterie.Sometimes an expensive effect that looks great on a large display doesn't make the same impact when viewed on the small screen of a phone, where a simpler effect might look just as good without draining the battery. Automatické změny a výsledkům srovnávacích testů, které poskytuje grafické analýzy můžete najít rovnováhu, která je nejvhodnější pro vaši aplikaci v široké škále zařízení.The automatic changes and benchmarks that Graphics Analysis provides can help you find the balance that’s right for your app across a range of devices.

Viz takéSee Also

Nástroj příkazového řádku pro zachytávání ladicí program HLSLCommand-Line Capture Tool HLSL Debugger