{"id":30338,"date":"2022-03-31T16:18:24","date_gmt":"2022-03-31T16:18:24","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/cppblog\/?p=30338"},"modified":"2023-02-02T19:09:54","modified_gmt":"2023-02-02T19:09:54","slug":"enhancing-game-developer-productivity","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/cppblog\/enhancing-game-developer-productivity\/","title":{"rendered":"Enhancing Game Developer Productivity with Visual Studio 2022"},"content":{"rendered":"<h2>Introduction<\/h2>\n<p>Since the launch of Visual Studio 2022, we have been continuously making performance improvements to enhance game developer productivity. In my <a href=\"https:\/\/www.youtube.com\/watch?v=y8kt5842PT4\">Microsoft Game Dev talk for GDC<\/a>, I shared why Visual Studio is the ultimate IDE for game developers. I also partnered with the folks at Double Fine Productions to <a href=\"https:\/\/developer.microsoft.com\/en-us\/games\/events\/gdc\/psychonauts2\">demonstrate their most loved features when developing the Award-winning Psychonauts 2.<\/a> Next, I shared features that Double Fine is most excited for in VS2022. Lastly, <a href=\"https:\/\/developer.microsoft.com\/en-us\/games\/blog\/microsoft-perforce-reimagining-game-production\/\">Microsoft Game Dev announced<\/a> that a set of GitHub Actions for Perforce Helix Core on Azure, authored directly by Perforce, is now available.<\/p>\n<p>In this blog, I will show you some amazing speed improvements when searching and getting to code by discussing our measurements from large codebases such as Unreal Engine and Chromium. See how much faster you can get to code with speedier C++ IntelliSense ready and opening a file. Search faster with C++ Find All References and indexed Find in Files.<\/p>\n<p>While game developers and developers with large codebases will benefit from these improvements the most, all C++ developers will gain increased productivity with these changes.<\/p>\n<h2>Testing Methodology<\/h2>\n<p>We tested using an Unreal Engine 4 sample project on a desktop with an Intel Core i7-9700 @ 3Ghz, 64GB RAM, and an SSD. The tests took place on Visual Studio 2019 16.11 and Visual Studio 2022 17.1. The results were averaged over 3 runs. For Find in Files, we benchmarked using the Chromium repo, with more than 300,000 files.<\/p>\n<h2>Results<\/h2>\n<h2>Getting to Code<\/h2>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2022\/03\/gettocodevs2022.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-30340\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2022\/03\/gettocodevs2022.png\" alt=\"Image gettocodevs2022\" width=\"1652\" height=\"992\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2022\/03\/gettocodevs2022.png 1652w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2022\/03\/gettocodevs2022-300x180.png 300w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2022\/03\/gettocodevs2022-1024x615.png 1024w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2022\/03\/gettocodevs2022-768x461.png 768w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2022\/03\/gettocodevs2022-1536x922.png 1536w\" sizes=\"(max-width: 1652px) 100vw, 1652px\" \/><\/a><\/p>\n<p>When opening a file on Visual Studio 2019, it took 2.02 seconds for code to show up. In Visual Studio 2022, you can see the same action completing in only 0.82 seconds, resulting in a 2.44X speed up. In Visual Studio 2019, the time it took for semantic colorization to show up after opening a file was 12.9 seconds. You will experience that the same action is 2.22X faster in VS2022, taking 5.8 seconds.<\/p>\n<p>For Unreal Engine projects, you will experience additional speed up for IntelliSense readiness. <a href=\"https:\/\/devblogs.microsoft.com\/cppblog\/18x-faster-intellisense-for-unreal-engine-projects-in-visual-studio-2022\/\">Learn more in this blog post.<\/a><\/p>\n<h2>Code Search<\/h2>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2022\/03\/searchvs2022.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-30341\" src=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2022\/03\/searchvs2022.png\" alt=\"Image searchvs2022\" width=\"1652\" height=\"992\" srcset=\"https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2022\/03\/searchvs2022.png 1652w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2022\/03\/searchvs2022-300x180.png 300w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2022\/03\/searchvs2022-1024x615.png 1024w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2022\/03\/searchvs2022-768x461.png 768w, https:\/\/devblogs.microsoft.com\/cppblog\/wp-content\/uploads\/sites\/9\/2022\/03\/searchvs2022-1536x922.png 1536w\" sizes=\"(max-width: 1652px) 100vw, 1652px\" \/><\/a><\/p>\n<p>In Visual Studio 2022, you will see a speed up of 1.74X when using C++ Find All References (Shift + F12). The action was completed in 17.36 seconds; compared to Visual Studio 2019, the action took a little over half a minute.\nFor Find in Files in Visual Studio 2019, searching through 300,000 files in the Chromium repo took 30 seconds. In Visual Studio 2022, you will notice that the same action will take 1.5 seconds, a 20X improvement!<\/p>\n<h2>Analysis<\/h2>\n<p>You will notice several optimizations to the IntelliSense engine that created more efficiency in getting to code scenarios. Find All References was also enhanced by eliminating inefficiencies during search.<\/p>\n<p>For Find in Files, you can now take advantage of indexed search. To enable indexed searching, go to <em>Tools &gt; Options &gt; Environment &gt; Preview Features<\/em> and ensure \u201cEnable indexing for faster find experience\u201d is checked. For more details, <a href=\"https:\/\/devblogs.microsoft.com\/visualstudio\/code-search-in-visual-studio-is-about-to-get-much-faster\/\">please see this blog post.<\/a><\/p>\n<h2>Feedback Wanted!<\/h2>\n<p>Your feedback through <a href=\"https:\/\/developercommunity.visualstudio.com\/\">Developer Community<\/a>, surveys, and social media channels has made these improvements possible. We thank you for your valuable comments.\nThese enhancements are a continuation of our focus on improving productivity for game developers. Throughout the Visual Studio 2022 development cycle, we will continue to make improvements like ones detailed in this blogpost. If you are a game developer, <a href=\"http:\/\/aka.ms\/VSGameDevSurvey\">let us know your thoughts in our 2022 Visual Studio Game Developer Survey<\/a>.<\/p>\n<p>In addition, please continue to help shape the development of Visual Studio by talking to us in the comments below, on Twitter (<a href=\"https:\/\/twitter.com\/visualc\">@VisualC<\/a>), or via email at <a href=\"mailto:visualcpp@microsoft.com\">visualcpp@microsoft.com<\/a><\/p>\n<h2>Upgrade to Visual Studio 2022<\/h2>\n<p><a href=\"https:\/\/visualstudio.microsoft.com\/downloads\/\">Download the latest version of Visual Studio 2022<\/a> to take advantage of these productivity benefits today!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this blog, we will discuss how much faster you can get to code with speedier C++ IntelliSense ready and opening a file. Learn how search improved with faster with C++ Find All References and indexed Find in Files.<\/p>\n","protected":false},"author":39811,"featured_media":29661,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1,3927],"tags":[3918,3919,3901],"class_list":["post-30338","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cplusplus","category-game-development","tag-game-dev","tag-productivity","tag-unreal-engine"],"acf":[],"blog_post_summary":"<p>In this blog, we will discuss how much faster you can get to code with speedier C++ IntelliSense ready and opening a file. Learn how search improved with faster with C++ Find All References and indexed Find in Files.<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts\/30338","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/users\/39811"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/comments?post=30338"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts\/30338\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/media\/29661"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/media?parent=30338"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/categories?post=30338"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/tags?post=30338"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}