{"id":2465,"date":"2017-02-23T22:18:08","date_gmt":"2017-02-23T22:18:08","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/pix\/?p=2465"},"modified":"2019-03-27T11:06:33","modified_gmt":"2019-03-27T18:06:33","slug":"pix-1702-23-002","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/pix\/pix-1702-23-002\/","title":{"rendered":"PIX 1702.23.002 \u2013 visualizers, better warnings UI, memory capture type tracking, and MSAA sample inspection"},"content":{"rendered":"<p>Today we released <a href=\"https:\/\/devblogs.microsoft.com\/pix\/download\/\">PIX 1702.23.002 beta<\/a>.\u00a0 New in this release:<\/p>\n<ul>\n<li>Rendertarget visualizers<\/li>\n<li>Improved <em>Warnings<\/em> user interface<\/li>\n<li>Memory captures now show allocated types<\/li>\n<li>On some hardware, the <em>Pipeline<\/em> view can now inspect individual sample values from MSAA rendertargets and depth buffers<\/li>\n<li>Shader debugging bugfixes<\/li>\n<li>Improved performance on captures that use tiled resources<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>Rendertarget visualizers are available in the <em>Pipeline<\/em> view when inspecting the contents of a rendertarget.\u00a0 The default <em>Image<\/em> visualizer just shows the image as normal:<\/p>\n<p style=\"padding-left: 30px\"><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/41\/2019\/03\/visualizer_image.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/41\/2019\/03\/visualizer_image.png\" alt=\"visualizer_image\" class=\"alignnone  wp-image-2475\" width=\"512\" height=\"316\" \/><\/a><\/p>\n<p>The <em>Wireframe<\/em> visualizer highlights whatever geometry was rendered by the currently selected draw call in wireframe.\u00a0 Visible pixels are shaded green, while culled pixels (eg. backfacing triangles or failed depth test) are red:<\/p>\n<p style=\"padding-left: 30px\"><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/41\/2019\/03\/visualizer_wireframe.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/41\/2019\/03\/visualizer_wireframe.png\" alt=\"visualizer_wireframe\" class=\"alignnone  wp-image-2485\" width=\"512\" height=\"316\" \/><\/a><\/p>\n<p>The <em>Overdraw<\/em> visualizer colors the scene according to how many pixels were shaded and written to the framebuffer after passing the depth test.\u00a0 This is useful for understanding how well things like front-to-back sorting or a z prepass are working to reduce overdraw:<\/p>\n<p style=\"padding-left: 30px\"><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/41\/2019\/03\/visualizer_overdraw.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/41\/2019\/03\/visualizer_overdraw.png\" alt=\"visualizer_overdraw\" class=\"alignnone  wp-image-2495\" width=\"512\" height=\"316\" \/><\/a><\/p>\n<p>The <em>Depth Complexity<\/em> visualizer is similar to <em>Overdraw<\/em>, but disables the depth test so the results indicate only how many triangles overlapped each pixel, regardless of sorting or z prepass:<\/p>\n<p style=\"padding-left: 30px\"><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/41\/2019\/03\/visualizer_depth_complexity.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/41\/2019\/03\/visualizer_depth_complexity.png\" alt=\"visualizer_depth_complexity\" class=\"alignnone  wp-image-2505\" width=\"512\" height=\"316\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>The <em>Warnings<\/em> user interface is now a separate view that can be resized and <a href=\"https:\/\/devblogs.microsoft.com\/pix\/window-arrangement\/\">rearranged<\/a> to suit your needs.\u00a0 It now provides hyperlinks to the events which caused each warning:<\/p>\n<p style=\"padding-left: 30px\"><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/41\/2019\/03\/new_warnings.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/41\/2019\/03\/new_warnings.png\" alt=\"new_warnings\" class=\"alignnone  wp-image-2515\" width=\"600\" height=\"258\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>Memory captures have a new view which identifies the types associated with each allocation.\u00a0 Details of the type allocated as well as a full layout of the structure are provided.\u00a0 This data makes use of the __declspec(allocator) descriptor that was added in VS2015.\u00a0 More information is available here:<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/cppblog\/tracking-custom-memory-allocations-with-visual-studio-15-preview-2\/\">https:\/\/devblogs.microsoft.com\/cppblog\/tracking-custom-memory-allocations-with-visual-studio-15-preview-2\/<\/a><\/p>\n<p>This display does not yet support identifying types allocated by custom heaps.<\/p>\n<p style=\"padding-left: 30px\"><a href=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/41\/2019\/03\/memory_capture_types.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/41\/2019\/03\/memoryalloctypes.png\" alt=\"memory_capture_types\" class=\"alignnone  wp-image-2525\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Today we released PIX 1702.23.002 beta.\u00a0 New in this release: Rendertarget visualizers Improved Warnings user interface Memory captures now show allocated types On some hardware, the Pipeline view can now inspect individual sample values from MSAA rendertargets and depth buffers Shader debugging bugfixes Improved performance on captures that use tiled resources &nbsp; Rendertarget visualizers are [&hellip;]<\/p>\n","protected":false},"author":1719,"featured_media":4769,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[4],"class_list":["post-2465","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-pix","tag-release"],"acf":[],"blog_post_summary":"<p>Today we released PIX 1702.23.002 beta.\u00a0 New in this release: Rendertarget visualizers Improved Warnings user interface Memory captures now show allocated types On some hardware, the Pipeline view can now inspect individual sample values from MSAA rendertargets and depth buffers Shader debugging bugfixes Improved performance on captures that use tiled resources &nbsp; Rendertarget visualizers are [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/posts\/2465","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/users\/1719"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/comments?post=2465"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/posts\/2465\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/media\/4769"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/media?parent=2465"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/categories?post=2465"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/pix\/wp-json\/wp\/v2\/tags?post=2465"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}