Unity3D :创建作业
推荐:将NSDT场景编辑器加入你的3D工具链
3D工具集:NSDT简石数字孪生
创建作业
要在 Unity 中创建作业,必须实现 IJob 接口。借助 IJob
,可以调度与正在运行的其他作业并行运行的单个作业。
注意:“作业”是 Unity 中对于任何实现 IJob
接口的结构的统称。
要创建作业,您需要:
- 创建实现
IJob
的结构。 - 添加该作业使用的成员变量(为 blittable 类型和 NativeContainer 类型之一)。
- 在结构中创建一个名为 Execute 的方法,并在其中实现该作业。
执行作业时,Execute
方法在单个核心上运行一次。
注: 在设计作业时,请记住它们对数据副本进行操作,但 除外。因此,从控制线程中的作业访问数据的唯一方法是写入 .
简单作业定义示例
// 将两个浮点值相加的作业
public struct MyJob : IJob
{
public float a;
public float b;
public NativeArray<float> result;
public void Execute()
{
result[0] = a + b;
}
}
由3D建模学习工作室整理翻译,转载请注明出处!