dependency | 等待完成的任务。 |
JobHandle 预热任务的句柄。
利用关联的图形状态预热此集合中的所有着色器变体。
这将导致创建已存储着色器变体的 GPU 表达。
此方法返回的 JobHandle 可用于控制 GPU 表达的创建是同步发生还是异步发生。
以下示例将异步执行预热。
using UnityEngine; using UnityEngine.Experimental.Rendering; using Unity.Jobs;
public class WarmUpExample : MonoBehaviour { public GraphicsStateCollection graphicsStateCollection;
void Start() { JobHandle handle = graphicsStateCollection.WarmUp(); } }
以下是关于如何等待任务句柄完成以同步执行操作的示例。
using UnityEngine; using UnityEngine.Experimental.Rendering; using Unity.Jobs;
public class WarmUpSynchronousExample : MonoBehaviour { public GraphicsStateCollection graphicsStateCollection;
void Start() { JobHandle handle = graphicsStateCollection.WarmUp(); handle.Complete(); } }
还可使用输入依赖项和返回的 JobHandle 将预热链接到其他任务。
using UnityEngine; using UnityEngine.Experimental.Rendering; using Unity.Jobs;
public class WarmUpSynchronousExample : MonoBehaviour { struct PostWarmUpJob : IJob { public void Execute() { Debug.Log("WarmUp is complete"); } }
public GraphicsStateCollection graphicsStateCollection; public JobHandle inputJobHandle;
void Start() { JobHandle handle = graphicsStateCollection.WarmUp(inputJobHandle);
var job = new PostWarmUpJob(); job.Schedule(handle); } }