Version: Unity 6 (6000.0)
Language : English
Understand performance in URP
Reducing rendering work on the CPU or GPU in URP

Analyze your project in URP

You can use the Unity Profiler to get data on the performance of your project in areas such as the CPU and memory.

Profiler markers

The following table lists markers that appear in the Unity ProfilerA window that helps you to optimize your game. It shows how much time is spent in the various areas of your game. For example, it can report the percentage of time spent rendering, animating, or in your game logic. More info
See in Glossary
for a URP frame and have a significant effect on performance.

The table doesn’t include a marker if it’s deep in the Profiler hierarchy, or the label already describes what URP does.

Marker Sub-marker Description
Inl_UniversalRenderPipeline. RenderSingleCameraInternal URP builds a list of rendering commands in the ScriptableRenderContext, for a single cameraA component which creates an image of a particular viewpoint in your scene. The output is either drawn to the screen or captured as a texture. More info
See in Glossary
. URP only records rendering commands in this marker, but doesn’t yet execute them. The marker includes the camera name, for example Main Camera.
Inl_ScriptableRenderer.Setup URP prepares for rendering, for example preparing render texturesA special type of Texture that is created and updated at runtime. To use them, first create a new Render Texture and designate one of your Cameras to render into it. Then you can use the Render Texture in a Material just like a regular Texture. More info
See in Glossary
for the camera and shadow maps.
CullScriptable URP generates a list of GameObjectsThe fundamental object in Unity scenes, which can represent characters, props, scenery, cameras, waypoints, and more. A GameObject’s functionality is defined by the Components attached to it. More info
See in Glossary
and lights to render, and culls (excludes) any that are outside the camera’s view. The time this takes depends on the number of GameObjects and lights in your sceneA Scene contains the environments and menus of your game. Think of each unique Scene file as a unique level. In each Scene, you place your environments, obstacles, and decorations, essentially designing and building your game in pieces. More info
See in Glossary
.
Inl_ScriptableRenderContext.Submit URP submits the list of commands in the ScriptableRenderContext to the graphics API. This marker might appear more than once if URP submits commands more than once per frame, or you call ScriptableRenderContext.Submit in your own code.
MainLightShadow URP renders a shadow map for the main Directional Light.
AdditionalLightsShadow URP renders shadow maps for other lights.
UberPostProcess URP renders post-processing effects you enable. This marker contains separate markers for some post-processingA process that improves product visuals by applying filters and effects before the image appears on screen. You can use post-processing effects to simulate physical camera and film properties, for example Bloom and Depth of Field. More info post processing, postprocessing, postprocess
See in Glossary
effects.
RenderLoop.DrawSRPBatcher URP uses the Scriptable Render Pipeline Batcher to render one or more batches of objects.
CopyColor URP copies the color buffer from one render texture to another. You can disable Opaque Texture in the URP Asset, so that URP only copies the color buffer if it needs to.
CopyDepth URP copies the depth bufferA memory store that holds the z-value depth of each pixel in an image, where the z-value is the depth for each rendered pixel from the projection plane. More info
See in Glossary
from one render texture to another. You can disable Depth Texture in the URP Asset unless you need the depth texture (for example, if you use a shader that uses scene depth).
FinalBlit URP copies a render texture to the current camera render target.

Use a GPU profiler to analyze your project

You can use a platform GPU profiler such as Xcode to get data on the performance of the GPU during rendering. You can also use a profiler such as RenderDoc, but it might provide less accurate performance data.

Data from a GPU profiler includes URP markers for rendering events, such as different render passes.

Use other tools to analyze your project

You can also use the following tools to analyze the performance of your project:

Understand performance in URP
Reducing rendering work on the CPU or GPU in URP