Microsoft Mesh Performance Tools
Skills:
Tool Use & Function Calling80%
Key Takeaways
The video demonstrates how to use Microsoft Mesh's built-in tools, Content Performance Analyzer and Visual Profiler, to optimize the performance of 3D content for Microsoft Mesh, including reducing download time, improving user comfort, and extending battery life. The tools help identify and fix performance issues, such as texture size and mesh complexity, and provide real-time statistics on performance metrics like frame rate, batches, and draw calls.
Full Transcript
hello everybody I'm Cameron Mah on the Microsoft mesh team and today I want to talk about how you might optimize your 3D content for Microsoft mesh optimizing 3D content is difficult and knowing exactly what to optimize is even harder luckily we have a few tools within Microsoft mesh to help you out so normally when creating your own custom environments there's three steps first step is authoring your content in unity second is uploading to Microsoft mesh and third is actually running your content within mesh browser in the first step we recommend you use the content performance analyzer or CPA for short this Unity editor tool will automatically audit your content and tell you what might be slow in the third step we have the visual profiler which is a nice tool that overlays right over top of your content and shows you if you're hitting your target frame rate and other interesting stats about your content so without further Ado let's jump into a live demo and I can talk more about these tools in action all right now that we're in unity you can see we have this beautiful environment made by our art team and the art team's already gone through the trouble of creating everything and we're ready to upload to Microsoft mesh so to do that I'm going to open up the mesh uploader I've already have the environment selected I want to upload and I'll simply hit the build and publish button when I do this performance will automatically be audited to make sure everything is running as optimal as possible but you can see we got a failed message so something isn't running as well as it could be let's figure out what this might be to do that I'm going to close the results window go to mesh toolkit click on the content performance analyzer and dock this window over here next to the inspector you can dock it wherever you want but that's my favorite spot you can see here I have a list of all the analyzers available I'm going to hit run all in the top right to run all these analyzers and see what might be failing so you can see most the analyzers passed I got one warning but then I have one red failure let's drill down into this to see what might be going on if I expand the texture size analyzer and go to the report then expand the issues I have one issue that it's reporting and it says that light map compression should be set to low quality it even gives me a mitigation step to fix this which I can do by hand or I can simply click the click to fix oneon-one issues button let's try doing that so if I click this button it'll automatically fix the issue it reported and rerun the test now we're passing so we should be good to upload our content but while I'm in here let's take a peek at this texture sizes analyzer and see what else it can show you so it will report issues it'll also tell you how much texture memory you're using and provide you a list of all the textures you're seen as utilizing and sort them from biggest to smallest so for example I can see this bfx G Galaxy texture is 5.3 Megs and 4x 2K in size you may notice the first time I ran the CPA tool that not all of these analyzers actually ran we have three analyzers called mesh complexity scene complexity and web slate that say they require play mode we want to make sure we run these as well so to get them running let's hit play in unity once our scene's playing we can hit the run all button immediately but before we do that one great thing about play mode is we can analyze performance from mult multiple Vantage points and to do that we need cameras in our scene to represent those Vantage points now now we could place these cameras manually which is often recommended if you know where users are going to be standing and what they're going to be looking at but if you're unsure where to place these cameras the CPA tool will do this automatically for you so to do that all you need to do is hit the auto add button when I do that it automatically places a few cameras in the scene based on the walkable space your environment has so now that I've got a handful of cameras in my scene I'm going to hit the run all button again and see how everything performs you'll notice the camera quickly moves from Vantage Point to Vantage Point as it analyzes everything from different angles so luckily I'm mostly green across the board except a few warnings since I have two warnings I want to drill down into those and see what the issues might be in this particular example you can see this content may be generating too many batches from here I could look at which cameras are generating the most batches in this list that sorts them from largest to smallest in this example this camera angle is generating a little too many batches which is roughly standing in this corner looking in this direction this might be something I want my art team to to optimize or I might want to take a few things out to help reduce batches up until now we've been using the content performance analyzer to rationalize performance but we have a second tool you can use while playing called the visual profiler to open up that tool all you need to do is press V on your keyboard once the visual profiler is up you can walk around your scene to see how the statistics of your performance change in real time so in the top left hand corner I can see my my frame rate which is around 60 frames a second right now which is good and as you look around the scene you can also see had a number of batches draw calls and triangles change based on what you're looking at right now most of these numbers are green which is a good thing but anytime they turn red that should alert your attention that something might be below our recommended performance benchmarks so for example if I step back here you can see our batches have climbed above 200 in the range of 215 this tells you this might be a vantage point that you want to check out and further optimize at the bottom of the visual profiler we have a few profiler markers that show you how much time different subsystems are taking the update for example behaviors are all the scripts running in your scene render is how long it takes to actually render your scene and web slate is how long it takes to render this web slate in this scene there's other markers as well which currently don't show any time values and that's because you don't have any content in your scene that's actually executing this logic this can be a great tool to kind of figure out uh what might be slow when actually running your environment but because we're still in the unity editor it doesn't give you the perfect representation of how long things might take for that we need to jump over to mesh browser and open up the visual profiler there so now I've jumped over to Microsoft mesh and I'm actually playing the environment I just uploaded from here I can open up the visual profiler by hitting the menu button but going to settings then troubleshooting and click clicking performance profiler when I do this it opens up a similar looking visual profile right within my scene you notice it doesn't show all the stats it did in unity because not all profiling markers are available but I can still get Val valuable information such as my frame rate number of batches draw calls triangle counts I recommend keeping up the visual profiler when iterating on your content so you can see just how well everything's performing and this profiler works not only on PC but also if in meta Quest as well thank you so much for watching and I can't wait to see all the amazing content our mesh developers create and please remember to use the content performance analyzer and visual profiler during all stages of development to make your content truly shine and if you have time please click the link in the details to learn more about how performance tooling works and like And subscribe thank you again
Original Description
Optimize the performance of the content you build for Microsoft Mesh, currently in public preview, using built-in tools that can help reduce download time, improve user comfort and extend battery life. Leverage the content Performance Analyzer and Visual Profiler features to improve the visual fidelity of environments while staying within performance budgets. For more on the Mesh public preview, take a look at the documentation.
Learn: https://learn.microsoft.com/mesh/develop/debug-and-optimize-performance/cpa
✅SUBSCRIBE TO OUR CHANNEL: www.youtube.com/Microsoft365Developer?sub_confirmation=1
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
Playlist
Uploads from Microsoft 365 Developer · Microsoft 365 Developer · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Adaptive Cards community call-February 2019
Microsoft 365 Developer
PowerApps community call-February 2019
Microsoft 365 Developer
Microsoft Graph community call-March 2019
Microsoft 365 Developer
Office Add ins community call-March 2019
Microsoft 365 Developer
PowerApps community call-March 2019
Microsoft 365 Developer
Microsoft Teams community call-March 2019
Microsoft 365 Developer
Using React and Office UI Fabric React Components
Microsoft 365 Developer
Build Microsoft Teams customization using SharePoint Framework
Microsoft 365 Developer
Microsoft Graph community call-April 2019
Microsoft 365 Developer
Using Change Notifications and Track Changes with Microsoft Graph
Microsoft 365 Developer
Office Add Ins community call-April 2019
Microsoft 365 Developer
Adaptive Cards community call-April 2019
Microsoft 365 Developer
Microsoft Teams community call-April 2019
Microsoft 365 Developer
Getting Started with Microsoft Graph and Application Registration
Microsoft 365 Developer
Getting Started with Microsoft Graph and the Directory API
Microsoft 365 Developer
Getting Started with Microsoft Graph and Microsoft Teams
Microsoft 365 Developer
Getting Started with Microsoft Graph Explorer
Microsoft 365 Developer
Getting Started with Microsoft Graph
Microsoft 365 Developer
Getting Started with Microsoft Graph and Mail API
Microsoft 365 Developer
Getting Started with Microsoft Graph and Office 365 Groups
Microsoft 365 Developer
Getting Started with Microsoft Graph and the Calendar API
Microsoft 365 Developer
Getting Started with the Microsoft Graph Toolkit
Microsoft 365 Developer
Getting Started with Microsoft Graph and JavaScript SDKs
Microsoft 365 Developer
Getting Started with Microsoft Graph and .NET SDKs
Microsoft 365 Developer
Discover how businesses can be more productive with Microsoft 365 integrations
Microsoft 365 Developer
Adaptive Cards community call-May 2019
Microsoft 365 Developer
Office Add-ins community call-May 2019
Microsoft 365 Developer
Why We Built on Microsoft Teams
Microsoft 365 Developer
Microsoft Teams community call-May 2019
Microsoft 365 Developer
Microsoft Graph community call-June 2019
Microsoft 365 Developer
Build Angular SPA's with Microsoft Graph - June 2019
Microsoft 365 Developer
Office Add -ins community call-June 2019
Microsoft 365 Developer
Build Android native apps with the Microsoft Graph Android SDK - June 2019
Microsoft 365 Developer
Build MVC apps with Microsoft Graph - June 2019
Microsoft 365 Developer
Authenticate and connect with Microsoft Graph - June 2019
Microsoft 365 Developer
Microsoft Graph data connect - June 2019
Microsoft 365 Developer
Change notifications with Microsoft Graph - June 2019
Microsoft 365 Developer
Build iOS native apps with the Microsoft Graph REST API - June 2019
Microsoft 365 Developer
Build Node.js Express apps with Microsoft Graph - June 2019
Microsoft 365 Developer
Smart UI with Microsoft Graph - June 2019
Microsoft 365 Developer
Leveraging the Microsoft Graph API from the SharePoint Framework - June 2019
Microsoft 365 Developer
Build UWP apps with Microsoft Graph - June 2019
Microsoft 365 Developer
Build React SPA's with Microsoft Graph - June 2019
Microsoft 365 Developer
Getting Started with Microsoft Graph and Batching
Microsoft 365 Developer
Getting Started with Microsoft Graph and Change Notifications
Microsoft 365 Developer
Getting Started with Microsoft Graph and Consent Permissions
Microsoft 365 Developer
Getting Started with Microsoft Graph and Education
Microsoft 365 Developer
Getting Started with Microsoft Graph and Financials
Microsoft 365 Developer
Getting Started with Microsoft Graph and Excel
Microsoft 365 Developer
Getting Started with Microsoft Graph and Data Connect
Microsoft 365 Developer
Getting Started with Microsoft Graph and Intune
Microsoft 365 Developer
Getting Started with Microsoft Graph and Notifications
Microsoft 365 Developer
Getting Started with Microsoft Graph and OneNote
Microsoft 365 Developer
Getting Started with Microsoft Graph and OneDrive
Microsoft 365 Developer
Getting Started with Microsoft Graph and Open Extensions
Microsoft 365 Developer
Getting Started with Microsoft Graph and Paging
Microsoft 365 Developer
Getting Started with Microsoft Graph and Schema Extensions
Microsoft 365 Developer
Getting Started with Microsoft Graph and Security API
Microsoft 365 Developer
Getting Started with Microsoft Graph and Query Parameters
Microsoft 365 Developer
Getting Started with Microsoft Graph and Reporting API
Microsoft 365 Developer
More on: Tool Use & Function Calling
View skill →Related Reads
📰
📰
📰
📰
AI-Powered Change Logs: Automating Client Feedback for Small ArchViz Studios
Dev.to AI
Welcome to Day 6 of 100 Days of GenAI for DevOps!
Medium · DevOps
My AI Workflow for Turning Ideas Into Income (Templates Included)
Medium · AI
I Tested an AI Slop Detector — It Flagged My Own Writing
Dev.to AI
🎓
Tutor Explanation
DeepCamp AI