How to use the MicroProfiler on Roblox — Transcript
Full transcript
- 0:00hi everyone it's Andrew from roblock in
- 0:02this video we'll dive into the micro
- 0:04profiler what it is and why it's so
- 0:05powerful we'll get oriented troubleshoot
- 0:08a performance issue and even do some
- 0:09math everyone loves math the micro
- 0:12profiler is a performance optimization
- 0:13and troubleshooting tool rather than
- 0:16higher level averages like frames per
- 0:17second the micro profiler lets you get
- 0:19down to the well micro level you can
- 0:22examine individual frames and all of the
- 0:24processes that make up those frames as
- 0:27you might imagine this level of detail
- 0:28comes with a bit of complexity
- 0:30I'm using Studio here for convenience
- 0:32but the best place to use the micro
- 0:34profiler is in the Roblox client on the
- 0:36lowest end device that you want to
- 0:38support to open the micro profiler press
- 0:40control F6 on Windows or command F6 on
- 0:43Mac OS you'll see a bunch of bars appear
- 0:45at the top of the screen each bar
- 0:47represents one frame from your
- 0:49experience with new frames flowing in
- 0:51from the right the height of each bar
- 0:52indicates how long it took to render the
- 0:54frame hover over any bar for more
- 0:57information the real power of the micro
- 1:00profiler though is in detailed mode
- 1:01press contrl P or command P to pause
- 1:04which automatically switches you to the
- 1:05timeline from there you can left click
- 1:08and drag to pan in any direction on a
- 1:10modern computer with many CPU cores you
- 1:12might need to pan up and down quite a
- 1:14bit to find threads that are doing
- 1:15anything at all scrolling zooms you in
- 1:18and out with the green indicator on the
- 1:20graph showing your zoom level to jump to
- 1:22a particular frame right click it on the
- 1:24graph each colored label on the timeline
- 1:27represents a process something your
- 1:29experien is is doing as part of
- 1:30rendering that frame wider labels
- 1:32represent processes that took longer to
- 1:35complete when you see a label directly
- 1:37underneath another label that means
- 1:39you're looking at a child process a
- 1:41process that runs as part of the process
- 1:42above it because parent processes can't
- 1:45finish until all their children do you
- 1:47often want to troubleshoot the longest
- 1:49running lowest level child processes if
- 1:52you're asking what are all these
- 1:53processes anyway me too there are
- 1:56hundreds of them and it's hard to keep
- 1:57them all straight so we documented the
- 1:59most important ones at create.
- 2:01roblox.com Link in the description if
- 2:04the level of visual clutter is too much
- 2:06use the groups menu to filter the list
- 2:08of visible labels until you get to
- 2:09something more manageable let's examine
- 2:12a more concrete scenario generally
- 2:14speaking we want Roblox experiences to
- 2:16run at 60 frames per second there are
- 2:191,000 milliseconds in a second so if we
- 2:21divide 1,000 by 60 we can see that we
- 2:23want a new frame every 16.67
- 2:26milliseconds if we get 59 frames after
- 2:2810 milliseconds and then one frame after
- 2:31410 milliseconds that causes a huge
- 2:33jarring stutter even though the math
- 2:35works out to 60 FPS so consistent frame
- 2:38times are more important than average
- 2:40frame
- 2:42rate this experience doesn't feel quite
- 2:44right even though the frame rate summary
- 2:46usually says 60 FPS if we open the micro
- 2:49profiler we can see these frame time
- 2:51spikes remember we want consistent frame
- 2:53times so even at a glance right after
- 2:55opening the micro profiler we know
- 2:57something's wrong some frames are taking
- 2:59way way way longer than others if we
- 3:01examine one of the smaller frames
- 3:02nothing jumps out but if we look at one
- 3:04of the slow frames whoa there we can see
- 3:07this massive process in one of the
- 3:09worker threads and in particular a label
- 3:11called Shady Rays the micro profiler
- 3:13provides a lot of clues for where to
- 3:15look Shady Rays is a script running
- 3:17under runs service. heartbeat and the
- 3:19problematic code seems to have to do
- 3:21with rayc casting search for shady rays
- 3:23in the Explorer open it and examine the
- 3:25code we can see the same run service.
- 3:28heartbeat event that we saw on the mic
- 3:30profiler so we know we're on the right
- 3:31track this script is short but if it
- 3:33were long or complex we could wrap
- 3:35portions of it in debug profile calls in
- 3:37this case though the culprit seems
- 3:39pretty clear so let's comment out the
- 3:40function and see what
- 3:43happens now our frames are all arriving
- 3:45in about 16.67 milliseconds and camera
- 3:48movement feels consistent and smooth
- 3:51this time all we had to do was comment
- 3:52out some code but in other cases you
- 3:54might need to reduce the number of light
- 3:55sources modify your environment to
- 3:57prevent High transparency overdraw or
- 3:59spread a particularly intensive
- 4:01calculation across many frames for more
- 4:03information on using the micro profiler
- 4:05to optimize your experience check out
- 4:07the documentation at create. roblox.com
- 4:09thanks for watching
- 4:17[Music]
About this transcript
This page contains the full transcript of How to use the MicroProfiler on Roblox by Roblox Creators, generated from the public captions YouTube serves with the video. The transcript has 819 words across 122 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.
What you can do with it
Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to choose a caption track available on the video.
Free YouTube transcript tool
YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, caption language selection, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.