Version: Unity 6.5 Alpha (6000.5)
LanguageEnglish
  • C#
Experimental: this API is experimental and might be changed or removed in the future.

GraphicsStateCollection.WarmUpProgressively

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Declaration

public Unity.Jobs.JobHandle WarmUpProgressively(Int32 count, Unity.Jobs.JobHandle dependency);

Parameters

Parameter Description
count The maximum number of variant permutations to warm up.
dependency Job to wait for.
traceCacheMisses If true, stores any graphics states used during runtime that were not prewarmed.

Returns

Unity.Jobs.JobHandle Handle to prewarming job.

Description

Prewarms the given number of shader variant state permutations using associated graphics states.

Except for the case of WebGPU, graphics state collection warmup is only supported when SystemInfo.supportsParallelPSOCreation is true. Otherwise, behavior falls back to the legacy ShaderVariantCollection.WarmUp and count restricts the maximum number of shader variants instead of shader variant permutations. Note that when cache miss tracing begins, only the graphics state collection entries that have completed warm up when this job finishes will be considered in identifying cache misses. Additionally, :ref::isTracingCacheMisses must be false before initiating warm up in order to set traceCacheMisses to true. Use EndTrace on the cacheMissCollection to end any ongoing cache miss tracing.

using UnityEngine;
using UnityEngine.Experimental.Rendering;
using Unity.Jobs;

public class GraphicsStateCollectionWarmup : MonoBehaviour { public GraphicsStateCollection graphicsStateCollection; public int statesToWarmup;

void Start() { JobHandle handle = graphicsStateCollection.WarmUpProgressively(statesToWarmup); } }
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961